Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在html表格中输入类型文本名称_Javascript_Php_Jquery_Html_Mysql - Fatal编程技术网

Javascript 在html表格中输入类型文本名称

Javascript 在html表格中输入类型文本名称,javascript,php,jquery,html,mysql,Javascript,Php,Jquery,Html,Mysql,我有这样的代码 <form action="submit.php" method="post"> <table> <tr> <th> Student </th> <th> Subject </th> <th> Grade </th> </tr> $sql = mysql_query("select * from tblsubjectgrade"); while($row = m

我有这样的代码

<form action="submit.php" method="post">
<table>
<tr>
<th> Student </th>
<th> Subject </th>
<th> Grade </th>
</tr>
$sql = mysql_query("select * from tblsubjectgrade");
while($row = mysql_fetch_array($sql)){
echo'<tr>';
echo '<td>'.$row['name'].'</td>';
echo '<td>'.$row['subject'].'</td>';
echo '<td><input type="text" name="grade" /></td>';
echo '</tr>';
}
echo '<input type="submit" />';
</form>

学生
主题
等级
$sql=mysql_查询(“从tblsubjectgrade中选择*);
while($row=mysql\u fetch\u数组($sql)){
回声';
回显'.$row['name'].';
回显“.$row['subject']”;
回声';
回声';
}
回声';

我的问题是,如果我有20名学生,我将在每个学生中输入一个分数,当我单击提交按钮时,每个学生中输入的所有分数都必须保存到名为tblgrade的数据库中。每个输入的名称必须不同。有人能帮我吗?

grade
应该是一个数组,在您的情况下,它只是一个值

如果表结构具有ID,请将其指定给名称,如下所示

while($row = mysql_fetch_array($sql)){
echo'<tr>';
echo '<td>'.$row['name'].'</td>';
echo '<td>'.$row['subject'].'</td>';
echo '<td><input type="text" name="grade['.$row['id'].']" /></td>';
echo '</tr>';
}
while($row=mysql\u fetch\u数组($sql)){
回声';
回显'.$row['name'].';
回显“.$row['subject']”;
回声';
回声';
}
然后在PHP中,您将有一个
$\u POST[“grade”]
数组,其中包含与实际表关联的所有值


您可以通过
$\u POST[“grade”][row\u id]

访问它们要在数据库中更新/插入它们,您可以使用以下方法:

<?php 
foreach($_POST["grade"] as $id => $grade) { 
    $query = "SELECT * FROM tblgrade WHERE id = '$id'";
    $result = mysql_query($query);
    if(mysql_num_rows($result) > 0)
    $query = "UPDATE tblgrade SET grade = '$grade' WHERE id = '$id'";
    else
    $query = "INSERT INTO tblgrade SET id='$id', grade = '$grade'";
    mysql_query($query);
}
?>
类似这样的东西:

$rowCount = $_POST['hiddenName'];
for($i=1; i<=$rowCount; $i++)
{
  $_POST['name_'.$i]
}
$rowCount=$\u POST['hiddenName'];
对于($i=1;i)

,或
-@davey对提供的代码有正确的语法实际上
,否则你不知道哪个年级属于哪个学生。你能给出tblgrade的结构吗?我的tblgrade有id、姓名、科目和年级。
<table>
  <tr>
    <td><input type="text" name="name[]" ></td>
    <td><input type="text" name="subject[]" ></td>
    <td><input type="text" name="grade[]"> </td>
  </tr>
</table>
<?php  
$rowCount =  count($_POST['name']); 
  echo "<table>";
  for($i=1; $i<=$rowCount; $i++)
  {
    echo "<tr>";
    echo "<td>".$_POST['name'][$i -1]."</td>";
    echo "<td>".$_POST['subject'][$i -1]."</td>";
    echo "<td>".$_POST['grade'][$i -1]."</td>";
    echo "</tr>";
  }
  echo "</table>";
?>