Logo - MyWebsolution.de
User gesamt  :  2311184
User online  :  3
KubaSeoTräume, PHP Forum, PHP Community and more ... MyWebsolution.de!
   
   
 
Registrieren Login User F.A.Q Suche Home

eingeloggt bleiben

MyWebsolution.de Foren » Workshops » Loginscript: PHP+Layout

Seite: 1 Posts pro Seite: 5 10 20
Autor Thread
07.09.2008 19:07 Uhr Loginscript: PHP+Layout
Kratos
User
 
registriert 07.09.2008
wohnt in
Beiträge 4
Hi Flitze! Bin gerade dabei PHP zu lernen und dabei auf deine Seite gestossen- echt spitze! Habe sofort mit dem Loginscript begonnen. Habe es aber etwas geändert, damit ich auch weng arbeiten muss und nicht alles kopiere. Nun habe ich aber ein kleines Problem. Und zwar muss ich den folgenden Code ganz oben einbringen?PHP:
 <div id="apDiv2"> 
    <form id="apDiv2" name="apDiv2" method="post" action="<?php $_SERVER['PHP_SELF'?>

Mein restlicher Code sieht wie folgt aus.PHP:
<style type="text/css">
<!--
#apDiv1 {
    position:absolute;
    left:228px;
    top:121px;
    width:407px;
    height:223px;
    z-index:1;
}
#apDiv2 {
    position:absolute;
    left:214px;
    top:273px;
    width:583px;
    height:80px;
    z-index:1;
}
.Stil1 {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: bold;
}
#apDiv3 {
    position:absolute;
    left:15px;
    top:171px;
    width:117px;
    height:140px;
    z-index:2;
}
#apDiv4 {
    position:absolute;
    left:15px;
    top:369px;
    width:162px;
    height:143px;
    z-index:3;
}
-->
</style>
<?php 
    error_reporting
(E_ALL); 
    
$MYSQL_HOST 'localhost'
    
$MYSQL_USER 'tztrztr'
    
$MYSQL_PASS 'uttzutz'
    
$MYSQL_DATA 'hguztu'

    
$connid = @mysql_connect($MYSQL_HOST$MYSQL_USER$MYSQL_PASS) OR die("Error: ".mysql_error()); 
    
