|
|
php mysql 问题--->72#php message box
[复制链接]
|
|
|
发表于 2-4-2008 05:45 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 2-4-2008 09:52 PM
|
显示全部楼层
[quote]原帖由 yhchan 于 2-4-2008 11:09 AM 发表 
你的checkbox是什么?List of "word" ?
不好意思,写漏了。。是id |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 2-4-2008 09:54 PM
|
显示全部楼层
原帖由 vampcheah 于 2-4-2008 05:45 PM 发表 
先把 check 的result echo 出来看....
check result是id..就算我check两个也只有一个id |
|
|
|
|
|
|
|
|
|
|
发表于 2-4-2008 11:38 PM
|
显示全部楼层
原帖由 cath 于 2-4-2008 09:54 PM 发表 
check result是id..就算我check两个也只有一个id 凡事先确认 input 。 |
|
|
|
|
|
|
|
|
|
|
发表于 3-4-2008 10:41 AM
|
显示全部楼层
正如vamp所说,echo你的$_POST['checkbox']来看看,也echo你的query来看看。
有可能是你generate checkbox的HTML时出了问题。。。。 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 3-4-2008 11:07 AM
|
显示全部楼层
是啊!我echo了,$_POST['checkbox']就是word id
问题就出在不能同时delete多个row |
|
|
|
|
|
|
|
|
|
|
发表于 3-4-2008 11:20 AM
|
显示全部楼层
只有一个ID,那就是说你的checkbox的 HTML错了。
请注意这两个checkbox:
<input type="checkbox" name="cb" value="1">
<input type="checkbox" name="cb2" value="2">
Submit 后,echo $_POST['cb'],会得到1,echo $_POST['cb2'],会得2。
再看这两个:
<input type="checkbox" name="cb[]" value="1">
<input type="checkbox" name="cb[]" value="2">
请注意name。这次用得是cb[],而不是cb。而且,两个 checkbox用的是同样的name。
submit后,$_POST['cb']会得到一个ARRAY,而不是一个value。因为cb超过一个。
所以,要得到check 的 value,就必须Loop in array:
if (count($_POST['cb']) > 0) {
foreach ($_POST['cb'] as $key) {
$key = addslashes($key);
mysql_query("DELETE FROM `table` WHERE `id` = '$key'");
}
}
试试看。。。。 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 3-4-2008 11:36 AM
|
显示全部楼层
好的,我再试试看。。其实我也很模糊checkbox[]和checkbox之间。。
谢谢你~~ |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 3-4-2008 10:00 PM
|
显示全部楼层
可以了!謝謝大家~~
if (isset($_POST['Delete'])){
$del_id = $_POST['checkbox'][$i];
if (!empty($_POST['checkbox'])) {
foreach($_POST['checkbox'] as $v) {
$del_id = mysql_real_escape_string($v);
$sql = "delete * FROM word where id = '$del_id'";
mysql_query($sql);
}
}
}
但我不明白為何在這裡要用mysql_real_escape_string才能...
[ 本帖最后由 cath 于 3-4-2008 11:05 PM 编辑 ] |
|
|
|
|
|
|
|
|
|
|
发表于 4-4-2008 10:42 AM
|
显示全部楼层
噢,那是说你checkbox的value有\n, \r, \, ', "等的special character,必须去掉才能正常的Query。
但为什么会有呢?。。。。
但也恭喜你做到了哟! |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 4-4-2008 11:03 AM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 7-4-2008 11:11 PM
|
显示全部楼层
|
请问如何做php message box?比如说要confirm to delete的。。 |
|
|
|
|
|
|
|
|
|
|
发表于 7-4-2008 11:53 PM
|
显示全部楼层
最简单的方法是用 javascript。
<input type="submit" value="Delete" onClick="return confirm('Delete ?');">
当user按OK,才会submit。 |
|
|
|
|
|
|
|
|
|
|
发表于 8-4-2008 12:49 AM
|
显示全部楼层
可不可以不要再连试都不试就跑上来问 ?(起码告诉我们你做了些什么testing)
难道你有问题,我们直接回答就是好吗? |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 8-4-2008 10:54 AM
|
显示全部楼层
[quote]原帖由 yhchan 于 7-4-2008 11:53 PM 发表 
最简单的方法是用 javascript。
其实如果不用javascript可以吗?只是用php,php我找不到相关的资料 |
|
|
|
|
|
|
|
|
|
|
发表于 8-4-2008 12:42 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 8-4-2008 02:08 PM
|
显示全部楼层
好的,谢谢你的建议 |
|
|
|
|
|
|
|
|
| |
本周最热论坛帖子
|