我希望代码将相同的值插入列表中检查的不同行(从数据库中查询列表。)但是它表示
“注意:第5行的\ enrol.php中的数组转换为字符串”,
这是我的section.php
<table border=1px>
<th>SELECT</th>
<th>ID NUMBER</th>
<th>NAME</th>
<th>COURSE</th>
<th>YEAR</th>
<?php session_start();
include('connect.php');
$group=$_REQUEST['idEdit'];
echo $group;
$sql="SELECT * FROM login WHERE section IS NULL or section = 0";
$result=mysql_query($sql) or die(mysql_error() );
while($arr=mysql_fetch_array($result))
{
echo '<tr><td><form action="enrol.php" method="post"><input type="checkbox" name="idnumber[]" value="'.$arr['idnumber'].'"></td>'.
'<td>'.$arr['idnumber'].", </td>".
'<td>'.$arr['lastname'].",".$arr['firstname']." </td>".
'<td>'.$arr['course']." </td>".
'<td>'.$arr['year']." </td></tr>";}
$idnumber=$arr['idnumber'];
?>
<input type="hidden" value="<?php $group ?>" name="group">
<input type="submit" value="Enrol Student" name="submit">
</form>
</table>
这是我的enrol.php
<?php
if(isset($_REQUEST['submit'])){
$ids = join (', ', $_POST['idnumber']);
$sql="INSERT INTO login (section) values ('$_POST[group]') WHERE idnumber='$ids'";
mysql_query($sql);
$count=mysql_affected_rows();
if($count==1){
echo '<script type="text/javascript">alert("Added Sucessfully")</script>';
}else{
echo '<script type="text/javascript">alert("Error!")</script>';
}
}
?>
我该如何解决这个问题?我一直在努力寻找解决方案,但我似乎无法找到任何解决方案。请帮忙。
答案 0 :(得分:1)
我认为,您正在获取隐藏字段组的值null。 首先,您在隐藏字段中回显组值。
<input type="hidden" value="<?php echo $group; ?>" name="group">
我希望你的问题能解决。 你明白了我的意思吗?
答案 1 :(得分:0)
使用implode而不是join
$ids = implode(', ', $_POST['idnumber']);
答案 2 :(得分:0)
使用implode
<?php
if(isset($_REQUEST['submit'])){
$ids = implode(', ', $_POST['idnumber']);
$sql="INSERT INTO login (section) values ('$_POST[group]') WHERE idnumber='$ids'";
mysql_query($sql);
$count=mysql_affected_rows();
if($count==1){
echo '<script type="text/javascript">alert("Added Sucessfully")</script>';
}else{
echo '<script type="text/javascript">alert("Error!")</script>';
}
}
?>
答案 3 :(得分:0)
获取帖子值时会出现一些引用问题。试试吧。
$sql="INSERT INTO login (section) values ('".$_POST["group"]."') WHERE idnumber='".$ids."'";
答案 4 :(得分:0)
我得到了答案,感谢@thumber nirmal和所有回答这个问题的人。这是enrol.php的工作代码
<?php include('connect.php');
if(isset($_REQUEST['submit'])){
$ids = implode(', ', $_POST['idnumber']);
$sql="update login set section='".$_POST['group']."' WHERE idnumber IN ($ids)";
echo $sql;
$query = mysql_query($sql) or die(mysql_error());
mysql_query($sql);
$count=mysql_affected_rows();
if($count==1){
echo '<script type="text/javascript">alert("Added Sucessfully")</script>';
}else{
echo '<script type="text/javascript">alert("Error!")</script>';
}
}
?>