php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 02-11-2006, 16:35
Lion.BeN
 Banned
Links : Onlinestatus : Lion.BeN ist offline
Registriert seit: Aug 2006
Beiträge: 27
Lion.BeN ist zur Zeit noch ein unbeschriebenes Blatt
Lion.BeN eine Nachricht über ICQ schicken
Standard Registrierscript - Deutlich erklären

Hallo,

ich hab mit ein Registrierscript gebastelt nur leider funktioniert das nicht ganz so wie es eigentlich sollte. Eigentlich funktioniert garnicht :/. Ich hab erstmal das grundgerüst gemacht so wie ich denke das es geht und funktionieren sollte. Ich will derweil noch keine Sicherheits und Verbesserungsvorschläge sondern erstmal das es so geht und man sich registrieren kann. Alles andere mach ich später.

Da ich mich aber noch relativ als Anfänger einschätze möchte ich das ihr mir das bitte leicht verständlich erklärt, weil ich kenne das von anderen Foren wo dann die PHP Profis kommen mit irgendwelchen Fachwörtern nur um den anderen zu zeigen wie toll se nicht sind in der Sprache PHP. Naja hoffe mir können ein paar helfen (Gute Erklärung brauch man halt sonst nützt es alles nix )

Hier die index.php:

PHP-Code:
<HTML>
<form method="post" action="<?php $_SERVER['PHP_SELF'?>" style="display:inline;">
<table width="99%" border="0" align="center" cellpadding="1" cellspacing="1">
<tr>
<td width="21%" bgcolor="#FFFFFF" class="table">Username:</td>
<td width="79%" bgcolor="#FFFFFF">
<input name="username" type="text" class="formLogin" style="width: 100%" id="username">
</td>
</tr>
<tr>
<td bgcolor="#FFFFFF" class="table">E-Mail:</td>
<td bgcolor="#FFFFFF">
<input name="email" type="text" class="formLogin" id="email" style="width: 100%">
</td>
</tr>
<tr>
<td bgcolor="#FFFFFF" class="table">Password:</td>
<td bgcolor="#FFFFFF">
<input name="password" type="password" class="formLogin" id="password" style="width: 100%" value="">
</td>
</tr>
<tr>
<td bgcolor="#FFFFFF" class="table">Confirm password: </td>
<td bgcolor="#FFFFFF">
<input name="confirm" type="password" class="formLogin" id="confirm" style="width: 100%">
</td>
</tr>
<tr>
<td colspan="2" bgcolor="#FFFFFF">
<input name="register" type="submit" class="formSubmitLogin" id="register" 
style="width: 100%" value="Submit">
</td>
</tr>
</table></form>

<?php
    
