繁体   English   中英

如何在PHP中正确更新MySQL表

[英]How to properly update a MySQL table in PHP

我正在尝试使用PHP更新表中的一行,尽管这不是我第一次,但是update函数无法正常工作。

这是PHP代码:

<?php
header("Access-Control-Allow-Origin: *");

$server = "localhost";
$username = "username";
$password = "dbpass";
$database = "dbname";

$con = mysql_connect($server, $username, $password) or die ("Could not connect: " . mysql_error());

mysql_select_db($database, $con);

 $q=mysqli_query("UPDATE  `phonegap_login` SET  `firstname` =  'Alhia' WHERE  `reg_id` =50;");


if($q)
{
echo "success";
}
else
{
echo "failed";
}
?>

顺便说一句,如果您尝试插入,它将起作用:

$q=mysql_query("insert into `phonegap_login` (`reg_date`, `firstname`, `lastname`, `email`, `password`) values ('test', 'test', 'test', 'test', 'test')");

我如何解决它? 插入有效,但更新行无效。 我正在使用reg_id = 50的行进行测试。

您正在混合mysqli_query和mysql_query。 仅使用mysqli_query。 mysql_query已弃用

$con = mysqli_connect($server, $username, $password) or die ("Could not connect: " . mysqli_error());

mysqli_select_db($database, $con);

$q=mysqli_query("UPDATE  `phonegap_login` SET  `firstname` =  'Alhia' WHERE  `reg_id` =50;");

或者,面向对象:

$mysqli = new mysqli($server, $username, $password, $database);

if ($mysqli->connect_errno) {
    echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}

$q = $mysqli->query("UPDATE  `phonegap_login` SET  `firstname` =  'Alhia' WHERE  `reg_id` =50;");

或者,PDO:

$connectionString = 'mysql:host=' . $server . ';dbname='.$database;
try {
    $db = new PDO($connectionString, $user, $pass);
} catch ( PDOException $e) {
    echo "Failed to connect to Database: (" . $e->getCode() . ") " . $e->getMessage();
}
$q = $db->query("UPDATE  `phonegap_login` SET  `firstname` =  'Alhia' WHERE  `reg_id` =50;");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM