Új hozzászólás Aktív témák
-
Lacces
őstag
Hali,
.htaccess-es átírányításokat hol lehetne tanulni? Főleg a következő eset érdekelne:
URL-ben beírva:
test/ - et (virtuális hoszt beállítva, ez a host név) Behozza automatikusan a webapp index.php fájlját, megjeleníteni pöpecül.
test/profile/view -öt beírva az url-be ilyenkor könyvtárt keres, ami nekem nem jó!
Azt szeretném elérni, hogy a /test/ után lévő dolgokat, REQUEST_URI-ként értelmezzen, és ezt feltudnám akkor használni az alább látható php kódban.Mint ahogy itt a PH is lehet: http://prohardver.hu/fooldal/rovat/processzor/ - ezt a fooldal/rovat/processzor/ részt REQUEST_URI-ként értelmezze és ne pedig fájl elérési útként...
Nem tudom, hogy ezt hogyan hívják... Ha valaki megmondaná, hogy mire keresek Google-ban már az is nagy segítség lenne.
PHP kód (bár ez lényegtelen):
if(!empty($_SERVER['REQUEST_URI']) && $_SERVER['REQUEST_URI'] != '/') {
//overwrite default controller/action
$uri = $_SERVER['REQUEST_URI'];
} -
Dave-11
tag
Sk8erPeter még te javasoltad nekem, hogy a mysql_query() és hasonló dolgok helyett használjam inkább a PHP PDO objektumát. Megfogadtam a tanácsodat, és mostanság már csak azt használgatom, illetve gyakorolom a használatát, és lenne is vele kapcsolatban egy kérdésem:
Tegyük fel, hogy van egy adatbázis, benne egy táblám, és én abból tudom, hogy csak egy sort szeretnék kiválasztani, és hogy annyit is fogok kapni. És mondjuk egy sor egy értékét szeretném egy változóba menteni. Eddig így csináltam:
$query = $db->prepare("SELECT * FROM `users` WHERE `id` = :id");
$query->execute(array(":id" => $_GET["id"]));
$felh_nev;
foreach($query as $sor){
$felh_nev = $sor["username"];
}
Remélem értitek mire gondolok itt, ha tudatosan csak egy sort akarok kiválasztani egy táblából, akkor nekem így furának tűnik, hogy foreach -el ugyanúgy végig kell mennem az eredményem, nincs egy egyszerűbb megoldás, vagy ezt így kell csinálni? -
Soak
veterán
válasz
kkdesign #12743 üzenetére
a linknek adsz egy get paramétert . pl href="/index.php?page=info" , utána pedig a content részen (div-ben) csinálsz valami ilyesmit
switch($_GET['page']){
case 'info':
include 'info.php';
break;
default:
include 'index.php';
break;
}De ez elég gány és a googlebe is megtalálhattad volna 2 perc alatt.
-
kkdesign
senior tag
Üdv, olyan kérdésem lenne, hogy szeretnék egy olyan oldalt, hogy menüpontok megnyomása után a középső content divbe includoljon egy külső php tartalmát és mindig mikor megnyomom a másik menüpontot, az töltsön be. ezt hogy tudom megvalósítani egyszerűen?
-
Mbazsika
tag
válasz
Peter Kiss #12741 üzenetére
-
Peter Kiss
őstag
válasz
Mbazsika #12740 üzenetére
Használd a sasql_fetch_assoc-ot a sasql_fetch_row helyett.
-
Mbazsika
tag
Sziasztok!
Nem értem, hogy a visszaadott JSON eredménybe miért nincsenek benne a mező nevek, ellentétbe a mintákkal:$result = sasql_query($link,
"Select STIME, STAT From .............");
$retrows = array();
while ($row = sasql_fetch_row($result))
{
$retrows[] = $row;
}
sasql_disconnect($link);
header('Content-type: application/json');
echo '{"posts":'.json_encode($retrows);Az eredmény:
{"posts":[["2013\/02\/16 15:50",16],["2013\/02\/16 16:00",16],["2013\/02\/16 16:10",16],["2013\/02\/16 16:20",16],["2013\/02\/16 16:30",16],["2013\/02\/16 16:40",16],["2013\/02\/16 16:50",16],["2013\/02\/16 17:00",16],["2013\/02\/16 17:10",16],["2013\/02\/16 17:20",16]]
Mit rontok el?
Előre is köszi a segítséget! -
vamzi
senior tag
válasz
Tele von Zsinór #12738 üzenetére
Ez már funkcionalitásban túl sok. Semmi komolyat nem szeretnék, pusztán összeszedni az eddig megcsinált projektjeimet és azokat egy helyen tárolni.
De, köszönöm.
-
-
vamzi
senior tag
Sziasztok!
Szeretnék egy baromi egyszerű oldalt magamnak, de most a kódolásra nem akarok időt pazarolni. Az otthoni hobbi projektjeimet szeretném vele egy helyre összeszedni. Forráskódok, szövegek és képek. Ez eddig mezei HTML, ami jelenleg is megy, de a forráskódokat szeretném, ha úgy jelenne meg, mint mondjuk a Notepad++-ban, tehát színezve, sorszámozott sorokban és kimásolhatók legyenek. Erre a Geshi-t találtam, ami tényleg nagyon pöpec, de ebbe sajnos csak megjeleníteni tudom a beírt forrást.
Én viszont azt akarom, hogy ha feltöltöm egy mappába a forrásfájljaimat, akkor az adott oldal annak a tartalmát nyissa be és formázza a kiterjesztésnek megfelelően.
Van erre valami jó plugin?
-
fordfairlane
veterán
válasz
Dave-11 #12733 üzenetére
Ezzel csak az a baj, hogy undefinde-ot ír ki, és nem tudom hogy miért
Azért ír undefined-et, mert a javascriptet a böngésző értelmezője hatja végre, a javascript változók a kliensgép memóriájában jönnek létre, míg a PHP a kiszolgálóoldalon teszi ugyanezt.
Semmiféle automatizmus nincs a HTTP protokollban erre a célra, ezt a változót valahogy el kell küldeni a szervernek, ugyanúgy, ahogy az űrlap mezőit is. Hidden mezőt célszerű használni, ahogy írták előttem.
-
Dave-11
tag
Nem igazán, arról lenne szó, hogy van egy űrlap, abból javascript feldolgozásával kapunk egy értéket, és ezt php-val el kell küldeni egy e-mail címre a mail függvénnyel.
Az űrlapot muszáj javascripttel feldolgozni.
Ötlet?
Próbálkoztam ezzel:
<?php
$var = '<script language="javascript">document.write(valtozo);</script>';
echo $var;
?>
Ezzel csak az a baj, hogy undefinde-ot ír ki, és nem tudom hogy miért -
Dave-11
tag
Egy JavaScript változó értékét hogy tudom átadni egy PHP változónak?
-
alitak
senior tag
A firebird szervet innen lokálisan a gépről egy kliensprogrammal (FlameRobin) elérem. PHP-val a szerverről nem érem el. A PDO elképzelhető, hogy nincs telepítve, a szerver üzemeltetés rész nem nálam van. Rákérdezek. Van arra esély, hogy ha az ibase_connect() segítségével nem tudok csatlakozni, attól a PDO-val menni fog a dolog?
-
cucka
addikt
válasz
alitak #12726 üzenetére
Az első azt mondja, hogy nem tud csatlakozni a szerverhez. Ellenőrizni kell, hogy egyáltalán fut-e azon a szerveren az adatbázis és hogy a tűzfalban engedélyezve van-e a kapcsolat (kifele és befele is, nem elfelejtve, hogy melyik portról van szó).
A második azt mondja, hogy a PDO nem találja a megfelelő adatbázis drivert, szóval lényegében el sem jut oda, hogy megpróbáljon csatlakozni. -
alitak
senior tag
válasz
Sk8erPeter #12725 üzenetére
Igen, ebben abszolút igazad van. Ez a hiba:
Unable to complete network request to host "*****". Failed to establish a connection. A kapcsolat időtúllépés miatt megszakadt in *** on line 438A PDO csatlakozást is próbáltam, ott ez lett a vége:
Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in ***:439 Stack trace: #0Ez szerver beállítás hibája lesz?
-
Sk8erPeter
nagyúr
válasz
alitak #12724 üzenetére
Most ez kábé olyan hibaleírás volt, mint a "nem működik, mi lehet a gond?" Azt sem írtad, milyen hibaüzenetet kapsz a külső adatbázishoz kapcsolódásnál. Ennyi alapján nem lehet segíteni.
Egyébként PDO-val is lehet csatlakozni a Firebird/Interbase-hez:
http://php.net/manual/en/ref.pdo-firebird.php
amivel amúgy is jóval igényesebb lenne. -
alitak
senior tag
CentOS. Viszont időközben a rendszergazdánk alakított valamit, mert a függvény már megy. Az új probléma, hogy nem tudok becsatlakozni külső adatbázishoz. Másik, nagyon hasonló rendszerről ugyanaz a PHP kód működött, valamint kliensprogramból be tudok csatlakozni. Még megpróbálok ssh-n keresztül csatlakozni, lehet más a gond, nem pedig a PHP.
-
Siriusb
veterán
Nekem ez egy kicsit furcsa elgondolás. Én létrehoznék 100 linket a 100 ingatlannak, és pl. colorbox-szal galériaként megjeleníteném a képeket, minden ingatlan egy-egy galéria.
Tehát lenne minden ingatlanhoz egy ul, aminek az elemei hivatkozások <a> a képekre. A rel taggal lehet colorbox-nál csoportosítani a képeket. Vegyük a könyvtár nevét: bp001, ezt teszed be a a rel-be <a href="#" rel="bp001>bp001: ez a szöveg a link</a>, így amikor rákattintasz a hivatkozásra, colorbox-ban megjelenik az első kép, mint kép 1 / 4 és szépen végig lehet lapozni. Másik hivatkozásra kattint, másik galéria jön fel.Szerk: persze minden képhez kell egy linket generálni, de csak egy hivatkozást jelenítesz meg, a többit css-szel elrejted.
-
jeszi
tag
Sziasztok!
Kb. 100 ingatlan képét kellene megjeleníteni. Egy ingatlan kb.4 képet tartalmaz.
Arra gondoltam, hogy minden ingatlan egy mappában lenne, pl.:
(sorszam-település)1-Budapest
1.jpg 2.jpg 3.jpg 4.jpg
2-Budapest
5.jpg 6.jpg 7.jpg 8.jpg
3-Dunakeszi
9.jpg 10.jpg 11.jpg 12.jpgNa ezt kellene jól megírni php-val, hogy a mappák látszódjanak és ha kattintanak egyre, akkor az ott lévő képek látszódjanak.
Kb. a linkek megvannak:
foreach (glob("./*-*") as $filename)
{
echo "<br>";
echo "<a href=\"".$filename."\">".$filename."</a><br/>";
// echo "<img src='".$filename."'/>";
echo "<br>";
}Azért írtam ide, mert aki ezzel foglalkozik, szerintem annak 2 perc ezt megírni, nekem viszont nem triviális a megoldás, nem vagyok fejlesztő, elakadtam. A segítséget köszönöm!
-
alitak
senior tag
Sziasztok,
belefutottam egy olyan gondba, hogy interbase adatbázishoz nem tudok csatlakozni. A phpinfo szerint a firebird/interbase driver engedélyezve van, a kód futáskor meg azt mondja, hogy Fatal error: Call to undefined function ibase_connect()
Találkoztatok már ilyen gonddal? -
Brown ügynök
senior tag
válasz
Brown ügynök #12715 üzenetére
URL kódolva volt, nem karakterkódolási probléma. Egyébként egy hasznos oldal ezzel kapcsolatban: [link]
-
Brown ügynök
senior tag
Van egy email feldolgozó kis program ami imap-pal működik. Az ékezetes csatolmány azonban elég csúnyán jelenik meg. Mégpedig így:
ISO-8859-2''%4D%F3%64%6F%73%ED%74%6F%74%74%20%E9%70%65%6E%67
A kódot nem én írtam és imap-ban sem vagyok járatos de talán valami kódolási/dekódolás megoldaná a problémát. Van ötletetek?
-
Soak
veterán
válasz
trisztan94 #12712 üzenetére
Az nyilván nem egy szerver, hanem egy cluster, de amúgy jah, szerintem ma már van az 1000 is ...
Szerk : De ez nem a komplett site alatt van, hanem csak egy modul alatt.
-
trisztan94
őstag
Igen, ez kicsit gyenge kifejezés volt, de akkor se gondolná az átlagfelhasználó, hogy mi minden van mögötte.
offban off: Ha jól értettem 600 magos szerver van alatta?!
Nem rég vágtam bele egy nagyobb projectbe, nem annyira bonyolult oldal, de még én sem gondoltam volna, hogy ennyit kell vele sz*rakodni, pedig azért nem az első melóm.
-
Soak
veterán
válasz
trisztan94 #12710 üzenetére
Azért a facebook szerintem kivülről sem egyszerű
-
Soak
veterán
válasz
trisztan94 #12708 üzenetére
MySQL is nagyon gyors (ha van alatta vas), de a facebook amúgy is élen jár az uj technológiák keresésében (költség optimalizálás) , ezért pl itt egy cikk : [link] , láthatod, hogy nem csak a relációs adatbázisok játszanak ilyenkor, de azért kiemelném ezt a részt : First deployment of Cassandra system within Facebook was for the Inbox search system. The system currently stores TB’s of indexes across a cluster of 600+ cores and 120+ TB of disk space. és ez egy több mint 4 éves bejegyzés
.
-
trisztan94
őstag
Sziasztok!
Érdekesség szempontjából kérdezném az alábbi dolgot:
A Facebook hogyan tárolja a felhasználók posztjait, kommentjeit, lájkait, összes tevékenységét? Adatbázisba menti, esetleg XML-be? Egy ekkora adatbázis nem lassítaná használhatatlan szintre az oldalt? -
it_service
csendes tag
válasz
DeltaPower #12706 üzenetére
Igen, így lesz, köszi
-
DeltaPower
addikt
válasz
it_service #12705 üzenetére
Az update előtt select és php-ben összehasonlítod.
-
it_service
csendes tag
Helló, 1 kis segítséget szeretnék kérni.
Van 1 mysql táblám, 3 különböző mezővel.
id: 1
nev : XYZ
kor: 11id: 2
nev : XYZW
kor: 14...
Update-elem formról érkező adattal a 2. változatot vissza lehet-e kapni valahogyan azt hogy mondjuk a kor 14-ről 15-re változott?
Ergo azt a mezőnevet szeretném visszakapni amiben az érték megváltozott, jelen pillanatban 'kor'.
Köszönöm
-
Sk8erPeter
nagyúr
Ja, így már érthető, de nem azt mondtad korábban, hogy HA NULL AZ ÉRTÉKE, mert akkor egyből érthető lett volna:
http://php.net/manual/en/function.isset.phpisset — Determine if a variable is set and is not NULL
már eleve ez van a doksiban.
Szerintem is totál degenerált dolog ez ilyen formában, mivel rohadtul félrevezető...Viszont ez működik:
$a = array(0=>null);
var_dump( array_key_exists(0, $a) ); // --> TRUE!visszatérve arra, amit írtál:
var_dump(in_array('s', array_keys(get_defined_vars()))); //-> TRUE
na ne már... ezt minden validálásnál így csinálod? Az összes, adott scope-ban elérhető változót lekéred egy tömbbe, és végigszaladgálsz rajtuk, csak hogy megtudd, egyetlen adott tömb egy adott kulcsa létezik-e? Akkor már nem értelmesebb kissé a fentebb említett array_key_exists()? Kicsit kevésbé tűnik erőforrás-igényesnek, eleve kevesebb adatból kell kibogozni a kérdésünkre a választ. -
cucka
addikt
válasz
Sk8erPeter #12701 üzenetére
Hogy térne vissza true-val? Vagy csak elírtad?
Ja, igen, fordítva"Jól látható, hogy a neve ellenére az isset()-nek valójában semmi köze ahhoz, hogy egy változó (vagy tömb index) definiált-e vagy sem."
Egy példa arra, amikor egy tömb index definiálva van, isset szerint viszont mégsem:$a = array(0=>null);
$r = isset($a[0]);
var_dump($r); //-> FALSE
var_dump($a[0]); //-> NULL
var_dump(count($a)); //-> int(1)Ugyanez globális változóra. A $s az isset szerint nem létezik, valójában pedig igen.
$s = null;
$r = isset($s);
var_dump($r); //-> FALSE
var_dump($s); //-> NULL
var_dump(in_array('s', array_keys(get_defined_vars()))); //-> TRUE -
Sk8erPeter
nagyúr
válasz
#68216320 #12696 üzenetére
"php.ini-ben lehet beállítani valahol alapértelmezettként az error_reporting-et?"
Jaja:
http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-reporting"Illetve emlitetted az if( ! empty( $_POST['valami'] ) )-t. Inkább ez vagy az isset() ?"
itt tudod megnézni bővebben:
http://php.net/manual/en/function.empty.php
mondjuk a lényege már ki lett vesézve. A kettő nem ekvivalens, csak arra céloztam, hogy az empty()-ben eleve "benne van" egy isset()-vizsgálat is, tehát ez nem fog notice-t dobni, ez is nyelvi elem (nem függvény):
"No warning is generated if the variable does not exist. That means empty() is essentially the concise equivalent to !isset($var) || $var == false."
Tehát ha a !isset($_POST['valami']) igaz, akkor az is igaz, hogy empty($_POST['valami']). De az empty() ezentúl még lehet akkor is igaz, ha az adott változó érték nélkül lett deklarálva, vagy annak értéke egyenlő a következők valamelyikével: "", 0, 0.0, "0", NULL, FALSE, array(). Pont ezért lett korábban az a végkövetkeztetés, hogy ha általános validációt szeretnél, akkor arra nem feltétlenül alkalmas az empty(). De ha az előbbi értékek közül egyik sem felel meg, akkor kényelmes eszköz lehet, de ennél is igaz az, hogy ettől még nem biztos, hogy jó: a kódod nem mondja meg az azt olvasó számára egyértelműen, hogy milyen értékeket vársz el, bár ettől függetlenül valamelyest beszédes is. Csak azt megzavarhatja, aki nincs tisztában az előbb írtakkal, hogy ha mondjuk egy felhasználó éppen 0-t ír egy adott űrlapmezőbe, akkor is igazzal fog visszatérni az empty(), és ez nem minden esetben jön jól.=======================
(#12699) biker :
"de a ===-nek is van szerintem hátránya: "0" === 0 FALSE szerintem, mert az első sztring a másik num
nem?"
De igen, ahogy írtad, a "0" === 0 az hamis, mivel a három egyenlőségjellel típusvizsgálatot is végzel, és ez nagyon jól is van így. Szóval ez nem hátrány.
Ha már ennyire belementünk: van például az intval() függvény is:
http://php.net/manual/en/function.intval.php
na ez is teljesen alkalmatlan vizsgálatra, mert az intval("asd") eredménye például 0 lesz, ami nyilvánvalóan nem jó. Tehát PHP-ben elég kacifántos lehet adott esetben egy validáció. -
Sk8erPeter
nagyúr
"Tehát az isset true-val fog visszatérni bármilyen változóra, ami nem létezik"
Hogy micsoda?
Ha van egy ilyened:
$valami;
az isset($valami) FALSE-szal fog visszatérni;
A $valami = 1; után már TRUE-val.
Hogy térne vissza true-val? Vagy csak elírtad?"Jól látható, hogy a neve ellenére az isset()-nek valójában semmi köze ahhoz, hogy egy változó (vagy tömb index) definiált-e vagy sem."
Az előbbi azt igazolja, hogy de igen, van köze hozzá (PHP 5.3.8-ban legalábbis biztosan, Te nem tudom, hányas változatról beszélsz, hol volt ez valaha érvényes (4-esnél simán lehet, ezt nem tudom), én az általad említett dologgal nem találkoztam még).
Ahogy arra is false-t ad vissza, ha a $nincsilyen változód nincs beállítva sehol hogy, és nyomatsz egy olyat, hogy isset($nincsilyen->tokmindegy), ahogy ugyanez igaz a $nincsilyen['tokmindegy'] ellenőrzésére is.
Ez most akkor pont annak ellenkezője, amit írtál, szóval nem értem az állításodat."(Ennek eldöntésére a get_defined_vars() való)."
Hmm?Hogy jön ide a get_defined_vars(), amikor csak egyetlen változó meglétét szeretnéd ellenőrizni? Ez a függvény egy komplett tömböt ad vissza az adott scope-ban elérhető lokális/globális/szerver/környezeti változókról, tehát tartalmazni fogja a $GLOBALS tömb dolgait, a $_SERVER dolgait, és így tovább... ezután ezen a tömbön fogsz kiadni egy isset()-et, és akkor ugyanott vagy, vagy ezt most hogy értetted?
Nem az array_key_exists() vagy property_exists() és társai valamelyikére gondoltál?"A gyarkolatban ebből az következik, hogy az empty() teljesen alkalmatlan bármire, visszatérési értékének semmi köze ahhoz, hogy "üres"-e a változó értéke vagy sem. Javaslom, soha, semmilyen körülmények között ne használd az empty()-t, ez egész egyszerűen egy rosszul kitalált nyelvi elem a php-ban."
Mondjuk akkor még lehet értelme, ha a "", 0, 0.0, "0", NULL, FALSE, array() és értékadás nélkül deklarált $var változók közül egyik sem felel meg neked, és megköveteled, hogy mindegyiktől különbözzön mondjuk adott mezőHa például egy adott mezőt kötelező kitölteni, vagy mondjuk 0-nál (0.0-nál) nagyobb szám megadására van szükség, akkor végül is ellátja a feladatát, de ettől függetlenül azzal egyetértek, hogy általános validációra nyilván alkalmatlan.
Új hozzászólás Aktív témák
Hirdetés
- Házimozi haladó szinten
- DOOM - The Dark Ages
- Lakáshitel, lakásvásárlás
- Garmin Instinct – küldetés teljesítve
- Kompakt vízhűtés
- CPU léghűtés kibeszélő
- Kerékpárosok, bringások ide!
- Projektor topic
- Vélemény: nem úgy tűnik, de Lip-Bu Tan most menti meg az Intelt
- Milyen notebookot vegyek?
- További aktív témák...
- Dell Latitude 5450 Intel Core Ultra 5 135U 4nm 32GB DDR5 érintőképernyős laptop Dell gari 2027.09.hó
- PlayStation 4/5 kontroller analóg cseréje HALL TMR érzékelősre, 1 év garancia!!! Nincs többé drift!!
- PlayStation 5/4 kontroller analóg cseréje HALL TMR érzékelősre, 1 év garancia!!! Nincs többé drift!!
- XBOX ONE/Series kontroller analóg cseréje HALL TMR érzékelősre, 1 év garancia!!! Nincs többé drift!!
- XBOX Series S 512GB, 6 hó garanciával Bp-i üzletből eladó!
- Telefon felvásárlás!! iPhone 15/iPhone 15 Plus/iPhone 15 Pro/iPhone 15 Pro Max
- Csere-Beszámítás! Felsőkategóriás számítógép PC Játékra! I9 13900KF / RTX 4080 / 32GB RAM / 1TB SSD
- Nvidia Quadro M2000/ M4000/ P2000/ P2200/ P4000/ P5000/ RTX 4000/ RTX A2000 / RTX A4000
- Csere-Beszámítás! Akciós Gamer PC! R5 5500 / GTX 1070Ti Rog Strix / 32GB D4 / 500GB SSD
- BESZÁMÍTÁS! MSI Z370 i5 9500 16GB DDR4 512GB SSD RX6600 8GB Cooler Master MB510L Chieftec 500W
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged