<?php
@session_start();
include("./include/config.php");
include("./include/db_connect.php");
include("functions.php");
if (!isset($_GET['artikelID'])){$_GET['artikelID'] = "";}
if (!isset($_SESSION['UserID'])){$_SESSION['UserID'] = "";}
$sql = "SELECT kundenID FROM kunden WHERE username = '".$_POST['myusername']."' AND password = '".md5($_POST['mypassword'])."' ";
$result = mysqli_query($connect, $sql) OR die("<pre>\n".$sql."</pre>\n".mysqli_connect_error()); // this is line 13
$row = mysqli_fetch_assoc($result);
if (mysqli_num_rows($result)==1){
doLogin($row['kundenID'], isset($_POST['Autologin']));
header("location:cart.php?action=add&artikelID=".$_GET['artikelID']."&id=". $_SESSION['UserID'] ." ");
}
else {
header("location:k_login.php?error=TRUE ");
}
include("./include/db_close.php");
?>
mysqli_connect_error()向我展示了绝对正确的sql-query;使用名为mysql-front的工具测试sql-query,并带来一个(和正确的)结果,即'kundenID'。 我已经测试了很多东西(比如$ _SESSION ['connect']或$ _GLOBALS ['connect']而不是db_connect.db中的$ connect),但没有结果。 有人可以帮帮我吗?
- 更新 -
为什么没有人回答? 这个问题的描述不清楚吗? db-connection建立如下:
<?php
error_reporting(E_ALL);
$connect = mysqli_connect($dbserver,$dbuser,$dbpass,$dbname);
// Check connection
if (mysqli_connect_errno()){
echo "Zeile ".__LINE__.": Datenbankverbindung ist fehlgeschlagen ! " . mysqli_connect_error();
exit();
}
?>
checklogin-script(已测试)中已知所有db变量。所有$ _POST变量在checklogin-script(已测试)中也是已知的。我甚至尝试了一个硬编码的sql-query(带有db中测试记录的真实数据)。 结果仍然是相同的:mysqli_connect_error()报告正确的查询 - 但是没有更多的事情发生。 在此期间我花了10多个小时。如果有人能帮助我,我真的很感激。
答案 0 :(得分:0)
Couldn't fetch mysqli
表示PHP无法将$connect
变量的内容标识为有效的mysqli连接。尝试在"./include/db_connect.php"
中添加一些错误处理,以了解阻止您使用它的mysqli连接发生了什么。