mysql_select_db($MYSQL_DATA) OR die("Error: ".mysql_error()); 

    
session_start(); 

    if(isset(
$_POST['submit']) AND $_POST['submit']=='Abschicken'){ 
        
// Fehlerarray anlegen 
        
$errors = array(); 
        
// Prüfen, ob alle Formularfelder vorhanden sind 
        
if(!isset($_POST['Vorname'], 
                  
$_POST['Nachname'], 
                  
$_POST['Mitgliedsname'], 
                  
$_POST['Passwort'], 
                  
$_POST['Email'], 
                  
$_POST['Geburtstag'], 
                  
$_POST['Wohnort'])) 
                   
            
// Ein Element im Fehlerarray hinzufügen 
            
$errors "Bitte benutzen Sie das Formular aus dem Registrierungsbereich"
        else{ 
            
// Prüfung der einzelnen obligatorischen Felder 
            // Alle Nicknames und Emailadressen zum Vergleich aus der Datenbank holen 
            
$mitgliedsname = array(); 
            
$emails = array(); 
            
$sql "SELECT 
                             Mitgliedsname, 
                             Email 
                     FROM 
                             user 
                    "

            
$result mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error()); 
            while(
$row mysql_fetch_assoc($result)){ 
                     
$mitgliedsname[] = $row['Mitgliedsname']; 
                     
$emails[] = $row['Email']; 
            } 
            
// Prüft, ob ein Nickname eingegeben wurde 
            
if(trim($_POST['Mitgliedsname'])==''
                
$errors[]= "Bitte geben Sie einen Mitgliedsname ein."
            
// Prüft, ob der Nickname mindestens 3 Zeichen enthält 
            
elseif(strlen(trim($_POST['Mitgliedsname'])) < 3
                
$errors[]= "Ihr Name muss mindestens 3 Zeichen lang sein."
            
// Prüft, ob der Nickname nur gültige Zeichen enthält 
            
elseif(!preg_match('/^\w+$/'trim($_POST['Mitgliedsname']))) 
                
$errors[]= "Benutzen Sie bitte nur alphanumerische Zeichen (Zahlen, Buchstaben und den Unterstrich)."
            
// Prüft, ob der Nickname bereits vergeben ist 
            
elseif(in_array(trim($_POST['Mitgliedsname']), $nicknames)) 
                
$errors[]= "Dieser Mitgliedsname ist bereits vergeben."
            
// Prüft, ob eine Email-Adresse eingegeben wurde 
            
if(trim($_POST['Email'])==''
                
$errors[]= "Bitte geben Sie Ihre Email-Adresse ein."
            
// Prüft, ob die Email-Adresse gültig ist 
            
elseif(!preg_match('§^[\w\.-]+@[\w\.-]+\.[\w]{2,4}$§'trim($_POST['Email']))) 
                
$errors[]= "Ihre Email Adresse hat eine falsche Syntax."
            
// Prüft, ob die Email-Adresse bereits vergeben ist 
            
elseif(in_array(trim($_POST['Email']), $emails)) 
                
$errors[]= "Diese Email-Adresse ist bereits vergeben."
            
// Prüft, ob ein Passwort eingegeben wurde 
            
if(trim($_POST['Passwort'])==''
                
$errors[]= "Bitte geben Sie Ihr Passwort ein."
            
// Prüft, ob das Passwort mindestens 6 Zeichen enthält 
            
elseif (strlen(trim($_POST['Passwort'])) < 6
                
$errors[]= "Ihr Passwort muss mindestens 6 Zeichen lang sein."
            
// Prüft, ob eine Passwortwiederholung eingegeben wurde 
            
if(trim($_POST['Passwortwiederholung'])==''
                
$errors[]= "Bitte wiederholen Sie Ihr Passwort."
            
// Prüft, ob das Passwort und die Passwortwiederholung übereinstimmen 
            
elseif (trim($_POST['Passwort']) != trim($_POST['Passwortwiederholung'])) 
                
$errors[]= "Ihre Passwortwiederholung war nicht korrekt.";
            if(
trim($_POST['Vorname'])==''
                
$errors[]= "Bitte geben Sie Ihren Vornamen ein.";
            if(
trim($_POST['Nachname'])==''
                
$errors[]= "Bitte geben Sie Ihren Nachnamen ein.";
            if(
trim($_POST['Geburtstag'])==''
                
$errors[]= "Bitte geben Sie Ihren Geburtstag ein.";
            if(
trim($_POST['Wohnort'])==''
                
$errors[]= "Bitte geben Sie Ihren Wohnort ein.";
        } 
        
// Prüft, ob Fehler aufgetreten sind 
        
if(count($errors)){ 
             echo 
"Ihr Account konnte nicht erstellt werden.<br>\n"
                  
"<br>\n"
             foreach(
$errors as $error
                 echo 
$error."<br>\n"
             echo 
"<br>\n"
                  
"Zurück zum <a href=\"".$_SERVER['PHP_SELF']."\">Registrierungsformular</a>\n"
        } 
        else{ 
            
// Daten in die Datenbanktabelle einfügen 
            
$sql "INSERT INTO 
                           User 
                            (Vorname, 
                             Nachname, 
                             Mitgliedsname, 
                             Passwort,
                 Email,
                 Wohnort,
                 Geburtstag;
                             Registrierungsdatum, 
                             Wohnort 
                             ) 
                    VALUES 
                            ('"
.mysql_real_escape_string(trim($_POST['Vorname']))."', 
                             '"
.mysql_real_escape_string(trim($_POST['Nachname']))."',
                              '"
.mysql_real_escape_string(trim($_POST['Mitgliedsname']))."',
                              '"
.mysql_real_escape_string(trim($_POST['Email']))."',
                             '"
.md5(trim($_POST['Passwort']))."', 
                             CURDATE(), 
                             '"
.mysql_real_escape_string(trim($_POST['Wohnort']))."', 
                              ) 
                   "

            
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error()); 
            echo 
"Vielen Dank!\n<br>"
                 
"Ihr Accout wurde erfolgreich erstellt.\n<br>"
                 
"Sie können sich nun mit Ihren Daten einloggen.\n<br>"
                 
"<a href=\"login.php\">Zum Login</a>\n"
        } 
    } 
?>
    <div id="apDiv2">
      <table width="98%" height="100%" border="0" align="center" cellpadding="0" cellspacing="0" id="formular_reg">
        <tr>
          <td width="36%" height="9%" align="left" valign="middle" class="Stil1">Vorname</td>
          <td width="1%" align="right" valign="middle" class="Stil1">:</td>
          <td colspan="3" align="center" valign="middle" class="inhalt"><div align="left">
            <input name="Vorname" type="text" id="Vorname" size="50" maxlength="30" />
          </div></td>
          <td width="2%" align="left" valign="middle" class="inhalt">&nbsp;</td>
          <td width="1%" class="inhalt"></td>
        </tr>
        <tr>
          <td height="9%" align="left" valign="middle" class="Stil1">Nachname</td>
          <td align="right" valign="middle" class="Stil1">:</td>
          <td colspan="3" align="center" valign="middle" class="inhalt"><div align="left">
            <input name="Nachname" type="text" id="Nachname" size="50" maxlength="30" />
          </div></td>
          <td class="inhalt">&nbsp;</td>
          <td class="inhalt">&nbsp;</td>
        </tr>
        <tr>
          <td height="9%" align="left" valign="middle" class="Stil1">Mitgliedsname</td>
          <td align="right" valign="middle" class="Stil1">:</td>
          <td colspan="3" align="center" valign="middle" class="inhalt"><div align="left">
            <input name="Mitgliedsname" type="text" id="Mitgliedsname" size="50" maxlength="30" />
          </div></td>
          <td class="inhalt">&nbsp;</td>
          <td class="inhalt">&nbsp;</td>
        </tr>
        <tr>
          <td height="9%" align="left" valign="middle" class="Stil1">Passwort</td>
          <td align="right" valign="middle" class="Stil1">:</td>
          <td colspan="3" align="center" valign="middle" class="inhalt"><form id="form1" name="form1" method="post" action="">
            <div align="left">
              <input name="Passwort" type="password" id="Passwort" size="50" maxlength="32" />
              </div>
          </form>          
          </td>
          <td class="inhalt">&nbsp;</td>
          <td class="inhalt">&nbsp;</td>
        </tr>
        <tr>
          <td height="12%" align="left" valign="middle" class="Stil1">Passwortwiederholung</td>
          <td align="right" valign="middle" class="Stil1">:</td>
          <td colspan="3" align="center" valign="middle" class="inhalt"><div align="left">
            <input name="Passwortwiederholung" type="password" id="Passwortwiederholung" size="50" maxlength="32" />
          </div></td>
          <td class="inhalt">&nbsp;</td>
          <td class="inhalt">&nbsp;</td>
        </tr>
        <tr>
          <td height="9%" align="left" valign="middle" class="Stil1">Email</td>
          <td align="right" valign="middle" class="Stil1">:</td>
          <td colspan="3" align="center" valign="middle" class="inhalt"><input name="Email" type="text" id="Email" size="50" maxlength="70" /></td>
          <td class="inhalt">&nbsp;</td>
          <td class="inhalt">&nbsp;</td>
        </tr>
        <tr>
          <td height="9%" align="left" valign="middle" class="Stil1">Geburtstag</td>
          <td align="right" valign="middle" class="Stil1">:</td>
          <td colspan="3" align="center" valign="middle" class="inhalt"><form id="form2" name="form2" method="post" action="">
            <div align="left">
              <select name="Tag" id="Tag">
                <option>Tag</option>
                <option>1</option>
                <option>2</option>
                <option>3</option>
                <option>4</option>
              </select>
              <select name="Monat" id="Monat">
                <option selected="selected">Monat</option>
                <option>Januar</option>
                <option>Februar</option>
              </select>
              <select name="Jahr" id="Jahr">
                <option selected="selected">Jahr</option>
                <option>2008</option>
                <option>2007</option>
                <option>2006</option>
              </select>
            </div>
          </form>          </td>
          <td class="inhalt">&nbsp;</td>
          <td class="inhalt">&nbsp;</td>
        </tr>
        <tr>
          <td height="14%" align="left" valign="middle" class="inhalt">&nbsp;</td>
          <td align="right" valign="middle" class="inhalt">:</td>
          <td colspan="3" align="center" valign="middle" class="inhalt">&nbsp;</td>
          <td class="inhalt">&nbsp;</td>
          <td class="inhalt">&nbsp;</td>
        </tr>
        <tr>
          <td height="5%" class="Stil1"><p>AGB</p>
          </td>
          <td align="right" valign="middle" class="Stil1">:</td>
          <td colspan="4" class="inhalt"><input type="checkbox" name="checkbox" value="1" />
Ich stimme den AGB zu</td>
<?php 
 
if(!isset($_POST['AGB']) OR $_POST['AGB']!= '1'
                
$errors[]= "Sie müssen die AGB akzeptieren.";   
?>
          <td class="inhalt">&nbsp;</td>
        </tr>
        <tr>
          <td height="3%" colspan="7" class="inhalt">.</td>
        </tr>
        <tr>
          <td height="42" colspan="7" class="inhalt">&nbsp;</td>
        </tr>
        <tr>
          <td height="2%" class="inhalt"><input type="submit" name="Submit" value="Abschicken" /></td>
          <td height="2%" class="inhalt">&nbsp;</td>
          <td width="14%" height="2%" class="inhalt">&nbsp;</td>
          <td width="1%" height="2%" class="inhalt">&nbsp;</td>
          <td width="45%" height="2%" class="inhalt">&nbsp;</td>
          <td height="2%" class="inhalt">&nbsp;</td>
          <td height="2%" class="inhalt">&nbsp;</td>
        </tr>
        <tr>
          <td height="8%" colspan="7" class="inhalt">&nbsp;</td>
        </tr>
      </table>
    </div>
    <div id="apDiv3">
      <p>Das ist ein Test.Halloooooooo</p>
      <p>oerterterttiouiozu</p>
      <p>piopiopi</p>
    </div>
    <div id="apDiv4">
      <p>iouiouzuiouoizozuioiuozuio</p>
      <p>ioppiopioupuiopiopioup</p>
      <p>poipiipiopiopiopiopipip</p>
    </div>
    </form>
    </div>
    

Muss ich etwas ändern? Und wie kann ich per PHP das Geburtstag abfragen?
Ich bedanke mich jetzt schon mal!
MFG Kratos

Dieser Beitrag wurde am 07.09.2008 um 19:31:53 Uhr von Kratos zum 2. Mal editiert.
Profil ansehen
09.09.2008 19:14 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
hallo Kratos,
es wäre ganz hilfreich, wenn du beschreiben würdest, was du für ein Problem hast ;)

Ich tippe einfach mal darauf, dass so etwas wie "cannot modify header information, headers already sent" kommt. Sollte das der Fall sein, dann liegt das daran, dass das
session_start();
IMMER am Anfang eines Scriptes stehen muss. Bzw. VOR jeder HTML Ausgabe.

Wenn das nicht der Fehler ist, sag bescheid ;)


Profil ansehen Mail senden
09.09.2008 22:05 Uhr
Kratos
User
 
registriert 07.09.2008
wohnt in
Beiträge 4
Tach! Meine Fragen stehen doch dort. 1. Wohin mit den den Quellcode ganz oben - wenn ich denn Quellcode in den restlichen Code geschrieben habe, ist mir immer mein Layout im A.... gegangen. 2. Die Fragen ganz unten: Ist soweit alles ok? Und wie frage ich per PHP den Geburtstag ab?
Profil ansehen
11.09.2008 19:45 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
Zitat:
1. Wohin mit den den Quellcode ganz oben

Welcher Quellcode?

PHP:

 <div id="apDiv2"> 
    <form id="apDiv2" name="apDiv2" method="post" action="<?php $_SERVER['PHP_SELF'?>


Dieser?

Zitat:
wenn ich denn Quellcode in den restlichen Code geschrieben habe, ist mir immer mein Layout im A.... gegangen.

Naja, was du mit deinem Layout machst kann ich nich wissen.. Aber ich schaue jetzt nich deinen Quellcode durch un suche nach falsch verschachtelten DIVs..

Zitat:
2. Die Fragen ganz unten: Ist soweit alles ok? Und wie frage ich per PHP den Geburtstag ab?


Abfragen im Sinne von "Wie kann ein User sein Geburtsdatum eingeben"?
PHP:
<?php
    $Monatsnamen 
= array(=> 'Januar',
                   
=> 'Februar',
                         
=> 'März',
                         
=> 'April',
                         
=> 'Mai',
                         
=> 'Juni',
                         
=> 'Juli',
                         
=> 'August',
                         
=> 'September',
                         
10 => 'Oktober',
                         
11 => 'November',
                         
12 => 'Dezember'
                   
);

    echo 
"       <select name=\"Tag\">\n";
    echo 
"       <option value=\"0\">Tag</option>\n";
    for(
$i=1;$i<=31;$i++){
        echo 
"<option value=\"".$i."\">".$i.".</option>\n";
    }
    echo 
"       </select>\n";
    echo 
"       <select name=\"Monat\">\n";
    echo 
"       <option value=\"0\">Monat</option>\n";
    for(
$i=1;$i<=12;$i++){
        echo 
"<option value=\"".$i."\">".$Monatsnamen[$i]."</option>\n";
    }
    echo 
"       </select>\n";
    echo 
"       <select name=\"Jahr\">\n";
    echo 
"       <option value=\"0\">Jahr</option>\n";
    for(
$i=2000;$i>=1900;$i--){
        echo 
"<option value=\"".$i."\">".$i."</option>\n";
    }
    echo 
"       </select>\n";
?>

Kontrolle der Eingaben kannst du mit checkdate() machen.


Profil ansehen Mail senden
Seite: 1 no reply
Powered by Pascal Landau © 2006 MyWebsolution.de
Designed by Pascal Landau © 2006 MyWebsolution.de
 
 
 
 
Home Email Impressum Disclaimer Statistik