我刚刚回到一个月前运作良好的项目。今天我发现我收到一个“警告:mysqli::query():无法获取mysqli”错误,我不知道为什么。我已尝试更改if语句,但仍然得到相同的结果。
php页面
<?php
include_once 'db_connect.php';
include_once 'functions.php';
sec_session_start();
error_reporting(E_ALL); ini_set('display_errors', 1);
$email = $_SESSION['email'];
$name = $_SESSION['name'];
$hash = $_SESSION['hash'];
$password = $hash;
echo $name;
echo '<br>';
echo $email;
echo '<br>';
echo $hash;
echo '<br>';
$sql = "INSERT INTO signed_up(`name`, `email`, `password`) VALUES ('$name', '$email', '$password')";
if ($mysqli->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $mysqli->error;
}
//if ($result = $mysqli->query("INSERT INTO `signed_up`(`name`, `email`, `password`) VALUES ('$name', '$email', '$password')")){
//
//header('location: ../register_success.php');
//// $result->close();
//
//}
//else {
// echo "error";
//}
?>
我得到的错误
您已成功连接到数据库
gptgeoff
up666315@myport.ac.uk
$2y10$JUi/eSNwbTnM4ZyWetEL6.ELSepLPKLkEiJdi4WYMyp/sEEAk9hKE
警告:mysqli::查询():无法在第24行的 /home/sites/unitest.co.uk/public_html/includes/register_user.inc.php中获取mysqli警告:main():无法在第27行的 /home/sites/unitest.co.uk/public_html/includes/register_user.inc.php中获取mysqli错误:插入signed_up(name
,电子邮件
,密码
)VALUES('gptgeoff','up666315@myport.ac.uk','$2y10$JUi/eSNwbTnM4ZyWetEL6.ELSepLPKLkEiJdi4WYMyp/sEEAk9hKE')
db_connect.php文件工作,因为我得到了"你已成功连接到数据库"显示,会话变量正在传递和回声在这两个回声语句和$sql查询的值,所以我无法理解为什么这已经停止工作,有人能建议请
db_connect.php
<?php
include_once 'psl-config.php'; // As functions.php is not included
$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
if(!$mysqli) {
die('error connecting to database');
}
echo 'you have succesfuly connected to the database'.'<br/><br/>';
?>
这一行:
$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
创建一个对象。它是类mysqli
的实例。对象总是真实的。if语句检查$mysqli
是否为false。这个if语句是错误的,因为无论连接是否成功,对象都不会是错误的。
不要手动检查连接错误。您的连接失败了,当它失败时,PHP抛出了一个警告。请检查您的PHP配置是否有错误报告,因为您可能有警告静音。也请启用mysqli错误报告。在创建mysqli实例之前插入此行。
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
null GrantPermissionRule是否停止了为其他人所宣传的工作?
我正在用Unity 2018.2.2(最新版本于2018年8月8日)开发一款android小游戏。我在这个游戏上工作了几周,但现在,Unity在试图找到我的JDK时毫无理由地失败了。当我分配文件夹时(编辑- [如果您看不到图像:“未能检测到Java版本。Android开发需要JDK 8(1.8)。安装JavaRunatime环境(JRE)是不够的。”] 第一个我想的是,它可能会因为JDK的更新而失
我正在通过conda安装pymc,它告诉我更新一些文件,所以没有问题。然而,在更新后,它给出了一个OSError,现在,我不能访问任何conda构建命令。现在,当我键入任何conda命令时,它会给我
我使用dropbox下载文件API,我得到了一个令牌,但它返回400错误请求错误”调用API函数时出错”文件/下载”:必须提供HTTP标头“授权”或URL参数“授权” 我遵循dropbox api文档,但它无法工作~“”~如何修复它? 这是我的代码(angular2)
问题内容: 几天前使用时,它已经正常工作了。 但是现在不起作用了。而且我不知道问题出在哪里。 它显示“邮件已发送”。 我没有碰过Apache或这段代码中的任何内容。我已经在空PHP文件中测试了代码,结果相同。如何调试此问题? 问题答案: 可能是电子邮件发送正常,但被垃圾邮件过滤器捕获了吗?如果可以的话,请允许我交叉发表自己的看法: 一些要点(假设mail()返回true,并且错误日志中没有错误):
问题内容: 我试图用ui-bootstrap制作一个用于angularjs的轮播,我基本上直接从angular文档复制/粘贴了它,但是它在最后一张幻灯片上停止了工作。 它不会重新开始,并且控件停止工作,即在控制台上没有出现任何错误,只是停止了工作 编辑:我再次检查,它不会停止在最后一张幻灯片,实际上它停止在第二个,无论有多少个元素。 编辑:我只是用轮播制作了一个测试站点,但仍然无法正常工作 这是完