我要做的就是将用户输入的值存储到数据库中。有一个表,它有许多文本框,用户可以在其中输入他的输入。单击提交按钮后,值应该存储在 mysql 表中。我现在遇到了一些错误。我对 php 完全陌生,下面我附上了代码和屏幕截图。
//workingcode.php
<?php
$con = mysql_connect("localhost","tom","");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
//select Database
mysql_select_db("sms", $con);
$result = mysql_query("SELECT * FROM dept_info", $con) or die(mysql_error());
echo "<table border='1'>";
echo '<tr> <th>Sl No</th> <th>USN</th> <th>Name</th><th>code1</th><th>code 2</th> <th>code 3</th> <th>code 4</th> <th>code 5</th>
<th>code 6</th> <th>code 7</th> <th>code 8</th></tr>';
while($row = mysql_fetch_array( $result )) {
// Print out the contents of each row into a table
echo "<tr><td>";
echo $row['id'];
echo "</td><td>";
echo $row['usn'];
echo "</td><td>";
echo $row['name'];
echo "</td>";
for ($i=1; $i <= 8; $i++) {
echo "<td> <input type='text' name='sl[{$row['usn']}][$i]' size='2' /> </td>" ;
}
echo '</tr>';
}
echo '
<form action = "insert.php" method = "post">
<div align="bottom">
<input type = "submit" align = "BOTTOM" value = "Proceed">
</div>
</form>
';
?>
我已将其链接到 insert.php 文件,如下所示..
<html>
<head>
<title>Marks Entry Results</title>
</head>
<body>
<h1>Student Marks Entry Results</h1>
<?php
$insertData = array();
foreach ($_POST['sl'] as $usn => $codes) {
foreach ($codes as $sl) {
$insertData[] = sprintf("('%s', %d)", mysqli_real_escape_string($usn), intval($sl));
}
}
$con = mysql_connect("localhost","tom","");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
//select Database
mysql_select_db("sms", $con);
$query = "INSERT INTO mytable (usn, code1) VALUES\n" . join(",\n", $insertData);
$result = mysql_query($query);
if ($result) {
echo mysql_affected_rows()." Marks inserted into database.";
} else {
echo "An error has occurred. Not added.";
}
mysql_close();
?>
</body>
</html>
//The description of the table which i made for this is
/*mysql> desc mytable;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| usn | varchar(50) | NO | PRI | NULL | |
| code1 | int(2) | YES | | NULL | |
| code2 | int(2) | YES | | NULL | |
| code3 | int(2) | YES | | NULL | |
| code4 | int(2) | YES | | NULL | |
| code5 | int(2) | YES | | NULL | |
| code6 | int(2) | YES | | NULL | |
| code7 | int(2) | YES | | NULL | |
| code8 | int(2) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
9 rows in set (0.01 sec)
*/