Portál AbcLinuxu, 13. května 2025 22:52

Dotaz: Přiřazování hodnot do proměnných pomocí znaku ? v URL

7.11.2003 16:51 Karel Urbánek
Přiřazování hodnot do proměnných pomocí znaku ? v URL
Přečteno: 99×
Odpovědět | Admin
Apache 1.3.28, PHP 4.3.3, Win XP. Ve Win98 a nižších verzích Apache nebyl problém, ale nyní mi nefunguje přiřazení hodnoty do proměnné uvedené za znakem ? v URL. Příklad. www.blabla.cz/neco.php?x=10 nepředá dalšímu skriptu hodnotu 10 v proměnné x, ale proměnná x je prázdná. Co je kde třeba povolit? Nejsem schopen to nalézt. Díky.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

7.11.2003 16:58 mEan
Rozbalit Rozbalit vše Přiřazování hodnot do proměnných pomocí znaku ? v URL
Odpovědět | | Sbalit | Link | Blokovat | Admin
No reseni je jednoduche. Nejspis nemas zapnute register_globals v php.ini. Takze v souboru php.ini ve tvem windowze adresari zmen radku register_globals = Off na register_globals = On Jinak kdyz to je na Off, tak k tem promennym muzes pristupovat take, ale pomoci $_GET["promenna"].
7.11.2003 20:54 Karel Urbánek
Rozbalit Rozbalit vše Přiřazování hodnot do proměnných pomocí znaku ? v URL
Děkuji nastotisíckrát. Věděl jsem, že je to někde něco povolit, ale nemohl jsem si vzpomentou co. A navíc, jak jsem nyní zkoušel betaverzi apache 2 a různé druhy PHP, měl jsem v hlavě úplnej guláš. Až tě potkám, máš u mne pivo :-)
7.11.2003 22:20 mEan
Rozbalit Rozbalit vše Přiřazování hodnot do proměnných pomocí znaku ? v URL
Ja teda osobne pouzivam take $_GET["promenna"]. Je to bezpecnejsi, ale drive jsem z pohodlnosti pouzival register_globals na On... To pivko si necham libit, beru te za slovo :-)
9.11.2003 15:25 Karel Urbánek
Rozbalit Rozbalit vše Přiřazování hodnot do proměnných pomocí znaku ? v URL
Tak jo. Vypnul jsem register_globals. Ted se snazim ziskat promenno pomci $_GET['promenna']. Co delam spatne. Pro jistotu to popisu. Nejjednodussi priklad. soubor soubor_a.html s odkazem ...href="soubor_b.php?a=10.... a nasledne ve scriptu soubor_b.php je .....echo "vysledek je = ".$_GET['a'];.... Nevypise to ani prd. Nerad jsem za troubu, ale asi jsem to opravdu nepochopil. Zkuste jeste do mne tuknout.
9.11.2003 15:37 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Přiřazování hodnot do proměnných pomocí znaku ? v URL
To vypadá správně. Není chyba někde jinde? Zkusils dát do soubor_b.php pouze
<?php echo "a=".$_GET['a']."\n"; ?>
9.11.2003 16:16 Karel Urbanek
Rozbalit Rozbalit vše Přiřazování hodnot do proměnných pomocí znaku ? v URL
Ano. Zkusil. Dokonce abych si byl opravdu jisty, tak jsem tam pak hodil jeste podminku if (!$_GET['a']) echo "neexistuje" no a pise to ze neexistuje
9.11.2003 16:42 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Přiřazování hodnot do proměnných pomocí znaku ? v URL
To je divné ... $_GET, $_POST a spol. AFAIK nejdou v konfiguraci nijak vypnout. Můžeš zkusit ještě
<?php foreach ($_GET as $k => $v) echo $k."=".$v."\n"; ?>
ale asi to nic nevypíše. Nemáš něco v logu?
9.11.2003 16:31 Karel Urbánek
Rozbalit Rozbalit vše Přiřazování hodnot do proměnných pomocí znaku ? v URL
Zakopanej pes bude asi nekde jinde. Pač pokud jsem to zkusil na Linuxove masine, tak to normalne beha, ale pokud to zkusim na apache 1.3.28 na WinXP tak se tomu nechce. Ty promenne jsou case sensitive, nemuze byt treba tim, ze je nekde nastaveno predelavat v nazvu promennych vse na mala pismena. Mozna je to blbost. Nebo nenapada nekoho neco jineho? Dik
7.11.2003 22:01 Aloner | skóre: 24 | blog: Aloner | Praha
Rozbalit Rozbalit vše Přiřazování hodnot do proměnných pomocí znaku ? v URL
Zapnuti volby "register_globals" na ON nelze z bezpecnostniho hlediska doporucit. Doporucene reseni je, ze se nechaji register_globals na OFF a ziskavani promennych se provadi pres super-globalni promenne $_POST["jméno_pole"] a $_GET["jméno_pole"].

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.