通过PHP更新MySQL数据。说成功但不是

时间:2015-09-21 21:21:12

标签: php mysql

我正在尝试通过PHP更新我的MySQL表 - 它说成功,但实际上并没有更新。这是我使用的PHP代码的片段;

我的表格中的行列表。

<?php 
$sql="SELECT * FROM $tbl";
$result=mysql_query($sql);
while($rows=mysql_fetch_array($result)){
echo $rows['title']; 
echo $rows['date']; 
echo $rows['month']; 
?>
<a href="update.php?id=<? echo $rows['id']; ?>">update</a>

编辑论坛

<?php
$id=$_GET['id']; 
$sql="SELECT * FROM $tbl WHERE id='$id'";
$result=mysql_query($sql);
$rows=mysql_fetch_array($result);
?>
<form name="form" method="post" action="update.php">
<input name="title" type="text" id="title" value="<? echo $rows['title']; ?>">
<input name="date" type="text" id="date" value="<? echo $rows['date']; ?>" >
<input name="month" type="text" id="month" value="<? echo $rows['month']; ?>">
<input name="id" type="hidden" id="id" value="<? echo $rows['id']; ?>">
<input type="submit" name="Submit" value="Submit">

表更新的过程

<?php error_reporting(E_ALL); ini_set('display_errors', 1); //added to all pages

$title = $_POST['title']
$date = $_POST['date']
$month = $_POST['month']
$id = $_POST['id']

$sql="UPDATE $tbl SET title='$title', date='$date', month='$month' WHERE id='$id'";
$result=mysql_query($sql);
if (!$sql) {
die(mysql_error());
}
?>

如果我更新我的表直接在PhpMyAdmin中运行SQL查询,它可以正常工作。但是,当我通过PHP执行它时,它输出成功,但实际上并没有更改数据。我哪里错了?

PS:我尝试过使用mysql_error());但没有任何报道。

1 个答案:

答案 0 :(得分:1)

在分配;个变量后,您错过了分号($_POST):

$title = $_POST['title']
$date = $_POST['date']
$month = $_POST['month']
$id = $_POST['id']

在每个陈述之后立即添加;,你应该好好去。