我正在编码一个HTML表,该表显示MySql表中的信息。每行都是一系列输入,因此可以轻松更新表的值。
这是我当前的代码:
<form action=index.php/component/studentmanagement/?task=update method=post>
<table>
<tr>
<th>Name</th>
<th>Email</th>
<th>Program</th>
<th>Class</th>
</tr>
<?php
$db = JFactory::getDBO();
$query = "SELECT * FROM student_management_module";
$db->setQuery($query);
$rows = $db->loadObjectList();
foreach ($rows as &$row) {
echo "<tr>";
echo "<td>" . "<input type=text name=fullName id=name_val value=" .$row->name. "> </td>";
echo "<td>" . "<input type=text name=email id=email_val value=" .$row->email. "> </td>";
echo "<td>" . "<input type=text name=prog id=prog_val value=" .$row->program. "> </td>";
echo "<td>" . "<input type=text name=class id=class_val value=" .$row->class. "> </td>";
echo "<td class = 'headcol'> <input type=submit name=update class='btnupdate' value=update>";
echo "<td>" . "<input type=hidden name=hidden value=" .$row->student_id. "> </td>";
echo "</tr>";
}
?>
</table> </form>
但是,每当我尝试提交更新的值时,它们都不会传递给我的更新函数。我可以正确地将表格放在表格中吗?
在此先感谢您,我们将不胜感激。
这是我的更新功能:
<?php
$db = JFactory::getDBO();
$query = "UPDATE student_management_module SET name = '$_POST[fullName]', email = '$_POST[email]', program='$_POST[prog]', class='$_POST[class]' WHERE student_id='$_POST[hidden]'";
$db->setQuery($query);
$db->query();
?>
答案 0 :(得分:0)
请尝试在双引号或双引号中包含名称和ID的值。即id="class_val"
。在您的情况下,由于您已经在双引号中插入了td,请使用单引号。因此它将是"<td class='foo' id='foo' name='foo'></td>"
。