Lgoin funktioniert obwohl keine eingabe gemacht ist

creativeheadz

Erfahrenes Mitglied
Hallo

Ich bin gerade dabei einen Shop zu basteln. Es ist soweit schon alles fertig nur jetzt is mir ein riesen Problem aufgefallen...

Wenn die Eingabefelder leer bleiben (usrnmae, passwort) wird man trotzdem eingeloggt.

Die Sessions werden aber inder index gestartet.

ich weiss nicht woran das liegt hat einer von euch ne ahnung...

Gruß
DAniel
 
Hi,
hast du ne if() abfrage, die prüft, ob in dem
Feld wenigstens ein Zeichen eingegeben wurde?
Also sowas:
PHP:
<?php
//...
if($_POST['name'] > 1)
{
    //Login vornehmen
}
else
{
   //Login fehlgeschlagen
}
//...
?>
Gruß,
Snowowl
 
Welches Kriterium müssen denn Benutzername und Kennwort erfüllen, damit der Login erfolgreich ist?
 
PHP:
<?php

include ("config.php");

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


$abfrage = "SELECT username, passwort FROM tcm_kunden WHERE username LIKE '$username' LIMIT 1";
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);

if($row->passwort == $passwort)
    {
    $_SESSION["username"] = $username;
    echo "Login erfolgreich.";
    }
else
    {
    echo "Benutzername und/oder Passwort waren falsch. <a href=\"login.html\">Login</a>";
    } 
	
	

?>
 
Probier mal Folgendes:
PHP:
<?php

	include 'config.php';

	$query = '
		SELECT
		        1
		  FROM
		        `tcm_kunden`
		  WHERE
		        `username` LIKE "'.mysql_real_escape_string($_POST['username']).'"
		    AND `password` = "'.mysql_real_escape_string($_POST['passwort']).'"
		';
	if( mysql_num_rows(mysql_query($query)) ) {
		$_SESSION['username'] = $_POST['username'];
		echo 'Login erfolgreich.';
	} else {
		echo 'Benutzername und/oder Passwort waren falsch. Bitte versuchen Sie es erneut. <a href="login.html">Login</a>';
	}

?>
 
Fehler gefunden: Es fehlte eine schließende Klammer in Zeile 11. Mein vorherigen Beitrag habe ich entsprechend korrigiert.
 
Zurück