【发布时间】:2018-10-16 14:53:35
【问题描述】:
这是我的第一个非常简单的 php 学习程序,我已将我的 PHP 与 MySQL 服务器连接起来,插入、删除运行良好,但更新有一些问题。当我按下更新按钮时,没有任何反应。
我的数据库名是ddb3,表名是student1。
我使用的 Apache 服务器是通过 Xampp 托管的。
mysql_error(); 显示没有错误,apache 日志文件中也没有错误
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("ddb3");
if(isset($_POST['submit'])) {
$name = $_POST['name'];
$age = $_POST['age'];
mysql_query("INSERT INTO student1(name, age) VALUES ('$name', '$age');");
}
if(isset($_POST['delete'])) {
$name = $_POST['name'];
mysql_query("DELETE FROM student1 WHERE name = '$name';");
}
if(isset($_POST['update'])) {
$name = $_POST['name'];
$age = $_POST['age'];
mysql_query("UPDATE student1 SET name = '$name' WHERE age = '$age';");
}
?>
<html>
<body>
<center>
<form name='f1' action='prog3.php' method='post'>
<b>Name:<b><input type="text" name="name" size="20"><br>
<b>Age:<b><input type="text" name="age" size="5"><br>
<input type="submit" name="submit" value="Insert to Table"/>
<input type="submit" name="delete" value="Delete from Table"/>
<input type="submit" name="update" value="Update Row"/>
</form>
</center>
<?php
echo "<table align='center' name='t1' border='1' width=500px>
<tr><th>NAME</th><th>AGE</th></tr>";
$select = mysql_query("SELECT * FROM student1");
while($colmn = mysql_fetch_array($select)) {
echo "<tr><td>$colmn[0]</td><td>$colmn[1]</td></tr>";
}
echo "<table>";
?>
</body>
</html>
【问题讨论】:
-
停止使用已弃用的
mysql_*API。使用mysqli_*或PDO。还要使用准备好的语句来防止 sql 注入 -
使用
mysql_error()查看是否有错误或打印出语句并在sql客户端中尝试,可能值不是您期望的值 -
@Jens 尝试了 mysql_error();但没有发现错误。我正在使用 Xampp 服务器
标签: php html mysql database xampp