2009-07-25 3 views
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> 

Предупреждение: лопаются() [function.implode]: Недопустимые аргументы, передаваемые в C: \ паб \ test.php в строке 4 DELETE FROM PMS WHERE ID IN()Implode недействительные аргументы

Что я здесь делаю неправильно? Сходит с ума здесь ..

+0

Пробовали ли вы '$ _POST [ 'ROWID'] '? – Gumbo

+0

im gonna sleep now .. – 2009-07-25 17:32:34

ответ

0

Вы не передаете правильную переменную своей функции. Вам нужно вызвать с

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

Вы должны использовать $ _POST [ «RowId»], если вы захвата, что от должности.

также:

Санируйте ваш SQL!

+0

Кто-то собирается отправить вашу форму с помощью . – Rafe

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']); 
} 
Смежные вопросы