Autor Zpráva
Fisak
Profil
Zdravím. Netuším proč ale nějak mi nefunguje můj skritp. Nejspíše je chyba v tom if(isset($_POST["delete_ipban$echo_smaz_se[ipaddress]"]))
//smazání banu
$system_sql_modul = db::query_system("SELECT * FROM banip");
while($echo_smaz_se=mysql_fetch_assoc($system_sql_modul)) {

    if(isset($_POST["delete_ipban$echo_smaz_se[ipaddress]"]))
    {
        
        db::query_system("DELETE from page where ipaddress = '$echo_smaz_se[ipaddress]'");
        
        redirect_page("admin", "ip_blocking");
    
    }

}
<?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>";

}
?>
DarkMeni
Profil
A máš pravdu, delete_ipban$echo_smaz_se[ipaddress] je po převedení "delete_ipbanarray[ipaddress]", tak jedině:
isset($_POST['delete_ipban' . $echo_smaz_se['ipadress']])
nebo
isset($_POST["delete_ipban{$echo_smaz_se['ipadress']}"])
Fisak
Profil
DarkMeni:
u obou případů Notice: Undefined index: ipadress in G:\SERVER\Vertigo\VertrigoServ\www\insignia\admin\php_modules\ip_blocking\index.php on line 5


jo už vím.. dal si tam jedno d v ipaddress.. ale nahrazeno a stejně to nic nedělá.. chybu to nevypisuje ale zároveň to nic nedělá


stále je to v tom stejnym řádku jelikož když dám F5 tak mi to ukazuje jestli chci pokračovat s odesláním formuláře
Zechy
Profil
Fisak:
Používáš index pole, kterej nemáš definovaný. Vkládáš prázdnou proměnou
Fisak
Profil
Zechy:
zkoušim echo $echo_smaz_se['ipaddress'];
a normálně to vypisuje takže to něco obsahovat musí...
DarkMeni
Profil
To bude asi tím že neumim pořádně anglicky, takže tam mam mít místo isset($_POST['delete_ipban' . $echo_smaz_se['ipaddress']])
A jestli to chceš ještě víc zjednodušit, tak to můžeš udělat přes odkazy (vzhled tlačítka se dá nahodit s csskem na odkaz):
<?php
$sqlip = db::query_system('SELECT `ipaddress`, `note`, `date` FROM `banip`'); //Aby zbytečně netahal všechny sloupce, ale jen ty, co potřebuje
while($dataip = mysql_fetch_assoc($sqlip)){
    echo "<tr><td>".$dataip['ipaddress']."</td><td>".$dataip['note']."</td><td>".$dataip['date']."</td><td><a href=\"soubor.php?unset_ipban={$dataip['ipaddress']}\">".ucfirst(translate("delete"))."</a></td></tr>";
}
?>
<?php
  //Autorizace (asi admina)...
  mysql_query('DELETE FROM `banip` WHERE `ipaddress` = \''.mysql_real_escape_string($_GET['unset_ipban']).'\'');
  //Zbytek kódu (takže asi refresh / redirect)
?>

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: