php - 来自 PHP 的 MySQL 查询仅执行第一个查询

标签 php mysql

我在以下代码中遇到问题:

<?php 
session_start();
$user_id = $_SESSION['user_id'];
?>
<?php  #insert new tweets 
if($user_id){
if($_POST['post_id']!=""){
    include 'connect.php';
    mysqli_query($conn,"Delete from post where id=".$_POST['post_id']."");
    mysqli_query($conn, "UPDATE users
                 SET post = post - 1
                 WHERE username=$user_id");

    }
}
header("Location: .");
?>

第一个查询“删除”有效,但第二个“更新”无效,我的代码出了什么问题? 它重定向到标题很好。

最佳答案

首先,您的代码容易受到 SQL Injections 的攻击。我建议先清理您的输入,然后再将其传输到该数据库。

我认为您的第二个查询中有拼写错误

UPDATE users SET post = post - 1 WHERE username=$user_id;

用户名可能应该是user_id。由于查询找不到匹配的记录,因此看起来好像没有执行任何操作。

您始终可以通过检查 mysqli_query 的返回值来验证这一点。

Returns FALSE on failure. For successful SELECT, SHOW, DESCRIBE or EXPLAIN queries mysqli_query() will return a mysqli_result object. For other successful queries mysqli_query() will return TRUE.

关于php - 来自 PHP 的 MySQL 查询仅执行第一个查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50106694/

相关文章:

php - MySQL LOAD DATA LOCAL INFILE 期间出现格式错误的数据包错误

Mysql多选查询按月显示总结果

php - jQuery 自动完成 - 按多个值搜索

php - 如何从php中所有文件的文件夹目录中只获取视频文件?

php - 是否可以使用 PHPExcel 库导入和导出大小为 70MB 的 excel 文件?

php - 如何诊断本地网络上间歇性缓慢的 PHP 到 MySQL 连接速度?

php - 将日期转换为 MYSQL 可以理解的格式?

php - 如何使用php获取存储在Mysql中的多张图片?

java - ejb3.0表未映射

mysql - 在 Yii 中从数据库生成模型?