[英]Form not updating database
我有一个从员工列表中填充的更新表单。 值正在传递但未在数据库中更新。 这是我的代码以及我所显示的内容。
<?php
$con = mysql_connect("localhost","root","*******");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$query = mysql_query("select * from backup");
if(isset($_POST['update']))
$id = $_POST['id'];
$first = $_POST['first'];
$last = $_POST['last'];
$store = $_POST['store'];
$title = $_POST['title'];
$title2 = $_POST['other'];
$phone = $_POST['phone'];
$email = $_POST['email'];
$dept = $_POST['dept'];
$bio = $_POST['bio'];
$query="UPDATE backup SET first='$first', last='$last', store='$store', title='$title', title2='$title2', phone='$phone', email='$email', bio='$bio' WHERE id='$id'";
mysql_query($query);
echo "Record Updated";
mysql_close();
print_r($_POST)
?>
这是结果
记录UpdatedArray([id] => 1396 [first] => Charles [last] => Adams [store] => [dept] =>会计[title] =>会计文员[其他] => [电话] => 410 -555-1212 [email] => [email2] => [bio] =>查理于2009年8月开始。这是一个测试...... [提交] =>提交)
有人可以帮我解决我可能做错的事吗? 至于注射,我将在完成测试后修复它。 我知道这听起来可能倒退,但我需要找出为什么这不起作用。
感谢您的帮助
您还应该选择数据库:
// make foo the current db
$db_selected = mysql_select_db('foo', $link);
if (!$db_selected) {
die ('Can\'t use foo : ' . mysql_error());
}
但最重要的是,你应该使用MySQLi或PDO_MySQL。
这是因为,你忘了{
after if (isset(...))
。
此外,未选择任何数据库。
更正后的代码如下:
<?php
$con = mysql_connect("localhost","root","*******");
mysql_select_db('DB_NAME');
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$query = mysql_query("select * from backup");
if(isset($_POST['update'])) {
$id = $_POST['id'];
$first = $_POST['first'];
$last = $_POST['last'];
$store = $_POST['store'];
$title = $_POST['title'];
$title2 = $_POST['other'];
$phone = $_POST['phone'];
$email = $_POST['email'];
$dept = $_POST['dept'];
$bio = $_POST['bio'];
$query="UPDATE backup SET first='$first', last='$last', store='$store', title='$title', title2='$title2', phone='$phone', email='$email', bio='$bio' WHERE id='$id'";
mysql_query($query);
echo "Record Updated";
mysql_close();
print_r($_POST)
}
?>
您尚未在连接中定义数据库。
您的代码可以更正为:
<?php
$con = mysqli_connect("localhost","root","**","db");
if (!$con)
{
die('Could not connect: ' . mysqli_error());
}
//$query = mysqli_query($con,"select * from backup");
if(isset($_POST['update'])):
$id = $_POST['id'];
$first = $_POST['first'];
//other stuffs
$query="UPDATE backup SET first='$first', last='$last', store='$store', title='$title', title2='$title2', phone='$phone', email='$email', bio='$bio' WHERE id='$id'";
$res = mysqli_query($con,$query);
if(!$res)
die("could not update records. Error = ".mysqli_error($con));
echo "Record Updated";
mysqli_close($con);
print_r($_POST);
endif;
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.