• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Login Benutzer prüfen ?

Hab ich schon ... könnt ich mit leben find ich sagar gut aber dan müsst man wieder Einstellen das ne Fehlermeldung kommt wen man nur Zahlen benutzt :sad:

FG Niklas
 
Dann mußt du den Code ändern
So kann man nur Buchstaben eingeben
PHP:
if (!preg_match("/^[a-zA-Z_]{3,30}$/", $password)) 
{  
header ("Location:anmeldung.php?fehler=falsche_Angabe");
die;
}

und die Meldung ändern

{$Mitteilung= "Passwort muß zwischen 3 und 30 Zeichen lang sein, und darf nur Buchstaben enthalten";}
 
Da ist irgendein Fehler, normalerweise funktioniert das mit Zahlen genauso, wie mit Buchstaben

Ich hab überleg mal , ob ich den Fehler finde
 
2 sachen die ihr euch merken sollten:

1. strip_tags ist hier überflüssig, nutzt mysql_real_escape_string
2. Strings schreibt man immer in " oder ' (gibt noch andere Möglichkeiten), aber bitte NIE einfach als Text. PHP sucht dann nach konstanten, protokolliert eine notice in der Errorlog und versucht es dann als String zu casten.

am schnellsten ist '


Beispiel:
PHP:
mysql_query($q = 'SELECT * FROM users where username = "'.mysql_real_escape_string($_POST['user'].'" and pass = "'.md5($_POST['pass'].'"');
dann kannste nen count verwenden, dieses sogar direkt casten.
PHP:
if(!count($result))
die('user gibt es nicht');
bitte die Post-Variabeln erst mit isset nach einem vorhandenen wert prüfen.
 
Hallo,

Ich bekomme es einfach nicht hin diesen Fehler zu beseitigen (Line 7)

Code:
<?php session_start (); ?>
<?php
if( $_GET["fehler"]==benutzer_vorhanden)
{$Mitteilung= "Der Benutzer ist schon vorhanden";}
if( $_GET["fehler"]==falsche_Angabe)
{$Mitteilung= "Passwort muß zwischen 3 und 30 Zeichen lang sein, und darf nur Buchstaben enthalten";}
<html>
<head> 
<title>Login</title> 
<link rel="stylesheet" type="text/css" href="../style/teststyle.css" /> 
</head> 
<div id="wrapper">
<body> 
<?php 
if (isset ($_REQUEST["fehler"])) 
{ 
  echo "Die Zugangsdaten waren ungültig."; 
} ?>
<font color="red"> <? echo $Mitteilung ?></font>
 
<form action="register.php" method="post"> 
<label for="inhalt">Nickname</label><br> 
<input type="text" name="name" size="20"><br> 
<label for="inhalt">Kennwort</label><br> 
<input type="password" name="pwd" size="20"><br> 
<input type="submit" value="Fertig"> 
</div>
</form> 
</body>
</html>

Irgentwas mit <html> oder so

FG Niklas
 
Verstehst du deinen Code überhaupt?
Hier verbessert (und lern draus):

PHP:
<?php session_start (); 
if( $_GET["fehler"]=='benutzer_vorhanden') {
    $Mitteilung= "Der Benutzer ist schon vorhanden";
}
if( $_GET["fehler"]=='falsche_Angabe') {
    $Mitteilung= "Passwort muß zwischen 3 und 30 Zeichen lang sein, und darf nur Buchstaben enthalten";
}
?>
<html>
<head> 
<title>Login</title> 
<link rel="stylesheet" type="text/css" href="../style/teststyle.css" /> 
</head> 
<div id="wrapper">
<body> 
<?php 
if (isset ($_REQUEST["fehler"])) 
{ 
  echo "Die Zugangsdaten waren ungültig."; 
} 
?>
<font color="red"> <?php echo $Mitteilung ?></font>
 
<form action="register.php" method="post"> 
<label for="inhalt">Nickname</label><br> 
<input type="text" name="name" size="20"><br> 
<label for="inhalt">Kennwort</label><br> 
<input type="password" name="pwd" size="20"><br> 
<input type="submit" value="Fertig"> 
</div>
</form> 
</body>
</html>
 
Hallo,

Code:
if (isset ($_REQUEST["fehler"])) 
{ 
  echo "Die Zugangsdaten waren ungültig."; 
} 
?>

Würde den Text gerne Rot hab das mal so gesehen

Code:
if (isset ($_REQUEST["fehler"])) 
{ 
  echo color: red; "Die Zugangsdaten waren ungültig."; 
} 
?>

Geht aber nicht muss man das dan mit Css machen ?

FG Niklas
 
Hallo,

Code:
if (isset ($_REQUEST["fehler"])) 
{ 
  echo "Die Zugangsdaten waren ungültig."; 
} 
?>
Würde den Text gerne Rot hab das mal so gesehen

Code:
if (isset ($_REQUEST["fehler"])) 
{ 
  echo color: red; "Die Zugangsdaten waren ungültig."; 
} 
?>
Geht aber nicht muss man das dan mit Css machen ?

FG Niklas

Ja das macht man mit Css:
entweder so:
PHP:
echo "<p style=\"color:#0000ff\">Die Zugangsdaten waren ungültig</p>";
oder so:
Code:
echo "<p>Die Zugangsdaten waren ungültig</p>";

------------
Das kommt in die Css Datei:

p {
color:#0000FF;
}
 
Danke xXxPeterPanxXx,

Wozu sind eig diese Zahlen und Buchstabenbilder da ?

Dazu das keine Roboter ständig neue Mitglieder regestrieren oder ?

Und ist sowas eig schwer zu erstellen ?
 
Hallo,

Code:
$zahl1 = rand(10,20); 12
$zahl2 = rand(1,10);  7
Bei Zahl 2 wird ein Fehler angezeigt !

Erledigt

FG Niklas
 
Zuletzt bearbeitet:
Hallo Niklas.

Willst du wirklich auf den Captcha Zug aufspringen.
Tut mir leid aber Captchas sind der größte Schwachsinn seit es Homepages gibt.
Google mal nach Captcha Alternativen, dort findest du sinnvolle Methoden dich vor Spam zu schützen, wobei dein Login System für Spambots sowieso uninteressant ist.

Ich habe mal einen Test gemacht und ein Login Formular und ein Kontaktformular ins Internet gestellt. Nach wenigen Tagen schon wurde das Kontaktformular zugespammt, das Login Formular steht schon seit fast einem Jahr Online und noch kein einziger Spameintrag.
Glaub mir die Spambots können das sehr genau unterscheiden.

Gegen menschliche Spammer gibt es sowieso keinen Schutz.

Gruss
Elroy
 
Hallo Niklas.

Willst du wirklich auf den Captcha Zug aufspringen.
Tut mir leid aber Captchas sind der größte Schwachsinn seit es Homepages gibt.
Google mal nach Captcha Alternativen, dort findest du sinnvolle Methoden dich vor Spam zu schützen, wobei dein Login System für Spambots sowieso uninteressant ist.

Ich habe mal einen Test gemacht und ein Login Formular und ein Kontaktformular ins Internet gestellt. Nach wenigen Tagen schon wurde das Kontaktformular zugespammt, das Login Formular steht schon seit fast einem Jahr Online und noch kein einziger Spameintrag.
Glaub mir die Spambots können das sehr genau unterscheiden.

Gegen menschliche Spammer gibt es sowieso keinen Schutz.

Gruss
Elroy

Hallo Elroy,

Finde langsam auch das ist nicht so gut überall werden Fehler angezeigt u.s.w ! Kann ein Roboter die ganze Zeit Benutzer erstellen? Weil ich kenne kein Login sytem ohne diese Abfrage.

FG Niklas
 
Hallo.

Ein Roboter könnte das tun wenn er dafür programiert wird.
Aber die Frage ist ja warum sollte er das tun. Die Spammer wollen Geld verdienen. Niemand verdient Geld wenn er sich 100 mal bei dir anmeldet.

Probiers mal aus.
Und wenn sich doch mal einer bei dir anmeldet kannst du ihn von Hand rausschmeisen.

Also ich kenne viele Login Systeme ohne diese Abfrage. Dort wird zum Beispiel eine e-mail an deine Adresse geschickt mit einem Bestätigungs-Link. Logt man sich über diesen Link nicht binnen 24 Stunden ein wird man automatisch gelöscht.

Das war jetzt nur ein Beispiel und heisst nicht das du das so umsetzen sollst.

Gruss
Elroy
 
Hallo Elroy,

Vllt Programieren sie diese Benutzer einfach um zu Argern ! Gibt ja son paar Vollidioten.

aber ok,werds erstmal ohne Probieren!

FG Niklas
 
Zurück
Oben