0
function delete($rowid) 
{
   $rowids = implode(", ",$rowid);
   $sql = "DELETE FROM pms WHERE id IN (".$rowids.")";
   print $sql;
}

if (isset($_POST['submit']))  
{
    delete($rowid);
}

?>

<form method="post" action="test.php">

<input type="checkbox" name="rowid[]" value="1771367" /><br >
<input type="checkbox" name="rowid[]" value="345342" /><br >
<input type="checkbox" name="rowid[]" value="572347" /><br >
<input type="checkbox" name="rowid[]" value="902358" /><br >
<input type="checkbox" name="rowid[]" value="234654" /><br ><br >

<input type="submit" name="submit" />

</form>

警告: implode() [function.implode]: 無効な引数が C:\pub\test.php の 4 行目に渡されました DELETE FROM pms WHERE id IN ()

ここで何が間違っていますか?ここで狂って..

4

3 に答える 3

4

$_POST['rowid']投稿から取得する場合は、を使用する必要があります。

また:

SQL をサニタイズしましょう!

于 2009-07-25T17:29:07.007 に答える
0

本当に古いPHPマニュアルを読んでいるようですがregister_globals = on、ケースのPOSTパラメータを読む必要があります。

function delete($rowid) 
{
   $rowids = implode(", ",$rowid);
   $sql = "DELETE FROM pms WHERE id IN (".$rowids.")";
   print $sql;
}

if (isset($_POST['submit']))  
{
        delete($_POST['rowid']);
}
于 2009-07-25T21:30:49.107 に答える
0

関数に正しい変数を渡していません。あなたはそれを呼び出す必要があります

if (isset($_POST['submit']))  
{
    delete($_POST['rowid']);
}
于 2009-07-25T17:28:41.857 に答える