[PHP & MySQL] Login-Problem

Startpost-Retter
Hallo,

immer, wenn ich mich einloggen möchte, kommt folgende Fehlermeldung:

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /usr/export/www/vhosts/funnetwork/hosting/vrhzumhufeisen/login.php on line 15
Benutzername und/oder Passwort waren falsch.

Leider weiß ich nicht, was in Zeile 15 falsch ist unglücklich


Login.htm

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Login</title>
</head>

<body>
<form action="login.php" method="post">
Dein Username:<br>
<input type="text" size="24" maxlength="50"
name="mitglied"><br><br>

Dein Passwort:<br>
<input type="password" size="24" maxlength="50"
name="password"><br>

<input type="submit" value="Login">
</form>

</body>

</html>


login.php

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
<?php 
session_start(); 
?> 

<?php 
$verbindung mysql_connect("localhost""vrhzumhufeisen" "xxxx") 
or die("Verbindung zur Datenbank konnte nicht hergestellt werden"); 
mysql_select_db("vrhzumhufeisen") or die ("Datenbank konnte nicht ausgewählt werden"); 

$username $_POST["mitglied"]; 
$passwort md5($_POST["passwort"]); 

$abfrage "SELECT mitglied, passwort FROM login WHERE mitglied LIKE '$mitglied' LIMIT 1"$ergebnis mysql_query($abfrage); 
$row mysql_fetch_object($ergebnis); 

if($row->passwort == $passwort) 
    { 
    $_SESSION["mitglied"] = $mitglied; 
    echo "Login erfolgreich. <br> <a href="geheim.php">Geschützer Bereich</a>"; 
    } 
else 
    { 
    echo "Benutzername und/oder Passwort waren falsch. <a href="login.html">Login</a>"; 
    } 

?> 
SaraliebtPferde
haluu <3
Bin wirklich nicht gut in PHP aber versuchs mal so:


php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:

<?php 
session_start(); 
?> 

<?php 
$verbindung mysql_connect("localhost""vrhzumhufeisen" "xxxx") 
or die("Verbindung zur Datenbank konnte nicht hergestellt werden"); 
mysql_select_db("vrhzumhufeisen") or die ("Datenbank konnte nicht ausgewählt werden"); 

$username $_POST["mitglied"]; 
$passwort md5($_POST["passwort"]); 

$abfrage "SELECT mitglied, passwort FROM login WHERE mitglied LIKE '$mitglied' LIMIT 1"$ergebnis mysql_query($abfrage) or die(mysql_error());
$row mysql_fetch_object($ergebnis); 

if($row->passwort == $passwort) 
    { 
    $_SESSION["mitglied"] = $mitglied; 
    echo "Login erfolgreich. <br> <a href="geheim.php">Geschützer Bereich</a>"; 
    } 
else 
    { 
    echo "Benutzername und/oder Passwort waren falsch. <a href="login.html">Login</a>"; 
    } 

?> 
Stelo
Zitat:
Original von Mutzelchen
Danke dir smile

Jetzt kommt die Fehlemeldung:


Table 'vrhzumhufeisen.login' doesn't exist


Naja, das sagt ja wohl alles! smile
Du hast da wohl die Tabelle "login" gar nicht erstellt.
SaraliebtPferde
hm.. das hatte ich auch mal ._.
komisch, besteht die Tabelle in der Mysql datenbank denn & heißt die auch so?
Stelo
$abfrage = "SELECT mitglied, passwort FROM mitgliedertabelle WHERE mitglied LIKE '$mitglied' LIMIT 1";
Stelo
Erst mal solltest du in der if-Abfrage aber auch schreiben:

if($row->passwort == $passwort AND $row->mitglied == $username)

Und zu dem Fehler:
Sicher, das du das Passwort auch in md5 Verschlüsslung in der DB gespeichert hast?
Stelo
Naja, hast du denn schon eine Anmeldung gecodet? Ansonsten lässt du das md5 halt erst mal weg.
Ich schreib dir den code mal so um.

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
<?php 
session_start(); 
?> 

<?php 
$verbindung mysql_connect("localhost""vrhzumhufeisen" "xxxx") 
or die("Verbindung zur Datenbank konnte nicht hergestellt werden"); 
mysql_select_db("vrhzumhufeisen") or die ("Datenbank konnte nicht ausgewählt werden"); 

$username $_POST["mitglied"]; 
$passwort $_POST["passwort"]; 

$abfrage "SELECT mitglied, passwort FROM mitgliedertabelle WHERE mitglied LIKE '$mitglied' LIMIT 1"$ergebnis mysql_query($abfrage) or die(mysql_error());
$row mysql_fetch_object($ergebnis); 

if($row->passwort == $passwort AND $row->mitglied == $username)
    { 
    $_SESSION["mitglied"] = $username; 
    echo "Login erfolgreich. <br> <a href="geheim.php">Geschützer Bereich</a>"; 
    } 
else 
    { 
    echo "Benutzername und/oder Passwort waren falsch. <a href="login.html">Login</a>"; 
    } 

?> 
Maxy
code:
1:
2:
3:
Dein Passwort:<br>
<input type="password" size="24" maxlength="50"
name="password"><br>


Hier hast du password
Und hier passwort

php:
1:
2:
$username $_POST["mitglied"]; 
$passwort $_POST["passwort"];


Vielleicht liegt's ja daran?
Stelo
Also wenn du mit Sessions arbeitest, musst du auf jede geschützte Seite schreiben:

if (!isset($_SESSION["mitglied"])) {
echo "Du bist nicht eingeloggt." }
else
{
// geschützter Inhalt
}
Stelo
Kein Problem Augenzwinkern Hab ich gern gemacht.
Wenn etwas nicht klappt, dann frag einfach! großes Grinsen
Stelo
Ok, das war mein Fehler vorhin, ich hatte das ; vergessen, nach dem echo! ^^

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
<?php
if (!isset($_SESSION["mitglied"])) {
echo "Du bist nicht eingeloggt."; }
else
{
<html>

<head>
<meta http-equiv="Content-Language" content="de">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Herzlich Willkommen $username im</title>
</head>

<body>

<p align="center"><font face="Verdana" style="font-size: 8pt">Herzlich Willkommen $username 
im internen Bereich des vRh zum Hufeisen.</font></p>
<p align="center"><font face="Verdana" style="font-size: 8pt">Hier werden dir 
und deinem Pferd in kürze vielerlei Funktionen bereitstehen.</font></p>
<p align="center"><font face="Verdana" style="font-size: 8pt">x Banksystem<br>
x Shopsystem<br>
x Klicktraining</font></p>

</body>

</html>
}
?>
Stelo
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
<?php
if (!isset($_SESSION["mitglied"])) {
echo "Du bist nicht eingeloggt."; }
else
{
?>
<html>

<head>
<meta http-equiv="Content-Language" content="de">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Herzlich Willkommen $username im</title>
</head>

<body>

<p align="center"><font face="Verdana" style="font-size: 8pt">Herzlich Willkommen $username 
im internen Bereich des vRh zum Hufeisen.</font></p>
<p align="center"><font face="Verdana" style="font-size: 8pt">Hier werden dir 
und deinem Pferd in kürze vielerlei Funktionen bereitstehen.</font></p>
<p align="center"><font face="Verdana" style="font-size: 8pt">x Banksystem<br>
x Shopsystem<br>
x Klicktraining</font></p>

</body>

</html>
<?php
}
?>