PHP页面:未选择数据库问题
我在第13行得到PHP页面:未选择数据库问题,php,mysql,Php,Mysql,我在第13行得到没有选择数据库错误。这个代码行是 $result = $mysqli->query($query) or die($mysqli->error." on line ".__LINE__); 数据库已成功连接,但当我尝试打开“question.php”文件时,出现此错误 <?php // Set question number $number = (int) $_GET['n']; /* * Get Question
没有选择数据库错误。这个代码行是
$result = $mysqli->query($query) or die($mysqli->error." on line ".__LINE__);
数据库已成功连接,但当我尝试打开“question.php”文件时,出现此错误
<?php
// Set question number
$number = (int) $_GET['n'];
/*
* Get Question
*/
$query = "SELECT * FROM questions WHERE questions.question_number = $number";
// Get Result
$result = $mysqli->query($query) or die($mysqli->error." on line ".__LINE__);
$question = $result->fetch_assoc();
/*
* Get Choices
*/
$query = "SELECT * FROM choices WHERE question_number = $number";
// Get Results
$choices = $mysqli->query($query) or die($mysqli->error.__LINE__);
?>
更新
我的数据库连接:
<?php
// Create connection credentials
$db_host = 'localhost';
$db_name = 'quizzer';
$db_user= 'root';
$db_pass='';
// Create mysqli object
$mysqli = new mysqli($db_host, $db_user,$db_pass,$db_pass);
// Error handler
if($mysqli->connect_error){
printf("Connect failed: %s\n", $mysqli->connect_error);
exit();
}
如果您有输入错误,请写下:
$mysqli = new mysqli($db_host, $db_user,$db_pass,$db_name);
而不是:
$mysqli = new mysqli($db_host, $db_user,$db_pass,$db_pass);
如果你有打字错误,请写下:
$mysqli = new mysqli($db_host, $db_user,$db_pass,$db_name);
而不是:
$mysqli = new mysqli($db_host, $db_user,$db_pass,$db_pass);
显示设置数据库连接的位置!刚刚更新了我的问题。$mysqli=newmysqli($db\u主机,$db\u用户,$db\u通行证,$db\u通行证)代码>2个$db_pass
实例??真的吗<代码>$mysqli=newmysqli($db\u主机、$db\u用户、$db\u通行证、$db\u名称)也许你要杀了我。谢谢。警告:当使用mysqli
时,您应该使用和将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为您已经创建了严重的错误。切勿将$\u POST
或$\u GET
数据直接放入查询,如果有人试图利用您的错误,这可能非常有害。使用intval
清除值不是通用解决方案。显示您在何处设置数据库连接!刚刚更新了我的问题。$mysqli=newmysqli($db\u主机,$db\u用户,$db\u通行证,$db\u通行证)代码>2个$db_pass
实例??真的吗<代码>$mysqli=newmysqli($db\u主机、$db\u用户、$db\u通行证、$db\u名称)也许你要杀了我。谢谢。警告:当使用mysqli
时,您应该使用和将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为您已经创建了严重的错误。切勿将$\u POST
或$\u GET
数据直接放入查询,如果有人试图利用您的错误,这可能非常有害。使用intval
清除值不是通用解决方案。