Autor | Zpráva | ||
---|---|---|---|
MAUGLI Profil * |
#1 · Zasláno: 15. 4. 2007, 10:45:44
Chci se zeptat, proč se mi vypisuje chybová hláška WARNING o nemožnosti poslání header, když v PHP scriptu následuje za DIE ... měl jsem za to, že DIE ukončuje celý skript a čtení dál nepokračuje...
Děkuju za osvělení <?php include("UC_config.php"); $admin_del=mysql_query("DELETE FROM test_tab WHERE user='{$_GET['akce']}'"); if(!$admin_del) die("Los problemos s vymazanim z databaze"); header("location: UC_admin.php"); ?> |
||
souki Profil |
#2 · Zasláno: 15. 4. 2007, 10:55:13
a určitě projde podmíka if(!$admin_del) ?
|
||
MAUGLI Profil * |
#3 · Zasláno: 15. 4. 2007, 10:56:30
No projde... chodí to... nebo je tam nějaká bota? A co to DIE?
|
||
souki Profil |
#4 · Zasláno: 15. 4. 2007, 10:58:00
Pokud se nepletu, tak se DIE provede, jen když se NEpovede vymazání z databáze
|
||
MAUGLI Profil * |
#5 · Zasláno: 15. 4. 2007, 11:25:53
No to jo, tak to myslím... to je správně :)
Jde mi o to, proč, když se nepovede vymazání z databáze a nastoupí hláška za DIE, proč se potom ještě vypíše WARNING o header... myslel jsem, že po DIE už se nic neprování, tak nevím proč se ještě zkusí zkusí provést header("location: UC_admin.php"); |
||
Peca Profil |
#6 · Zasláno: 15. 4. 2007, 11:39:12
To že se vymaže 0 řádků ještě neznamená, že se nepovede vymazání z databáze. Zjisti si, co vůbec je v proměnné $admin_del.
|
||
DoubleThink Profil * |
#7 · Zasláno: 15. 4. 2007, 11:40:58 · Upravil/a: DoubleThink
die a jeho ekvivalent exit okamžitě terminují script (a v případě neprázdného output bufferu ho ještě předtím vysypou).
To, co popisuješ, nemůže nastat. Ujisti se, že: 1) je podmínka opravdu splněna 2) nemáš někde jinde zahájený výstup (třeba v UC_config.php) Následující script funguje zcela korektně: <?php |
||
MAUGLI Profil * |
#8 · Zasláno: 15. 4. 2007, 11:50:13
No podminka je splnena, protoze se mi vypise ta hlaska "Los problemos.... a pod tím WARNING o header
.... kdyz neni splnena, tak se mi to rovnou přesměruje na UC_ admin.php |
||
MAUGLI Profil * |
#9 · Zasláno: 15. 4. 2007, 11:54:30
.. a UC_config.php
<?php $server="localhost"; $server_user="root"; $server_password=""; @$spojeni=MySql_Connect("$server","$server_user","$server_password"); if(!$spojeni): die("Nelze se pripojit k databazi"); else: @$select_db = MySql_Select_DB("test_db"); // nutno zmìnit název databaze if(!$select_db): die("Nelze vybrat databazi <BR>"); endif; endif; ?> |
||
RiZe Profil |
#10 · Zasláno: 15. 4. 2007, 15:37:42
Ujistit se, zda ti někde skutečně neutekl prázdný řádek (PSPad tuším dělá vždy na konci souboru), zjistíš to tak, že si třeba necháš zobrazit čísla řádků ve svém editoru a koukneš, jestli pod značkou ?> nemáš ještě řádek, a nebo umazat značky ?> v souborech, kde je čistě PHP kód.
|
||
Ssob Profil |
#11 · Zasláno: 15. 4. 2007, 18:28:56 · Upravil/a: Ssob
MAUGLI
A jaky WARNING to vypise? Headers already sent? Zda se mi to nejake divne.. Die by melo opravdu ukoncit script. Muzes skusit:
|
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0