<table>
<tr>
<td></td>
<td><p style="font-size:13px;font-weight:bold;">Paper Title</p></td>
<td><p style="font-size:13px;font-weight:bold;">Comments</p></td>
<td><p style="font-size:13px;font-weight:bold;">Upload Date</p></td>
<td><p style="font-size:13px;font-weight:bold;">Delete</p></td>
</tr>
<?php
$con = @mysql_connect("localhost","root","")or die("failed to connect the database");
mysql_select_db("iccp",$con);
mysql_query("set names 'GBK'");
$sql="select * from t_paper where contributor_id=118";
$query = mysql_query($sql);
while($row=mysql_fetch_array($query)){
?>
<tr>
<td><input type="checkbox" name="name" value="<?=@$row['paper_title']?>"/></td>
<td><?=@$row['paper_title']?></td>
<td></td>
<td><?=@$row['upload_time']?></td>
<td><input name="submit" value="delete" type="submit"></td>
</tr>
</table>
<?php
}
if(!empty($_POST['name'])){
$str = explode(",",$_POST['name']);
mysql_query("delete from t_paper where paper_title in($str)");}
?>
这里测试 为什么无法得到$_POST['name']的值
<tr>
<td></td>
<td><p style="font-size:13px;font-weight:bold;">Paper Title</p></td>
<td><p style="font-size:13px;font-weight:bold;">Comments</p></td>
<td><p style="font-size:13px;font-weight:bold;">Upload Date</p></td>
<td><p style="font-size:13px;font-weight:bold;">Delete</p></td>
</tr>
<?php
$con = @mysql_connect("localhost","root","")or die("failed to connect the database");
mysql_select_db("iccp",$con);
mysql_query("set names 'GBK'");
$sql="select * from t_paper where contributor_id=118";
$query = mysql_query($sql);
while($row=mysql_fetch_array($query)){
?>
<tr>
<td><input type="checkbox" name="name" value="<?=@$row['paper_title']?>"/></td>
<td><?=@$row['paper_title']?></td>
<td></td>
<td><?=@$row['upload_time']?></td>
<td><input name="submit" value="delete" type="submit"></td>
</tr>
</table>
<?php
}
if(!empty($_POST['name'])){
$str = explode(",",$_POST['name']);
mysql_query("delete from t_paper where paper_title in($str)");}
?>
这里测试 为什么无法得到$_POST['name']的值
<form method=post
<form action='##' method='post'>
.......
<td><input name="submit" value="delete" type="submit"></td>
.......
</form>
<?=@$row['paper_title']?>
改成<?php标签形式输出试试:
<?php echo $row['paper_title']; ?>
这个输出正常 按你的试了 还是不可以
if (isset($_POST['name'])) {
$str = explode(",",$_POST['name']);
mysql_query("delete from t_paper where paper_title in($str)"); //这里明显有问题,explode()函数返回的是一个数组,SQL语句语法错误了
}
// ↓
$str = implode(',', $_POST['name']));
已经解决了
<?php
}
if(!empty($_POST['name'])){
$str = explode(",",$_POST['name']);
mysql_query("delete from t_paper where paper_title in($str)");}
?>改为
<?php
}
@$a=$_POST['name'];
if(!empty($_POST['name'])){
$str = implode(",",$a);
mysql_query("delete from t_paper where paper_title in ($a)");
}
?>
就可以了 但是不知道为什么要在前面加个@$a=$_POST['name'];
非常感谢你的回答
我这里的功能之要求单选删除 多选删除应该要将name[]。