Dobrý den,
může mi někdo vysvětlit proč skripty napsané v práci mi tam fungují, ale když si to donesu domů, tak to háže chyby typu Notice: undefined.....
apod. Mam doma server konfigurovaný ručně, ale i když si nainstaluji Complex web server, přesně ten co je v práci, tak to ty chyby vyhazuje také. Neví někdo v čem tohle může být? Díky
chyby v PHP
- Stene
- Level 6
- Příspěvky: 3124
- Registrován: únor 09
- Bydliště: Jihlava
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: chyby v PHP
Pokud na jednom místě fungují a na druhém ne, bude to asi špatně nastavené - nemyslíš?
Re: chyby v PHP
Dej nám kód a co ti to vyhazuje, jako příklad, pak řeknem víc.. Může to bejt taky konfigurací. Jestli ti hází e_notice tak neprogramuješ "čistě"
- např. klíče pole se dávaj do uvozovek, nebo proměnný se maj před použitim definovat..

Re: chyby v PHP
například na tomhle řádku:
echo "<tr><td bgcolor=\"white\">Datum</td><td bgcolor=\"white\"><input type=\"text\" name=\"den\" size=\"2\" value=\"".SUBSTR($row->datum,8,2)."\">. <input type=\"text\" name=\"mesic\" size=\"2\" value=\"".SUBSTR($row->datum,5,2)."\">. <input type=\"text\" name=\"rok\" size=\"4\" value=\"".SUBSTR($row->datum,0,4)."\"></td></tr>";
vyhodí u každého toho row chybu Notice: Undefined index a Notice: Trying to get property of non-object in row.. chyb je samozřejmě víc, ale podobného typu.
Je ale zajímavé, že i když si na notebooku nainstaluji stejnej complex web server jako je v práci, tak to vyhazuje chyby taky, stejně jako na mnou konfigurovaným serveru.
echo "<tr><td bgcolor=\"white\">Datum</td><td bgcolor=\"white\"><input type=\"text\" name=\"den\" size=\"2\" value=\"".SUBSTR($row->datum,8,2)."\">. <input type=\"text\" name=\"mesic\" size=\"2\" value=\"".SUBSTR($row->datum,5,2)."\">. <input type=\"text\" name=\"rok\" size=\"4\" value=\"".SUBSTR($row->datum,0,4)."\"></td></tr>";
vyhodí u každého toho row chybu Notice: Undefined index a Notice: Trying to get property of non-object in row.. chyb je samozřejmě víc, ale podobného typu.
Je ale zajímavé, že i když si na notebooku nainstaluji stejnej complex web server jako je v práci, tak to vyhazuje chyby taky, stejně jako na mnou konfigurovaným serveru.
- Stene
- Level 6
- Příspěvky: 3124
- Registrován: únor 09
- Bydliště: Jihlava
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: chyby v PHP
Pokud nepřidáš celý kód, těžko poradíme.
Nechápu jak ti to v práci může fungovat. SUBSTR($row->datum,8,2)
Co máš uložené v proměnné $row nevíme. Co pomocí toho oříznutí chceš docílit taky nevíme. Pokud do $row ukládáš datumy, proč to nezpracuješ rovnou ve funkci date?
Nechápu jak ti to v práci může fungovat. SUBSTR($row->datum,8,2)
Co máš uložené v proměnné $row nevíme. Co pomocí toho oříznutí chceš docílit taky nevíme. Pokud do $row ukládáš datumy, proč to nezpracuješ rovnou ve funkci date?
Naposledy upravil(a) Stene dne 16 bře 2011 10:20, celkem upraveno 1 x.
Re: chyby v PHP
Když ti to vyhazuje chyby, varování.. tak je to dobře, máš je zapnutý a dozvíš se o nich. V uvedenym kódu musí bejt $row objekt a musí obsahovat vlastnost 'datum' abys moch zavolat $row->datum. Parsování datumu podle pozic písmen je prasárna, udělej to třeba takhle:
nebo jak píše Stene, funkcí Date()
Kód: Vybrat vše
list($den, $mesic, $rok, $hodina, $minuta) = preg_split('/\.|\s|:/', 'd.m.Y H:i');
echo "$den $mesic $rok $hodina $minuta";
nebo jak píše Stene, funkcí Date()
Kód: Vybrat vše
//např. den
echo date('d', strtotime($row->datum));
Re: chyby v PHP
To s tím datem máš pravdu, to jsem tady měl nějakou kravinu.. Zkrátka ten PC na kterým to funguje je asi nakonfigurován správně, protože to tak funguje i na ostrém provozu. Co teda může být jinak na PC na kterým to nejede? Nebo na tom ntb, když je tam úplně stejná verze Complex web serveru?
Re: chyby v PHP
Dej kód a napiš co ti to hlásí když jak řikáš to nejede, jinak ti nemůžem pomoct. Nastavení PHP najdeš v souboru PHP.INI, to porovnávej.
Re: chyby v PHP
Ano v php.ini bylo jediný rozdlíný register_blobals. Po zapnutí už to trošku jede líp. Přesto to pořád vypisuje chybové hlášení, například po odeslání formuláře
nebo před odesláním formuláře nad ním je
rozdílné nastavení v serverech není, bylo jen to register_blobals, tak nechápu proč to někde funguje bez problému a vypisování těchto chyb a jinde ne. Psát sem kód asi stejně nemá smysl.
Kód: Vybrat vše
Notice: Undefined variable: popis1 in C:\dev\www\administrace\aktuality.php on line 15
Notice: Undefined variable: popis2 in C:\dev\www\administrace\aktuality.php on line 21
Notice: Undefined variable: popis3 in C:\dev\www\administrace\aktuality.php on line 27
Notice: Undefined variable: popis4 in C:\dev\www\administrace\aktuality.php on line 33
Notice: Undefined variable: popis4 in C:\dev\www\administrace\aktuality.php on line 39
Notice: Undefined variable: fotky in C:\dev\www\administrace\aktuality.php on line 121
Notice: Undefined variable: soubory in C:\dev\www\administrace\aktuality.php on line 121
Aktualitu se nepodařilo vložit
nebo před odesláním formuláře nad ním je
Kód: Vybrat vše
Notice: Undefined variable: idF in C:\dev\www\administrace\aktuality.php on line 136
rozdílné nastavení v serverech není, bylo jen to register_blobals, tak nechápu proč to někde funguje bez problému a vypisování těchto chyb a jinde ne. Psát sem kód asi stejně nemá smysl.
Re: chyby v PHP
Divíš se?Nemáš definované proměnné, takže je definuj například $promenna=0; a potom kontroluj if(isset($prom)){//..}, takto tvůj kód vyžaduje proměnné, které nejsou definovány(nemají hodnotu), tak po PHP nemůžeš chtít aby s nimi pracovalo.A při získávání je nezapomeň získávat dle metody $_GET['prom']; nebo $_POST['prom'];.
Re: chyby v PHP
Díky. Nechápu ale, jak to, že to na jednom PC funguje? Přitom nastavení mají stejné?
Re: chyby v PHP
Ono to funguje na obou (pravděpodobně), jenže na tom 1 jsou e_notice vyplý tak ti je to nevyhazuje. To že je to vyhazuje tam kde je zobrazování zaplý je jen ukázka jak prasácky programuješ (sorry) 

Zpět na “Programování a tvorba webu”
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 5 hostů