if($_POST['register']) {

    
$username=$_POST['username'];
    
$email=$_POST['email'];
    
$password=$_POST['password'];
    
$confirm=$_POST['confirm'];
    
    
    if(
$username=""
die (
"Please enter an username.");
    if(
$email=""
die (
"Please enter an email address.");
    if(
$password=""
die (
"You have to enter a password.");
    if(
$confirm=""
die (
"You have to confirm you password.");
    if(
$confirm != $password
die (
"Your confirmed password does not match with you password.");
    
    
$pass=md5($confirm);
    
    
mysql_query("INSERT INTO `users` VALUES (username='$username',email='$email',password='$pass')");
    
    
redirect('../register/''Your registration has been sucessfull');
}
else {
    
redirect("../register/""Sorry but there are some errors. Please contact our webmaster.");
}
?>
So danke schon mal im vorraus

//edit: Sorry habs zuspät gelesen das mit dem Zeilenumbruch bei HTML Codes :X

Geändert von Lion.BeN (02-11-2006 um 20:00 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 02-11-2006, 16:38
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard Re: Registrierscript - Deutlich erklären

Regeln lesen, Code umbrechen.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #3 (permalink)  
Alt 02-11-2006, 16:48
kuddeldaddeldu
 Registrierter Benutzer
Links : Onlinestatus : kuddeldaddeldu ist offline
Registriert seit: Sep 2006
Beiträge: 437
kuddeldaddeldu ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hi,

Du solltest uns auch noch erzählen, was denn nicht funktioniert. Was soll passieren, was passiert stattdessen?
Und die Regeln auch noch mal bzgl. Fehlerausgabe lesen.
Auf den ersten Blick: Die Syntax Deines SQL-Statements ist falsch. Wie es richtig aussehen muss, findest Du hier.
Auch sonst ein schönes Tutorial für Anfänger.

LG
EDIT:
Ausserdem vermisse ich auch einen Verbindungsaufbau zur Datenbank. Findest Du auch im Tutorial.

Geändert von kuddeldaddeldu (02-11-2006 um 16:51 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 02-11-2006, 17:18
Lion.BeN
 Banned
Links : Onlinestatus : Lion.BeN ist offline
Registriert seit: Aug 2006
Beiträge: 27
Lion.BeN ist zur Zeit noch ein unbeschriebenes Blatt
Lion.BeN eine Nachricht über ICQ schicken
Standard

Also das Script soll bei richtiger Ausführung den User in der Datenbank adden und Fehler anzeigen, wenn kein Username, keine E-Mail Adresse, kein Passwort oder das wiederholte Passwort nicht eingegeben wurde, bzw. das wiederholte Passwort nicht mit dem Passwort übereinstimmt.


Ich hab vorher ein Include in der Datei wo du functions.php included wird, in der error_reporting(E_ALL); steht.

Das Script hat bisher nichts gemacht. Also wenn ich auf Registrieren klick dann gibt er mir weder ne Fehlermeldung noch fügt er den User in die Datenbank hinzu.

Des Weiteren bekomme ich ein Fatal Error der so heißt:

Fatal error: Call to undefined function redirect() in D:\Program Files\xampp\htdocs\lion\register\index.php on line 121


EDIT// Ok nun hab ich den MYSQL Fehler behoben und er fügt den User in die Datenbank nur leider macht er da irgendwas falsch :X. Er fügt den Usernamen und die E-Mail nicht ein und das Passwort ist völlig falsch.

Achja ich hab vergessen zu erwähnen das der User nach erfolgreichem registrieren weitergeleitet werden soll auf die Page mit der Nachricht die oben im Quelltext steht.

Geändert von Lion.BeN (02-11-2006 um 17:24 Uhr)
Mit Zitat antworten
  #5 (permalink)  
Alt 02-11-2006, 19:58
Lion.BeN
 Banned
Links : Onlinestatus : Lion.BeN ist offline
Registriert seit: Aug 2006
Beiträge: 27
Lion.BeN ist zur Zeit noch ein unbeschriebenes Blatt
Lion.BeN eine Nachricht über ICQ schicken
Standard

Hat keiner eine Idee oder wird mein Post grad ignoriert wegen der Bild Verzerrung?
Mit Zitat antworten
  #6 (permalink)  
Alt 02-11-2006, 20:19
Malaga
 Newbie
Links : Onlinestatus : Malaga ist offline
Registriert seit: May 2003
Beiträge: 78
Malaga ist zur Zeit noch ein unbeschriebenes Blatt
Standard

PHP-Code:

if(isset($_POST['register'])) {

    
$username=$_POST['username'];
    
$email=$_POST['email'];
    
$password=$_POST['password'];
    
$confirm=$_POST['confirm'];
    
    
    if(
$username="") die ("Please enter an username.");
    if(
$email="") die ("Please enter an email address.");
    if(
$password="") die ("You have to enter a password.");
    if(
$confirm="") die ("You have to confirm you password.");
    if(
$confirm != $password) die ("Your confirmed password does not match with you password.");
    
    
$pass=md5($confirm);
    
    
mysql_connect(...) or die (...);
    
mysql_select_db(...) or die (...);
    
    
mysql_query("INSERT INTO users (username, email, password) 
VALUES ('"
.$username."','".$email."','".$password."')");
    
    
header('location: ....');
}
else {
    
header('location: ....');

so könnte es aussehen. die ... musste selber ergänzen.
bei header('location') muss http am anfang stehen.
gruss

Geändert von Malaga (02-11-2006 um 20:34 Uhr)
Mit Zitat antworten
  #7 (permalink)  
Alt 02-11-2006, 22:56
Hirnhamster
 Registrierter Benutzer
Links : Onlinestatus : Hirnhamster ist offline
Registriert seit: Oct 2006
Beiträge: 160
Hirnhamster ist zur Zeit noch ein unbeschriebenes Blatt
Standard

PHP-Code:
  if($username=""
// brav, wenn du username einen leeren string erfolgreich zuweist, dann stirb bitte ôÔ
die ("Please enter an username.");
    if(
$email=""
die (
"Please enter an email address.");
    if(
$password=""
die (
"You have to enter a password.");
    if(
$confirm=""
die (
"You have to confirm you password.");
    if(
$confirm != $password
die (
"Your confirmed password does not match with you password.");
    
    
$pass=md5($confirm); 
lass mich raten, du gibts 'abc' als PW ein un am ende stehen dort 32 zeichen die mit 'abc' gaaaaar nix zu tun haben ?
Mit Zitat antworten
  #8 (permalink)  
Alt 02-11-2006, 23:04
Lion.BeN
 Banned
Links : Onlinestatus : Lion.BeN ist offline
Registriert seit: Aug 2006
Beiträge: 27
Lion.BeN ist zur Zeit noch ein unbeschriebenes Blatt
Lion.BeN eine Nachricht über ICQ schicken
Standard

nein keine angst ich weis das die md5 verschlüsselt sidn und nun funzt alles. ok ich hab in einem anderen forum nen anderen tipp bekommen. also bisher funzt nun alles und der Code sieht vollgendermaßen aus:

PHP-Code:
<?php
    
if(isset($_POST['register'])) {

    
$username=$_POST['username'];
    
$email=$_POST['email'];
    
$password=$_POST['password'];
    
$confirm=$_POST['confirm'];
    
$id=$_POST['id'];
    
    
    if(
$username=="") die ("Please enter an username.");
    if(
$email=="") die ("Please enter an email address.");
    if(
$password=="") die ("You have to enter a password.");
    if(
$confirm=="") die ("You have to confirm you password.");
    if(
$confirm != $password) die ("Your confirmed password does not match with you password.");
    
    
$pass=md5($confirm);
    
    
mysql_query("INSERT INTO `users` (id,username,email,password) VALUES ('$id','$username','$email','$pass')") or die("Fehler: ".mysql_error());
    
    
printf("<script language =\"JavaScript\">document.location.href =\"../register/\";</script>");
}
else {
    
printf("<script language =\"JavaScript\">document.location.href =\"../register/\";</script>");
}
?>
Leider weiß ich nicht genau was der unterschied zwischen printf und print ist und was printf bringt. Naja desweiteren soll bei erfolgreichem registrieren der user auf die register seite (../register/) weitergeleitet werden und dort eine Nachricht wie "Successfully registered" bekommen wie kann ich das dort realisieren?

und die errors werden bei mir UNTER dem design angezeigt sollen aber in dem content bereich stehen wie kann ich das verwirklichen?
Mit Zitat antworten
  #9 (permalink)  
Alt 02-11-2006, 23:51
3DMax
 PHP Senior
Links : Onlinestatus : 3DMax ist offline
Registriert seit: Jan 2004
Beiträge: 1.916
3DMax ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Lion.BeN Leider weiß ich nicht genau was der unterschied zwischen printf und print ist und was printf bringt.
rtfm: www.php.net

Zitat:
und die errors werden bei mir UNTER dem design angezeigt sollen aber in dem content bereich stehen wie kann ich das verwirklichen?
indem du die fehlermeldungen dort ausgibst, wo sie benötigt werden.
dazu würde es sich anbieten, das formular vor der html-ausgabe zu prüfen. und entsprechende fehlervariablen zu füllen. ist alles ok - weiterleitung mit php (header() mit der url und als get-parameter der username) nicht mit js.
wenn nicht ok - formular mit den generierten fehlermeldungen anzeigen.

Zitat:
Naja desweiteren soll bei erfolgreichem registrieren der user auf die register seite (../register/) weitergeleitet werden und dort eine Nachricht wie "Successfully registered" bekommen wie kann ich das dort realisieren?
so, wenn du weitergeleitet hast, steht dir der username als get-parameter zur verfügung - einfach die db auslesen und echo 'Successfully registered' ausgeben.
das sollte immer erfolgreich sein, da du sinnvollerweise vor der weiterleitung überprüft hast, ob der neue account aufgrund der formulardaten erstellt werden konnte.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:48 Uhr.