php - 无法弄清楚这个 mysql 到 mysqli 的变化

标签 php mysql mysqli

您好,我仍在尝试更改为 mysqli,并且有时我可以让事情顺利进行。 我拥有的最大的东西是 mysqli_result,我尝试了其他人所做的事情,但似乎不起作用。 下面是代码:

$result = mysqli_query($con, "SELECT referer FROM users WHERE userId = '$key'");
if(mysql_result($result, 0) != "" ){
    $referer = mysql_result($result, 0);
    $result = mysqli_query($con, "SELECT referer FROM users WHERE userId = $referer'");
    if(mysql_result($result, 0) != "" ){
        $result2 = mysqli_query($con, "SELECT refered FROM users WHERE userId = $referer'");
        $newRefs = mysql_result($result2, 0) + 1;
        mysqli_query($con, "UPDATE users SET refered = '$newRefs' WHERE userId = '$referer'");
        $result3 = mysqli_query($con, "SELECT userName FROM users WHERE userId = '$key'");
        $refered = mysql_result($result3, 0);
    }
}

如果有帮助,我们将不胜感激。

亲切的问候 乍得

最佳答案

你不能像这样混合使用 mysql_mysqli_ 函数。另外,mysql_result 是严肃的老派。 mysqli 中没有类似的东西(这是一件好事)。我切换到mysqli_fetch_assoc ,它接受您的查询并返回一个以字段名称作为键的关联数组。为了统一起见,我将所有内容都保留为程序性(我讨厌将 OOP 与程序性混合在一起)。我应该注意到,您的代码编写起来非常复杂(例如 $key 没有在任何地方定义)。最好避免重复使用像您这样命名的变量。我还强烈建议切换到全对象代码库。

$result = mysqli_query($con, "SELECT referer FROM users WHERE userId = '$key'");
if($row = mysqli_fetch_assoc($result)){
    $result2 = mysqli_query($con, "SELECT referer FROM users WHERE userId = '" . $row['referer'] . "'");
    if($row2 = mysqli_fetch_assoc($result2)){
        $result3 = mysqli_query($con, "SELECT refered FROM users WHERE userId = '" . $row2['referer'] . "'");
        $newRefs = mysqli_fetch_assoc($result3);
        mysqli_query($con, "UPDATE users SET refered = '" . $newRefs['refered'] . "' WHERE userId = '" . $row['referer'] . "'");
        $result4 = mysqli_query($con, "SELECT userName FROM users WHERE userId = '$key'");
        $refered = mysqli_fetch_assoc($result4);
    }
}

关于php - 无法弄清楚这个 mysql 到 mysqli 的变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21353486/

相关文章:

php - 使用 PDO 建立与本地主机数据库的连接时出现问题

PHP 将库存合并到表中

PHP MySqli 插入

php - 在 fetch_assoc 之前,mysql 中有多少行?

java - 配置 Tomcat 以便我可以将 JSP 页面连接到 MySQL

javascript - 如果代码返回错误不运行查询

php - 在 Laravel 中下拉选择表单

php - 关于类别名的文档中是否存在错误?

PHP Securitywise 为什么 md5 不再被认为是安全的?

PhpUnit配置错误: no tests run when <directory> is used