| (Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI... |
Diskussion: Eingabe Prüfung bei einer Registrierung im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Ich arbeite momentan an nem Registrierungs-script und wollt' jetzt zum Schluss noch einmal das script durchgehen , um es ...
![]() |
| | #1 (permalink) |
| Guest Likes: | Anzeige Ich arbeite momentan an nem Registrierungs-script und wollt' jetzt zum Schluss noch einmal das script durchgehen , um es auf evt. Fehler zu Prüfen. Dabei ist mir aufgefallen , dass ich garkeine abfrage eingebaut habe , die überprüft ob der Name und die E-Mail addy bereits vorhanden sind. natürlich würde ein Fehler von der MySQL Dantenbank angezeigt werden weil ich beide Tabellen-Felder als Unique gekennzeichnet habe , aber es würde doch ziemlich schlecht aussehen , wenn da ein MySQL Fehler ausgegeben wird. Also wie kann ich dieses Problem mit PHP Lösen , sodass eine Mitteilung angezeigt wird , dass der jeweilige Benuztername bzw. die E-mail addy existiert?? Bis jetzt sieht das script so aus: Code:
<?php
error_reporting(E_ALL);
include "config.php"; //config variabeln einbinden
mysql_connect("$db_host","$db_user","$db_pass") or DIE ("Keine Verbindung zur Datenbank möglich");
mysql_select_db("$db_name") or DIE ("Die Datenbank existiert nicht");
$user = $_POST["UserName"];
$email = $_POST["UserMail"];
srand(microtime()*100000000);
$passwort = rand(154263,10848756);
// Absicherung, dass die Datei auch über das Formular aufgerufen wurde
if ($_POST['User'] ) {
// Eingabeprüfung
}
else {
echo "bitte überprüfe deine Angaben.";
exit();
}
if ($_POST["UserName"]== "")
{
echo "<center>Bitte gebe einen Benutzernamen ein.</center>";
exit();
}
if ($_POST["UserMail"]== "")
{
echo "<center>Bitte gebe eine E-Mail Adresse ein.</center>";
exit();
}
$eintrag = "INSERT INTO User (UserID, UserName, UserMail, UserPass) VALUES ('$user','$email','$passwort')";
$eintragen = mysql_query($eintrag) or DIE ("MySQL-Fehler: " . mysql_error());
mysql_close();
$betreff ='www.Master of Empires.de';
$nachricht ="Hallo,
deine Benutzerdaten sind folgende:';
$user
$passwort
'Vielen Dank für die Registrierung auf Master of Empires.dehttp://hackerboard.de/images/bbcode_php.gif
PHP CODE farbig hervorheben! Du kannst dich nun mit den oben genannten Daten einloggen. Das Passwort kannst du im Spiel ändern.";
$header = 'From: noreply@mittleresZeitalter.de' . "\r\n" .
'Reply-To: noreply@mittleresZeitalter.de' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($email, $betreff, $nachricht, $header);
header ("Location: Login.php")
?> |
|
| | #2 (permalink) |
| mach doch ne SQL Abfrage: Code: SELECT UserName, UserMail FROM User WHERE UserName=$user or UserMail=$passwort ( PHP-Code: Du könntest es auch unelegant machen und anstatt PHP-Code: PHP-Code: P.S. Lösch mal dein Passwort bitte aus deinemSkript | |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Guest Likes: | also so... Code: <?php
error_reporting(E_ALL);
include "config.php"; //config variabeln einbinden
mysql_connect("$db_host","$db_user","$db_pass") or DIE ("Keine Verbindung zur Datenbank möglich");
mysql_select_db("$db_name") or DIE ("Die Datenbank existiert nicht");
$user = $_POST["UserName"];
$email = $_POST["UserMail"];
srand(microtime()*100000000);
$passwort = rand(154263,10848756);
// Absicherung, dass die Datei auch über das Formular aufgerufen wurde
if ($_POST['User'] ) {
// Eingabeprüfung
}
else {
echo "bitte überprüfe deine Angaben.";
exit();
}
if ($_POST["UserName"]== "")
{
echo "<center>Bitte gebe einen Benutzernamen ein.</center>";
exit();
}
if ($_POST["UserMail"]== "")
{
echo "<center>Bitte gebe eine E-Mail Adresse ein.</center>";
$sqlresult= "Select UserName, UserMail FROM User WHERE UserName=$user or UserMail=$email";
if ($row==mysql_fetch_assoc($sqlresult))
{
echo "Username und/oder E-Mail Adresse exestiert/exestieren bereits.</n><br />";
echo "Bitte ändere deine Angaben";
}
}
else
{
$eintrag = "INSERT INTO User (UserID, UserName, UserMail, UserPass) VALUES ('$user','$email','$passwort')";
$eintragen = mysql_query($eintrag) or DIE ("MySQL-Fehler: " . mysql_error());
}
exit()
mysql_close();
$betreff ='www.Master of Empires.de';
$nachricht ="Hallo,
deine Benutzerdaten sind folgende:';
$user
$passwort
'Vielen Dank für die Registrierung auf Master of Empires.dehttp://hackerboard.de/images/bbcode_php.gif
PHP CODE farbig hervorheben! Du kannst dich nun mit den oben genannten Daten einloggen. Das Passwort kannst du im Spiel ändern.";
$header = 'From: rider_on_the_storm@hotmail.de' . "\r\n" .
'Reply-To: rider_on_the_storm@hotmail.de' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($email, $betreff, $nachricht, $header);
header ("Location: Login.php")
?> |
|
| | #4 (permalink) |
| PHP-Code: Fatal Error find ich net wirklich hab aber net so genau gesucht, nur überflogen. Aber ich denke da hats nen "logischen" Fehler und zwar mit den if Abfragen. ich würds so machen: PHP-Code: P.S: Zum HTML Part ich meine man benutzt nicht mehr so richtig <center> sondern macht es mit <div align="center">Text</div> | |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Eingabe In Einer .txt datei abspeichern?! | Virus | (Web-) Design und webbasierte Sprachen | 10 | 06.07.07 20:19 |
| FI Prüfung 2007 | Oi!Alex | HaBo Lounge | 4 | 07.05.07 15:30 |
| Mündliche Prüfung | BloodEye | HaBo Lounge | 6 | 08.03.06 14:22 |
| Prüfung 13.05 Informatikkauffmann | Nicky20wx | Off topic-Zone | 1 | 28.05.03 15:15 |