Portál AbcLinuxu, 15. května 2025 18:40

Dotaz: Nefunguji globalni promenne v PHP

14.7.2006 11:00 Wolf | skóre: 7
Nefunguji globalni promenne v PHP
Přečteno: 864×
Odpovědět | Admin

Zdravim, snazim se integrovat diskuzni forum PunBB do webu. Vkladam index.php primo do zdrojaku meho webu. Problem je v tom, ze punbb pouziva ve funkcich globalni promenne pres global $db;.

Kdyz je forum zvlast vse funguje v poradku, ale kdyz vlozim forum do me stranky tak se do funkci nepredavaji tyto globalni promenne. Tesne pred vstupem do funkce je promenna pristupna ale po vstupu do funkce je null.

Nesetkali jste se s tim nekdo? Diky za kazdou radu

Ukazka funkce:

function check_cookie(&$pun_user)
{
global $db, $pun_config, $cookie_name, $cookie_seed;
// zde je promenna $db null

... nejake akce...
}

// volani funkce
// zde je promenna $db pristupna
check_cookie($pun_user);

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

svido avatar 14.7.2006 12:21 svido | skóre: 28
Rozbalit Rozbalit vše Re: Nefunguji globalni promenne v PHP
Odpovědět | | Sbalit | Link | Blokovat | Admin
To je divné. POmocí global by to mělo fungovat. Zkoušel jste třeba $GLOBALS['db']??
14.7.2006 13:53 Wolf | skóre: 7
Rozbalit Rozbalit vše Re: Nefunguji globalni promenne v PHP

jj, $GLOBALS['db'] jsem zkousel. v tom to taky neni.

divny to je rozhodne, nikdy sem se s tim nesetkal :-)

svido avatar 14.7.2006 13:56 svido | skóre: 28
Rozbalit Rozbalit vše Re: Nefunguji globalni promenne v PHP
Ani já ne.
14.7.2006 14:03 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Nefunguji globalni promenne v PHP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pravděpodobně máš v php.ini nastaveno register_global na Off, což by tak správně mělo být, protože globální proměnné nikdo nemá rád :-)
14.7.2006 14:05 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Nefunguji globalni promenne v PHP
Sorry, ta proměnná se jmenuje register_globals.
14.7.2006 14:16 Wolf | skóre: 7
Rozbalit Rozbalit vše Re: Nefunguji globalni promenne v PHP
register_global je On
svido avatar 14.7.2006 15:20 svido | skóre: 28
Rozbalit Rozbalit vše Re: Nefunguji globalni promenne v PHP
Tím by to nemělo být. Já mám register_globals na localhostu vypnuté a funguje mi.
14.7.2006 15:31 phax7 | skóre: 34 | blog: PhaX_blog
Rozbalit Rozbalit vše Re: Nefunguji globalni promenne v PHP
Cituji z http://www.jantichy.cz/vyuka/izi228/chyby

Globální proměnné uvnitř funkcí

Potřebujete-li použít uvnitř jakékoliv funkce globální proměnnou, je něco špatně. Pokud ale nemůžete jinak, používejte důsledně $GLOBALS['foo']. Zcela zapomeňte na konstrukci global $foo

Co máte za verzi PHP?
14.7.2006 15:35 Wolf | skóre: 7
Rozbalit Rozbalit vše Re: Nefunguji globalni promenne v PHP

jj, je to prasarna, ale ten kod jsem nepsal ja ale chtel jsem pouzit uz hotove forum phpBB

jak vyresit ty globalni promenne me uz poradili jinde - stacilo dat global $db; pred definici te promenne. sice to nechapu ale funguje to :-)

vyskytly se dalsi problemy takze ho du psat sam :-)

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.