Hallo zusammen
habe hier diesen fehler
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\ucp\index.php on line 29
und hier mal die zeile 24
siehe post 3
LG
Hallo zusammen
habe hier diesen fehler
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\ucp\index.php on line 29
und hier mal die zeile 24
siehe post 3
LG
und hier mal die zeile 24
Wir brauchen aber, so steht es auch in der Fehlermeldung am besten Zeile 28 & 29
hier
...da wo du $query definierst...diese Zeile brauchen wir
leider funktioniert es immernoch nicht
hier mal ein stück code
die 1. Zeile ist Zeile NR 24
$link = mysqli_connect("$db_host","$db_nutzer","$db_pass","$db_name") or die("Error " . mysqli_error($link));
$username = mysqli_real_escape_string($link,$_POST['username']);
$password = mysqli_real_escape_string($link,$_POST['password']);
$query = mysqli_query($link, "SELECT `id` FROM `users` WHERE `username` = '$username' AND `password` = '$password'");
echo "SELECT id FROM users WHERE username = '" . $username . "' AND password = '" . $password . "'";
if(mysqli_num_rows($query) == 1)
{
$_SESSION['username'] = $username;
echo $username;
echo $id;
// Nun wurde die Session gesetzt und der Spieler gillt als eingeloggt.
// Jetzt leiten wir den Spieler auf die home.php
header('Location: home.php');
} else {
// Es existiert kein Benutzer, somit sind die Daten falsch und wir geben eine Fehlermeldung aus
echo 'Der Account exisitiert nicht oder dein Passwort war falsch!';
}
Alles anzeigen
der fehler liegt wie gemeldet in Zeile 29
Der query hat einen Fehler
Nutz mal mysqli_error um mehr zu erfahren
Normal musst du die Connection eingeben und nicht den query. Kann mich aber auch irren.
(bin am Handy deswegen kann ich nicht nachsehen)
Beavis - wenn ich das richtig gelesen habe sollte der mir auf der seite dann irgendwas ausgebe
tut er aber net ....
ich hab das jetzt so gemacht
$link = mysqli_connect("$db_host","$db_nutzer","$db_pass","$db_name") or die("Error " . mysqli_error($link));
$username = mysqli_real_escape_string($link,$_POST['username']);
$password = mysqli_real_escape_string($link,$_POST['password']);
$query = mysqli_query($link, "SELECT `id` FROM `users` WHERE `username` = '$username' AND `password` = '$password'");
echo "SELECT id FROM users WHERE username = '" . $username . "' AND password = '" . $password . "'";
mysqli_error($link);
if(mysqli_num_rows($query) == 1)
Teste es mal mit dem query evtl bringt das etwas
also bei Link kommt garnix
bei query kommt noch diese meldung
Warning: mysqli_error() expects parameter 1 to be mysqli, boolean given in C:\xampp\htdocs\ucp\index.php on line 29
also insgesamt sieht das auf der seite so aus
Warning: mysqli_error() expects parameter 1 to be mysqli, boolean given in C:\xampp\htdocs\ucp\index.php on line 29
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\ucp\index.php on line 30
Ok sind die Daten vom query mit den Feldern in der Datenbank gleich?
Stimmen die Connection Daten wo die Tabelle liegt?
Die Connection Daten stimmen
genauso wie die feldnamen
Benenne deine Variable von $query mal einfach um in einen anderen Namen.
$link = mysqli_connect($db_host,$db_nutzer,$db_pass,$db_name) or die("Error " . mysqli_error($link));
$user = mysqli_real_escape_string($link,$_POST['username']);
$pass = mysqli_real_escape_string($link,$_POST['password']);
$result = mysqli_query($link, "SELECT * FROM `users` WHERE `username` = '". $user ."' AND `password` = '". $pass ."'");
if(mysqli_num_rows($result))
{ // und weiter von dir...
Grüße
danke für den vorschlag
leider immernoch nicht funktionsfähig
hier mal der Kompletttcode
<title> User Control Panel 0.2</title><body> <h1>User Control Panel</h1><h2> V.0.2</h2></body><?php session_start(); $db_host = "localhost"; $db_nutzer = "root"; $db_pass = ""; $db_name = "ucp"; if(isset($_POST["check"])) { if(isset($_POST["username"], $_POST["password"])) { $username = $_POST["username"]; $password = $_POST["password"]; } else { echo "Kein Benutzername oder Passwort eingegeben!"; exit(); } $link = mysqli_connect($db_host,$db_nutzer,$db_pass,$db_name) or die("Error " . mysqli_error($link)); $user = mysqli_real_escape_string($link,$_POST['username']); $pass = mysqli_real_escape_string($link,$_POST['password']); echo $username; echo $pass; $result = mysqli_query($link, "SELECT * FROM `users` WHERE `username` = '". $user ."' AND `password` = '". $pass ."'"); echo $result; if(mysqli_num_rows($result)) { $_SESSION['username'] = $username; echo $username; echo $id; header('Location: home.php'); } else { echo 'Der Account exisitiert nicht oder dein Passwort war falsch!'; } }?> <br><br> <form action="index.php" method="post"> Ihr Username:<br> <input type="Text" name="username"><br><br> Ihr Passwort:<br> <input type="password" name="password"><br><br> <input type="Submit" value="Absenden" name="check"><br> </form><form action="impressum.php" method="post"><input type="Submit" value="Impressum" name="impressum"><br></form>
<?php
session_start();
$db_host = "localhost";
$db_nutzer = "root";
$db_pass = "";
$db_name = "ucp";
if(isset($_POST["username"]) && isset($_POST["password"])) {
$link = mysqli_connect($db_host, $db_nutzer, $db_pass, $db_name) or die("Error " . mysqli_error($link));
$stmt = $link->prepare("SELECT * FROM `users` WHERE `username` = ? AND `password` = ? LIMIT 1")
$stmt->bind_param("s", $_POST["username"]);
$stmt->bind_param("s", $_POST["password"]);
$stmt->execute();
if($stmt->num_rows) {
$_SESSION['username'] = $username;
header('Location: home.php');
} else {
$msg = 'Der Account exisitiert nicht oder dein Passwort war falsch!';
}
} else {
$msg = 'Kein Benutzername angegeben.';
}
?>
<!DOCTYPE html>
<html>
<head>
<title> User Control Panel 0.2</title>
</head>
<body>
<h1>User Control Panel</h1>
<h2> V.0.2</h2><br /><br />
<form method="post">
<?php if(isset($msg)) echo $msg; ?>
Ihr Username:<br />
<input type="text" name="username"><br /><br />
Ihr Passwort:<br />
<input type="password" name="password"><br /><br />
<input type="submit" value="Absenden" name="check"><br />
</form>
<form action="impressum.php" method="post">
<input type="submit" value="Impressum" name="impressum">
</form>
</body>
</html>
Alles anzeigen