LogIn mit PHP und MySQL Probleme

Ich würde es so machen:
PHP:
$result = mysql_query('SELECT user,pass FROM acc WHERE user='ronaldo84' AND pass='passwort');
$row = mysql_fetch_row('$result');
if(count($row)!=0)
  header("Location: geheime_seite.php");
else
   header("Location: formular.php?fehler=1");
Da du genau den Datensatz suchst wo beidest stimmt kannst du auch einfach über die Anzahl an Ergebnissen gehen.

€: $ vergessen
 
Zuletzt bearbeitet:
PHP:
<?php
$username = $_POST['name'];
$pwd = $_POST['pwd'];
// Session starten
session_start ();

// Datenbankverbindung aufbauen
$connID = mysql_connect ("localhost", "root", "test");
if (!mysql_select_db ("userdata", $connID))
{
  die ("Keine Verbindung zur Datenbank");
}

$result = mysql_query('SELECT user,pass FROM acc WHERE user='$username' AND pass=md5'$pwd');
$row = mysql_fetch_row('$result');
if (count(row)!=0)
 header("Location: geheime_seite.php");
else
  header("Location: formular.php?fehler=1");



?>

Parse error: syntax error, unexpected T_VARIABLE in C:\xampplite\htdocs\usrarea\login.php on line 14
 
Ich denke Du musst

PHP:
if (count(row)!=0)

in

PHP:
if (count($row)!=0)

ändern, also das $ fehlt bei Dir.

Gruß Thomas
 
ja danke


PHP:
<?php
$username = $_POST['name'];
$pwd = $_POST['pwd'];
// Session starten
session_start ();

// Datenbankverbindung aufbauen
$connID = mysql_connect ("localhost", "root", "test");
if (!mysql_select_db ("userdata", $connID))
{
  die ("Keine Verbindung zur Datenbank");
}

$result = mysql_query('SELECT user,pass FROM acc WHERE user='$username' AND pass='$pwd'');
$row = mysql_fetch_row('$result');
if (count($row)!=0)
 header("Location: geheime_seite.php");
else
  header("Location: formular.php?fehler=1");

Parse error: syntax error, unexpected T_VARIABLE in C:\xampplite\htdocs\usrarea\login.php on line 15

das wäre diese

$result = mysql_query('SELECT user,pass FROM acc WHERE user='$username' AND pass='$pwd'');
zeile

wo kann ich das md5 hinschreiben denn die passwörte sind ja mit nen md5 hash verschlüsselt
 
So musste das mit dem md5 schreiben:
In der zweiten Zeile:
$pwd = MD5($_POST['pwd']);

Und das in Zeile 15 würde ich so ändern:

PHP:
$result = mysql_query("SELECT user,pass FROM acc WHERE user='".$username."' AND pass='".$pwd."'");
 
Zuletzt bearbeitet:
ja danke
jetz kommt


Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in C:\xampplite\htdocs\usrarea\login.php on line 15

ich hab mal nen echo $result; gemacht und er sagt

Resource id #3
 
Hi,

$result kannst Du nicht ausgeben, es enthält ja die Daten der Abfrage.

Außerdem würde ich schreiben :

PHP:
if (mysql_num_rows($result) != 0) {
 header("Location: geheime_seite.php"); 
} else 
  header("Location: formular.php?fehler=1");

oder besser noch :

PHP:
if (mysql_num_rows($result) == 1) {
 header("Location: geheime_seite.php"); 
} else 
  header("Location: formular.php?fehler=1");

Dann denke ich klappt es.
 
ja ok

der fehler :


Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in C:\xampplite\htdocs\usrarea\login.php

bleibt aber trotzdem

es ist in Zeile 14 :

$row = mysql_fetch_row('$result');
 
Zurück