这是插入代码,它正在使用PHP 5.3而不是5.4及以上版本。
$statement = mysqli_prepare($con, "INSERT INTO user (`username`, `password`, `primary_number`, `alternate_number`, `email`) VALUES (?, ?, ?, ?, ?)");
mysqli_stmt_bind_param($statement, "sssss", $username, $password, $primaryno, $alternateno, $email);
mysqli_stmt_execute($statement);
正确地使用了一些旧的PHP版本,当我更改服务器时,默认情况下选择了PHP 7.1。 我很沮丧,因为我无法找到问题。但现在我发现它我不知道为什么会发生
代码在PHP 5.2,5.3中完美正常但不高于此。我需要做哪些修改才能在其他版本中使用?
答案 0 :(得分:0)
您使用的功能似乎与“自PHP 5.3.0已弃用并且自PHP 5.4.0起已被删除”的功能有关: http://php.net/manual/en/function.mysqli-bind-param.php
它被删除的PHP版本往往坚持你的问题正在发生的PHP版本所以我首先了解,但我已经尝试了你的代码,它似乎适合我。
尝试使用mysqli_report(MYSQLI_REPORT_ALL);
并检查phpinfo();
的差异,也可以尝试其他一些MySQL版本。
我尝试了你的代码,似乎可以正常使用:
-PHP 5.5.12
-MySQL 5.6.17
-Apache 2.4.9
希望这会有所帮助。