Autor Zpráva
Fisak
Profil
Zdravím mám kod ve kterem ne a ne najít chybu.. už sem zkoušel všechno..
viz.
//smazání banu
$sql_ip_Del = db::query_system("SELECT ipaddress FROM banip");
while($echo_ip_Del=mysql_fetch_assoc($sql_ip_Del)) {

    if(isset($_POST['delete_ipban' . $echo_ip_Del['ipaddress']]))
    {
        
        db::query_system("DELETE FROM 'banip' WHERE 'ipaddress' = '".mysql_real_escape_string($echo_ip_Del['ipaddress'])."");
        
        redirect_page("admin", "ip_blocking");
    
    }

}
<form method="post">
<?php
$sqlip = db::query_system("select * from banip");
while($dataip = mysql_fetch_assoc($sqlip)){

    echo "<tr><td>".$dataip['ipaddress']."</td><td>".$dataip['note']."</td><td>".$dataip['date']."</td><td><input name=\"delete_ipban$dataip[ipaddress]\" type=\"submit\" id=\"form\" value=\"".ucfirst(translate("delete"))."\"/></td></tr>";

}
?>
</form>

nejspíše chyba bude někde v if(isset($_POST['delete_ipban' . $echo_ip_Del['ipaddress']])) jenže to stále nemůžu najít... prosím o pomoc děkuji předem ...
Someone
Profil
V čem je chyba? Vypisuje to nějaký error?
edit: DELETE FROM 'banip' WHERE
Fisak
Profil
Someone:
no nevypisuje to nic právě ... nevymaže se mi ten ip ban a když zmáčku na to tlačítko name=\"delete_ipban$dataip[ipaddress]\" tak se mi odešle ale skript if(isset($_POST['delete_ipban' . $echo_ip_Del['ipaddress']])) se nevykoná .. nejspíše chyba je v té podmínce
Someone
Profil
viz [#2], smaž apostrofy
Fisak
Profil
db::query_system("DELETE FROM banip WHERE ipaddress = '".mysql_real_escape_string($echo_ip_Del['ipaddress'])."");
-> nic to stále nedělá...
Someone
Profil
db::query_system("DELETE FROM  banip  WHERE  ipaddress  = '".mysql_real_escape_string($echo_ip_Del['ipaddress'])."'");
Fisak
Profil
Stále to nefunguje... nechápu proč ale prostě ta podmínka if(isset($_POST['delete_ipban' . $echo_ip_Del['ipaddress']])) se neplní .. jelikož když dám aktualizovat tak se mě to zeptá jestli chci formulář znovu odeslat...
//smazání banu
$sql_ip_Del = db::query_system("SELECT ipaddress FROM banip");
while($echo_ip_Del=mysql_fetch_assoc($sql_ip_Del)) {

    if(isset($_POST['delete_ipban' . $echo_ip_Del['ipaddress']]))
    {
        
        db::query_system("DELETE FROM  banip  WHERE  ipaddress  = '".mysql_real_escape_string($echo_ip_Del['ipaddress'])."'");
        
        redirect_page("admin", "ip_blocking");
    
    }
 
}
Someone
Profil
1.
Když místo query pro vymazání dáš echo, vypíše se?
2.
PHP vypadá v pořádku, nepřepsal jsi se někde v HTML?
Fisak
Profil
jo v pohodě to vypisuje .. zkoušel sem to vypsat napsalo mi to "delete_ipban188.199.199.199" a kontroloval sem přes prohlížeč name toho tlačítka a je to shodný "delete_ipban188.199.199.199" takže by se to mělo smazat ale ono se to naopak nechce ani odesílat.. jak říkám při refreshi mi to vyhodí hlášku jestli chci znovu odeslat formulář (to by nemělo dělat protože pokud se podmínka provede redirect_page("admin", "ip_blocking"); = fce pro přesměrování takže by se měla sama stránka refreshnout a zabránit znovu odesílání z čehož plyne že se ta podmínka nevykonala i když ten post i name toho tlačítka jsou shodné...)
Someone
Profil
Chyba musí být někde jinde. Zkoušel jsem to u sebe a vše funguje.
Fisak
Profil
Someone:
no to je právě ono mě prostě všechny ostatní skirpty takto fungují a najednou tento nefunguje.. nechápu v čem to je...
Someone
Profil
Ještě bych možná zkusil:
<input name=\"delete_ipban".$dataip['ipaddress']."\" type=\"submit\" id=\"form\" value=\"".ucfirst(translate("delete"))."\"/>
Fisak
Profil
Someone:
taky sem zkoušel ale v tomhle to neni ono se mi to totiž v pohodě napíše do name toho inputu ale potom ta podmínka s tím má problém .. moc nechápu proč no ..
ahoj
Profil *
Fisak:
kontroloval sem přes prohlížeč name toho tlačítka a je to shodný "delete_ipban188.199.199.199"

Tečky jsou v name přípustný znak?
Fisak
Profil
no .. teď sem udělal toho:
podmínka: if(isset($_POST['smazat_ib']))
a tlačítko echo "<input name=\"smazat_ib\" type=\"submit\" id=\"form\" value=\"".ucfirst(translate("delete"))."\"/>";
a smazalo mi to všechno což znamená že podmínka se vykonala.. a tudíž chyba je v té podmínce ...
ale jak předělat: if(isset($_POST['delete_ipban' . $echo_ip_Del['ipaddress']])) ????
DarkMeni
Profil
Buď checkboxem, radioinputem, skrytým inputem, odkazem, možností je hodně, a proč zakládáš znovu stejné téma když se to může dořešit ve starém. Každopádně odesílací tlačítko snad ani nemělo sloužit k posílání nějakých informací, ale jen k odeslání formuláře na server, informace má posílat zbytek formuláře, nebo proměnné v odkazu.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: