kostenloser Webspace werbefrei: lima-city


Kann mal jemand diesen Code auf Fehler durchsuchen?

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    pcundsoftware

    Kostenloser Webspace von pcundsoftware, auf Homepage erstellen warten

    pcundsoftware hat kostenlosen Webspace.

    Hallo,

    ich habe jetzt wieder noch etwas an der neu.php herumgebastelt, nur sind da wahrscheinlich noch ein paar fehler drin. Was muss ich noch ändern?

    EDIT: er zeigt diesen Fehler an: Parse error: syntax error, unexpected $end in /home/webpages/lima-city/pcundsoftware/html/Login/neu.php on line 191


    <?php
    session_start();
    require("connect.inc.php");
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>Neuen Benutzer anlegen</title>
    <link rel="stylesheet" type="text/css" href="style.css">
    </head>
    
    
    <body>
    <?php
    $name = $_GET['name'];
    $email = $_GET['email'];
    $aktivierungscode = $_GET['aktivierungscode'];
    $hello = "yes";
    if ( $name != "" and $mail != "" and $aktivierungscode != "")
       {  $aendern = "UPDATE user Set best = '$hello'
      WHERE name, aktivierungscode, mail LIKE '$name', '$aktivierungscode', '$mail'";
      $update = mysql_query($aendern);
    ?>
    
    <?php if(!isset($_POST['submit'])) { ?>
    <form method="post">
    <table style="width: 100%">
    	<tr>
    		<td>Name:</td>
    		<td><input name="name" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>Vorname:</td>
    		<td><input name="vorname" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>Wohnort:</td>
    		<td><input name="wohnort" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>PLZ:</td>
    		<td><input name="PLZ" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>Straße und Hausnummer:</td>
    		<td><input name="strundhnr" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>Land:</td>
    		<td><input name="land" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>&nbsp;</td>
    		<td>&nbsp;</td>
    		</tr>
    	<tr>
    		<td>Benutzername:</td>
    		<td><input name="username" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>E-Mail Adresse:</td>
    		<td><input name="email" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>Passwort:</td>
    		<td><input name="password" type="password"></td>
    	</tr>
    	<tr>
    		<td>Passwort wiederholen:</td>
    		<td><input name="password2" type="password"></td>
    	</tr>
    	<tr>
    		<td>&nbsp;</td>
    		<td>&nbsp;</td>
    	</tr>
    	<tr>
    		<td>Bestätigen der Nutzungsbedingungen:</td>
    		<td><input name="nutzungsbedingungen" type="checkbox"></td>
    	</tr>
    	<tr>
    		<td>
    		<form method="post">
    			<input name="submit" type="submit" value="Anmelden"></form></td>
    		<td>&nbsp;</td>
    	</tr>
    </table>
    </form>
    
    
    <?php
    }elseif(!isset($_POST['username']) || $_POST['username'] == ""){
    echo '<p align="center">
    Einen Benutzernamen brauchen wir schon ;-)
    <br /><br /><a href="neu.php">Zur&#65533;ck</a></p>';
    }elseif(!isset($_POST['password']) || $_POST['password'] == "") {
    echo '<p align="center">
    Ein Passwort brauchen wir schon ;-)<br /><br /><a href="neu.php">Zur&#65533;ck</a></p>';
    }elseif($_POST['password'] != $_POST['password2']) {
    echo '<form action="neu.php" method="post">';
    echo '<p align="center">Die Passw&#65533;rter stimmen nicht &#65533;berein!<br /><br />';
    echo '<input type="hidden" name="username" value="'.$_POST['username'].'">';
    echo '<input type="submit" name="zurueck" value="Zur&#65533;ck"></p>';
    echo '</form>';
    }elseif(!isset($_POST['email']) || $_POST['email'] == ""){
    echo '<p align="center">
    Bitte geben Sie Ihre E-Mail Adresse an!
    <br /><br /><a href="neu.php">Zur&#65533;ck</a></p>';
    }elseif(!isset($_POST['name']) || $_POST['name'] == ""){
    echo '<p align="center">
    Bitte geben Sie Ihren Namen an! 
    <br /><br /><a href="neu.php">Zur&#65533;ck</a></p>';
    }elseif(!isset($_POST['vorname']) || $_POST['vorname'] == ""){
    echo '<p align="center">
    Bitte geben Sie Ihren Vornamen an!
    <br /><br /><a href="neu.php">Zur&#65533;ck</a></p>';
    }elseif(!isset($_POST['wohnort']) || $_POST['wohnort'] == ""){
    echo '<p align="center">
    Bitte geben Sie Ihren Wohnort an!
    <br /><br /><a href="neu.php">Zur&#65533;ck</a></p>';
    }elseif(!isset($_POST['PLZ']) || $_POST['PLZ'] == ""){
    echo '<p align="center">
    Bitte geben Sie Ihre PLZ an!
    <br /><br /><a href="neu.php">Zur&#65533;ck</a></p>';
    }elseif(!isset($_POST['strundhnr']) || $_POST['strundhnr'] == ""){
    echo '<p align="center">
    Bitte geben Sie Ihre Stra&#65533;e und Ihre Hausnummer an!
    <br /><br /><a href="neu.php">Zur&#65533;ck</a></p>';
    }elseif(!isset($_POST['land']) || $_POST['land'] == ""){
    echo '<p align="center">
    Bitte geben Sie Ihr Land an!
    <br /><br /><a href="neu.php">Zur&#65533;ck</a></p>';
    }elseif(!isset($_POST['nutzungsbedingungen']) || $_POST['nutzungsbedingungen'] == ""){
    echo '<p align="center">
    Sie m&#65533;ssen den Nutzungsbestimmungen zustimmen, damit Sie sich erfolgreich anmelden k&#65533;nnen!
    <br /><br /><a href="neu.php">Zur&#65533;ck</a></p>';
    
    
    }else{
    $query = @mysql_query("SELECT user FROM users WHERE user = '".$_POST['username']."'");
    $result = @mysql_fetch_array($query);
    if($_POST['username'] == $result['user']) {
    echo '<p align="center">Sorry, dieser Benutzername ist leider schon vergeben!<br /><br /><a href="neu.php">Zur&#65533;ck</a></p>';
    die;
    }else{
    $username = $_POST['username'];
    $pass = md5($_POST['password']);
    $email = $_POST['email'];
    $name = $_POST['name'];
    $vorname = $_POST['vorname'];
    $wohnort = $_POST['wohnort'];
    $plz = $_POST['PLZ'];
    $strundhausnr = $_POST['strundhnr'];
    $Land = $_POST['land'];
     srand(microtime()*1000000);
    $aktivierungscode = rand(1,1000);
    
    $query = "INSERT INTO users(user,pass,email,name,vorname,wohnort,plz,strundhnr,Land, aktivierungscode) VALUES('$username', '$pass', '$email' '$name', '$vorname', '$wohnort', '$PLZ', '$strundhnr', '$land', '$aktivierungscode',)";
    if(mysql_query($query)){
    echo '<p align="center">Der neue Benutzer wurde erfolgreich angelegt und ihnen wurde eine E-Mail mit einem Bestätigungslink gesendet!<br /><br /><a href="sichere_seite.php">Zur Admin-
    Seite</a></p>';
    
    $email = "Sehr geehrter Besucher der Seite http://www.pcundsoftware.de/,<br><br> Sie erhalten diese Nachricht, da Sie auf der oben genannten Seite registriert wurden. Sollten Sie dies nicht getan haben, so löschen Sie diese Mail einfach.<br>
    
     Um Ihre Registrierung zu bestätigen, klicken Sie bitte auf den folgenden Link: <br><br>
    
    
    <a href=\"http://www.pcundsoftware.de/Login/neu.php?name=$username&mail=$mail&aktivierungscode=$aktivierungscode\" target=\"_blank\">http://www.pcundsoftware.de/Login/neu.php?name=$username&mail=$mail&aktivierungscode=$aktivierungscode</a>
    <br><br>
    
    
    Besuchen Sie unsere Seite bald wieder. <br><br>
    Mit freundlichen Grüßen,<br><br>
    Das Team von PC und Software .de";
      $absender = "PcundSoftware.de";
      $amail = "webmaster@pcundsoftware.de";
      $extra = "From: $absender <$amail>\n";
      $extra .= "Content-Type: text/html\n
                 Content-Transfer-Encoding: 8bit\n";
      mail($mail, "Registrierung auf pcundsoftware.de - Bestätigung", $email, $extra);
    
    
    }else{
    echo '<p align="center">
    Beim Anlegen des neuen Benutzers trat leider ein Fehler auf!<br /><br /><a
    href="neu.php">Zur&#65533;ck</a></p>';
    }
    }
    }
    ?>
    </body>
    </html>


    Schöne Grüße,

    pcundsoftware

    Beitrag zuletzt geändert: 5.9.2009 11:50:52 von pcundsoftware
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Moin!

    "unexpected $end " klingt nach fehlender oder falsch gesetzter Klammer.

    FF
  4. der fehler ist um die zeile 19 herum
    if ( $name != "" and $mail != "" and $aktivierungscode != "")
       {  $aendern = "UPDATE user Set best = '$hello'
      WHERE name, aktivierungscode, mail LIKE '$name', '$aktivierungscode', '$mail'";

    die geschwungene klammer für dieses if wird nie mehr geschlossen.

    mfg
  5. maechte-der-elemente

    Kostenloser Webspace von maechte-der-elemente, auf Homepage erstellen warten

    maechte-der-elemente hat kostenlosen Webspace.

    <?php if(!isset($_POST['submit'])) { ?>
    <form method="post">
    <table style="width: 100%">
    	<tr>
    		<td>Name:</td>
    		<td><input name="name" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>Vorname:</td>
    		<td><input name="vorname" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>Wohnort:</td>
    		<td><input name="wohnort" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>PLZ:</td>
    		<td><input name="PLZ" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>Straße und Hausnummer:</td>
    		<td><input name="strundhnr" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>Land:</td>
    		<td><input name="land" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>&nbsp;</td>
    		<td>&nbsp;</td>
    		</tr>
    	<tr>
    		<td>Benutzername:</td>
    		<td><input name="username" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>E-Mail Adresse:</td>
    		<td><input name="email" size="20" type="text"></td>
    		</tr>
    	<tr>
    		<td>Passwort:</td>
    		<td><input name="password" type="password"></td>
    	</tr>
    	<tr>
    		<td>Passwort wiederholen:</td>
    		<td><input name="password2" type="password"></td>
    	</tr>
    	<tr>
    		<td>&nbsp;</td>
    		<td>&nbsp;</td>
    	</tr>
    	<tr>
    		<td>Bestätigen der Nutzungsbedingungen:</td>
    		<td><input name="nutzungsbedingungen" type="checkbox"></td>
    	</tr>
    	<tr>
    		<td>
    		<form method="post">
    			<input name="submit" type="submit" value="Anmelden"></form></td>
    		<td>&nbsp;</td>
    	</tr>
    </table>
    </form>
    
    
    <?php


    Auch hier ist die geschweifte Klammer nicht mehr geschlossen und warum ist da nochmal ein php-Öffnungs-tag (<?php) obwohl du php schon geöffnet hast?
  6. man kann innerhalb einer php datei den php-tag auch wieder schließen :D das hat er auch gemacht, und der bereich den du gepostet hast ist in zwei php-tags eingeschlossen, im oberen wird die if-abfrage definiert und die klammer geöffnet, im unteren wird die klammer geschlossen und die else-bedingung definiert.

    mfg
  7. Autor dieses Themas

    pcundsoftware

    Kostenloser Webspace von pcundsoftware, auf Homepage erstellen warten

    pcundsoftware hat kostenlosen Webspace.

    Gut,
    ich habe die Klammer hinter
    if ( $name != "" and $mail != "" and $aktivierungscode != "")
       {  $aendern = "UPDATE user Set best = '$hello'
      WHERE name, aktivierungscode, mail LIKE '$name', '$aktivierungscode', '$mail'";

    gesetzt. Jetzt erscheint zwar die seite, aber wenn man sich registrieren möchte, sagt er: "Beri der Registrierung trat leider ein Fehler auf. Was ist sonst noch falsch?

    EDIT: Oder hätte die Klammer wo anders hinmüssen?

    Wo kann den da der Fehler sein?

    Beitrag zuletzt geändert: 5.9.2009 17:42:03 von pcundsoftware
  8. Hast Du mal nen aktuellen Code, der ein wenig hübscher formatiert ist? Vielleicht ist irgendeine Klammer nicht ganz richtig, aber das erkennt man im Moment nicht wirklich ;)
  9. Autor dieses Themas

    pcundsoftware

    Kostenloser Webspace von pcundsoftware, auf Homepage erstellen warten

    pcundsoftware hat kostenlosen Webspace.

    Hier der neue Code. Irgendwo muss noch ein fehler seiin. Wenn du ihn findest bitte schreiben!

    <?php
    session_start ();
    require ("connect.inc.php");
    ?>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    
    <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
    <title>PcundSoftware.de - Registrierung</title>
    </head>
    
    <body>
    <?php
    $namebest = $_POST["username"];
    $mailbest = $_POST["email"];
    srand(microtime()*1000000);
    $aktivierungscodebest = rand(1,100000000);
    
    if (isset($_GET["active"]))
      {
      $aendern = "UPDATE (users) SET (best) = 'ja' WHERE [i]activierungscode[/i] LIKE $_GET['randval']";
     }
     echo "Vielen dank für die Aktivierung ihres Accounts. Der Benutzer ist nun verfügbar.);
      ?>
      
      
    <?php
      if (!isset($_POST['submit']))
      {
        ?>
    
        <form method="post">
          <table style="width: 100%">
            <tr>
              <td>Name:</td>
              <td><input name="name" size="20"
    type="text"></td>
            </tr>
    
            <tr>
              <td>Vorname:</td>
              <td><input name="vorname" size="20"
    type="text"></td>
            </tr>
    
            <tr>
              <td>Wohnort:</td>
              <td><input name="wohnort" size="20"
    type="text"></td>
            </tr>
    
            <tr>
              <td>PLZ:</td>
              <td><input name="PLZ" size="20"
    type="text"></td>
            </tr>
    
            <tr>
              <td>Stra&szlig;e und Hausnummer:</td>
              <td><input name="strundhnr" size="20"
    type="text"></td>
            </tr>
    
            <tr>
              <td>Land:</td>
              <td><input name="land" size="20"
    type="text"></td>
            </tr>
    
            <tr>
              <td> </td>
              <td> </td>
            </tr>
    
            <tr>
              <td>Benutzername:</td>
              <td><input name="username" size="20"
    type="text"></td>
            </tr>
    
            <tr>
              <td>E-Mail Adresse:</td>
              <td><input name="email" size="20"
    type="text"></td>
            </tr>
    
            <tr>
              <td>Passwort:</td>
              <td><input name="password"
    type="password"></td>
            </tr>
    
            <tr>
              <td>Passwort wiederholen:</td>
              <td><input name="password2"
    type="password"></td>
            </tr>
    
            <tr>
              <td> </td>
              <td> </td>
            </tr>
    
            <tr>
              <td>Best&auml;tigen der
    Nutzungsbedingungen:</td>
              <td><input name="nutzungsbedingungen"
    type="checkbox"></td>
            </tr>
    
            <tr>
            <td>
    		<form method="post">
    			<input name="submit" type="submit" value="Anmelden"></form></td>
              <td>&nbsp;</td>
            </tr>
          </table>
    	</form>
    
    
    
    <?php
    }elseif(!isset($_POST['email']) || $_POST['email'] == ""){
    echo '<p align="center">
    Geben Sie bitte Ihre E-Mail Adresse an!
    <br /><br /><a href="neu.php">Zurück</a></p>';
    }elseif(!isset($_POST['username']) || $_POST['username'] == ""){
    echo '<p align="center">
    Einen Benutzernamen brauchen wir schon ;-)
    <br /><br /><a href="neu.php">Zurück</a></p>';
    }elseif(!isset($_POST['password']) || $_POST['password'] == "") {
    echo '<p align="center">
    Ein Passwort brauchen wir schon ;-)<br /><br /><a href="neu.php">Zurück</a></p>';
    }elseif($_POST['password'] != $_POST['password2']) {
    echo '<form action="neu.php" method="post">';
    echo '<p align="center">Die Passwörter stimmen nicht überein!<br /><br />';
    echo '<input type="hidden" name="username" value="'.$_POST['username'].'">';
    echo '<input type="submit" name="zurueck" value="Zurück"></p>';
    echo '</form>';
    
    }else{
    $query = @mysql_query("SELECT user FROM users WHERE user = '".$_POST['username']."'");
    $result = @mysql_fetch_array($query);
    if($_POST['username'] == $result['user']) {
    echo '<p align="center">Sorry, dieser Benutzername ist leider schon vergeben!<br /><br /><a href="neu.php">Zurück</a></p>';
    die;
    }else{
    
    // seed mit Mikrosekunden
    
    $bestaetigung = 'nein';
    
    
    $username = $_POST['username'];
    $pass = md5($_POST['password']);
    $email = $_POST['email'];
    $activierungscode = $_POST['$aktivierungscodebest'];
    $best = $_POST['$bestaetigung'];
    
    $query = "INSERT INTO users(user,pass,email,activierungscode,best) VALUES('$username', '$pass', '$email', '$randval', '$bestaetigung')";
    if(mysql_query($query)){
    echo '<p align="center">Der neue Benutzer wurde erfolgreich angelegt!<br /><br /><a href="sichere_seite.php">Zur Admin-
    Seite</a></p>';
    
    //E-Mail mit Bestätigungscode
    // mehrere Empfänger
    $empfaenger  = $_POST['email']; // beachten Sie das Komma
    
    // Betreff
    $betreff = 'Registrierung auf PcundSoftware.de';
    
    // Nachricht
    $nachricht = '
    <html>
    <head>
      <title>Registrierung auf PcundsSoftware.de</title>
    </head>
    <body>
    Hallo,<br><br>
    um Ihre Registrierung zu best&auml;tigen klicken Sie bitte auf diesen Link: <a herf="http://www.pcundsoftware.de/neu.php?name=$name&email=$meail&activierungscode=$aktivierungscode" targert="blank">http://www.pcundsoftware.de/neu.php?name=$name&email=$email&activierungscode=$aktivierungscode</a><br><br>
    <br><br>
    Achtung: Dies ist eine Automatisch erstellte E-Mail. Bitte versuchen sie nicht über diese E-Mail eine Frage oder dergleichen zu stellen.
    <br><br>
    Schreiben Sie bitte dafür eine E-mail an <mailto: service@pcundsoftware.de>.
    <br><br>
    Vielen Dank für Ihr Verständnis!
    <br><br>
    <br><br> 
    Ihr Team von PcundSoftware.de <br><br>
    </body>
    </html>
    ';
    
    // für HTML-E-Mails muss der 'Content-type'-Header gesetzt werden
    $header  = 'MIME-Version: 1.0' . "\r\n";
    $header .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
    
    // zusätzliche Header
    $header .= 'From: PcundSoftware.de <webmaster@pcundsoftware.de>' . "\r\n";
    
    // verschicke die E-Mail
    mail($empfaenger, $betreff, $nachricht, $header);
    
    }else{
    echo '<p align="center">
    Beim Anlegen des neuen Benutzers trat leider ein Fehler auf!<br /><br /><a
    href="neu.php">Zurück</a></p>';
    }
    }
    }
    ?>
    </body>
    </html>
  10. zeile 23
    $aendern = "UPDATE (users) SET (best) = 'ja' WHERE [i]activierungscode[/i] LIKE $_GET['randval']";

    das klappt so nicht
    du musst den get-parameter aus dem string rausholen, also
    $aendern = "UPDATE (users) SET (best) = 'ja' WHERE [i]activierungscode[/i] LIKE ".$_GET['randval'];

    und zeile 25, hier ist statt dem " eine ). einfach austauschen, dann geht alles

    mfg

    EDIT: wenn du die errormessages die ausgegeben werden lesen würdest, dann hättest du das selbst auch rausgefunden

    Beitrag zuletzt geändert: 7.9.2009 20:36:42 von syberpsace
  11. Das Wichtige war das "hübscher formatiert" - sorry, aber ich habe gewisse Abneigungen, mir Sachen a la

    if () {
    } else {
    if {
    if {
    } elseif () {
    } else {
    }
    }
    }


    anzuschauen ;) Gerade dann nicht, wenn man nach möglicherweise falsch zugeordneten if-else-Fällen sucht. Eventuell findest Du den Fehler ja auch selbst, wenn Du mal eine lesbare Formatierung hast ;)
  12. Autor dieses Themas

    pcundsoftware

    Kostenloser Webspace von pcundsoftware, auf Homepage erstellen warten

    pcundsoftware hat kostenlosen Webspace.

    Tut mir leid, aber bei mir im programm sieht er ja auch ganz schön aus!
  13. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!