Else

ocinrezle

Gesperrt
hallo ich habe folgenden script:

PHP:
<?php
   mysql_connect("","xxx");
   mysql_select_db("xxx");

         $sqlab = "insert user";
         $sqlab .= "(name,";
         $sqlab .= " password) values ('";
         $sqlab .= $_POST["name"] . "', '";
         $sqlab .= $_POST["pw"] . "')";
         if (mysql_query($sqlab));
          { 
          echo "du bist nun angemeldet";
          }
         else {
            echo "Versuch fehlgeschlagen! ";
              }
        
?>

wieso gibt er hier
Code:
Parse error: syntax error, unexpected T_ELSE in xxx\xxx\xxx\xxx\xxx\xxx\register.php on line 34
 
Das ist richtig.
Er hat eine leere Zeile in deine SQL eingefügt.
Prüfe lieber in einem if ob $_POST gefüllt ist:

PHP:
if (!$_POST["name"] && !$_POST["pw"])
{
  // keine anmeldung / fehler
} else {
  // anmelden, eintragen, etc.
}

Und du solltest das was dir gesendet wird escapen:
PHP:
$sqlab = "insert user";
$sqlab .= "(name,";
$sqlab .= " password) values ('";
$sqlab .= mysql_real_escape_string($_POST["name"]) . "', '";
$sqlab .= mysql_real_escape_string($_POST["pw"]) . "')";

Das wäre sonst eine große Sicherheitslücke, bei der jeder deine Tabelle verändern kann wie er will >> http://de.wikipedia.org/wiki/SQL_Injection
 
Zurück