php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 14.06.2008, 22:10  
Neuer Benutzer
 
Registriert seit: 14.06.2008
Beiträge: 5
Creekz befindet sich auf einem aufstrebenden Ast
Standard Brauche Hilfe bei Anmeldungsskript

Hallo ,ich bin ein Php Anfänger und habe mein erstes Anmeldungsskript erstellt , jedenfalls habe ich es versucht. Leider funktioniert es nicht , ich weiß nicht wo der Fehler liegt . Hier der Code:
PHP-Code:

  <?php


include 'inc/config.php';

error_reporting(E_ALL E_NOTICE);

session_start();

$msg = Array();
$error = Array();

function 
addUser(){
    if (empty(
$_POST)) return false;
    global 
$config$msg$error;
    if (empty(
$_POST['login'])) $error[] = '<center><font color="red"><b>Keinen Benutzernamen angegeben.</b></center></font>';
    if (empty(
$_POST['password'][0]) || empty($_POST['password'][1])) $error[] = '<center><font color="red"><b>Kein Passwort eingegeben.</b></center></font>';
    if (
$_POST['password'][0] !== $_POST['password'][1]) $error[] = '<center><font color="red"><b>Das Passwort muss mit dem anderen Übereinstimmen.</b></center></font>';
    if (!empty(
$error)) return false;
    
$db = @mysql_connect($config['mysql_host'], $config['mysql_user'], $config['mysql_pass']);
    if (!
$db) return $error[] = 'Database: '.mysql_error();
    if (!@
mysql_select_db($config['mysql_db'], $db)) return $error[] = 'Database: '.mysql_error();

    
$query1 "SELECT * FROM `Benutzer` WHERE `login` = '".mysql_real_escape_string($_POST['login'])."'";
    
$query2 "SELECT * FROM `Benutzer` WHERE `eMail` = '".mysql_real_escape_string($_POST['eMail'])."'";
    
$res1 mysql_query($query1$db);
    
$res2 mysql_query($query2$db);
    if (!
$res1) return $error[] = 'Database: '.mysql_error();
    if (
mysql_num_rows($res1) !=0)
    {
      return 
$error[] = '<center><font color="red"><b>Der Benutzername '.mysql_real_escape_string($_POST['login']).' wird bereits verwendet.</b></center></font>';
    } elseif (
mysql_num_rows($res2) !=0
    {
      
$query "INSERT INTO `accounts` (`login`, `password`, `eMail`) VALUES ('".mysql_real_escape_string($_POST['login'])."', '".mysql_real_escape_string($_POST['password'][0])."', '0','".mysql_real_escape_string($_POST['eMail'])."');";
      
$res mysql_query($query$db);
      if (!
$res) return $error[] = 'Database: '.mysql_error();
      
$msg[] = '<center><img src="img/okay.gif"><br><font color="green"><b>Der Benutzer <strong>'.$_POST['login'].'</strong> wurde erstellt!</b><br><br><a href="index.php"></a></center></font>';
      
mysql_close($db);
  }
    return 
true;
}
{
addUser();
}
echo 
'
<html>
<head>
<title> Registrierung</title>
 <script type="text/javascript" src="inc/basic.js"></script>
 <style type="text/css">
  @import url("inc/style.css");
 </style>
</head>
<body link="#FFFFFF">
<body>
'
;

if (!empty(
$error)){
    foreach(
$error as $text)
        echo 
$text;
};
if (!empty(
$msg)){
    foreach(
$msg as $text)
        echo 
$text;
};


  if(
$config['anmeldung'] == "1")
    {
    echo 
'<form action="'.$config["startseite"].'" method="POST">';
    echo 
"<table align=\"center\" style=\"width: 402px; height: 482px; padding: 0px;\" cellpadding=\"0\" cellspacing=\"0\">

 <tr>
  <td style=\"width: 401px; height: 601px; background-image: url('img/tbl_center3_2.gif');\" rowspan=\"2\">

   <div id=\"cnt_acc\">
    <b style = \"color:white; font-size:8pt; font-variant: small-caps; letter-spacing:3px;\">Benutzername:</b><br />
    <input type=\"text\" name=\"login\" id=\"login\" value=\"\" style=\"width: 200px;\">
   </div>
   <div id=\"cnt_pw\">
    <b style = \"color:white; font-size:8pt; font-variant: small-caps; letter-spacing:3px;\">Passwort:</b><br />
    <input type=\"password\" name=\"password[]\" id=\"password\" style=\"width: 200px;\">
   </div>
      <div id=\"cnt_pwd\">
    <b style = \"color:white; font-size:8pt; font-variant: small-caps; letter-spacing:3px;\">Passwort Wiederholen:</b><br />
    <input type=\"password\" name=\"password[]\" id=\"password\" style=\"width: 200px;\">
   </div>
      <div id=\"cnt_mail\">
    <b style = \"color:white; font-size:8pt; font-variant: small-caps; letter-spacing:3px;\">Email-Adresse:</b><br />
    <input type=\"text\" name=\"email\" id=\"email\" value=\"\" style=\"width: 200px;\">
   </div>
      
   <div id=\"btn_submit\" style=\"display: inline;\">
     <input type=\"submit\" value=\"Abschicken\">
   </div>
   
  
     </td>
 </tr>
</table>
</form>"
;
    }
      if(
$config['anmeldung'] == "0")
    {
  echo 
'<b><center><font color="red"><h3>Die Anmeldung ist momentan leider Deaktiviert!</h></font></b></center><br><br>';
  }

echo 
"<a href=\"index.php\"><font size=\"5\"><h2 align=\"center\">zur&uuml;ck</h2></font></a>";       

$jahr date("d.m.Y");
echo 
'<center><b><h5>&copy; 2008 - '.$jahr.' by <font color="green">Creek</font></a></b>';

?>
 
</body>
</html>
Bitte helft mir .
Mit der config Datei stimmt auch alles.

Hier könnt ihr euch das Skript auf meiner Homepage (erst gesten erstellt) anschauen : Klick

____________________________________

MfG


~~>Creekz<~~


Edit: Sry für doppelpost
Creekz ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 14.06.2008, 22:17  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Wenn ich irgendetwas in die Felder eintrage und abschicke kommt
Zitat:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /users/creekz/www/account/login.php on line 15
Das bekomme ich nicht mit dem Code, den Du hier gepostet hast. Welche Datei hast Du hier gepostet?

"Leider funktioniert es nicht" ist keine ausreichende Beschreibung. Was soll passieren? Was passiert zur Zeit?
Zum Testen error_reporting(E_ALL); verwenden
David ist offline  
Alt 15.06.2008, 03:56  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.241
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

error reporting steht ja drin. Aber wenn ich die spaces vor session_start schon wieder sehe...
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 15.06.2008, 12:47  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.072
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

Hallo!

Den Code den du geschickt hast ist der von der Registration oder ist das die login.php?

Der Fehler ist ein Syntaxfehler in der Zeile 14. Bei PHP werden solche Fehlermeldungen auf die nächste Zeile verwiesen!

Es kann sein da fehlt eine Klammer oder so!

Poste bitte den relevanten Code der dafür zuständig falls es der nicht ist!

mfg der Litter
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Alt 15.06.2008, 18:32  
Neuer Benutzer
 
Registriert seit: 14.06.2008
Beiträge: 5
Creekz befindet sich auf einem aufstrebenden Ast
Standard

Auf der Website ist der selbe Quelltext wie der angegebene.Auf der Website wird bei mir gar keine Fehlermeldung angezeigt,aber in der datenbank ist der erstellte Benutzer nicht drinnen . Wieso?
Creekz ist offline  
Alt 15.06.2008, 18:34  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.241
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Was soll denn das:
PHP-Code:
}
{
addUser();

?

Die Logik ist auch falsch:
PHP-Code:
$query2 "SELECT * FROM `Benutzer` WHERE `eMail` = '".mysql_real_escape_string($_POST['eMail'])."'";
$res2 mysql_query($query2$db);

[else]if (
mysql_num_rows($res2) !=0
    {
    
$query "INSERT INTO `accounts` (`login`, ... 
Wenn ich das richtig interpretiert habe. Oder anders ausgedrückt: Der Code ist grottig formatiert. Man bekommt bei Deiner Einrückung keine Lust, sich das Beispiel überhaupt anzusehen. Die ein odere andere Leerzeile oder mal ein Kommentar wären auch nicht verkehrt.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--

Geändert von nikosch (15.06.2008 um 18:39 Uhr).
nikosch ist offline  
Alt 15.06.2008, 18:37  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.072
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

Soweit ich das in dem Code herauslesen konnte fehlt eine php anweisung das der Eitrag gemacht werden soll wenn auf den submit button gedrückt wird!

Den Button musst du erst mal einen Namen geben das muss dann so hier aussehen!

<input type=\"submit\" name=\"senden\" value=\"Abschicken\">

Und dann musst das hier schreiben!
PHP-Code:
if(isset($_POST['senden']))
{
       
//hier alles rein was zum eintragen wichtig ist an php code

Damit erreichst du das nach dem drücken auf den Button der Eintrag gemacht wird!
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de

Geändert von litterauspirna (15.06.2008 um 18:42 Uhr).
litterauspirna ist offline  
Alt 15.06.2008, 18:39  
Neuer Benutzer
 
Registriert seit: 14.06.2008
Beiträge: 5
Creekz befindet sich auf einem aufstrebenden Ast
Standard

Ok, wie schon gesagt ,ich bin ein Anfänger .Könnt ihr mir bitte sagen was ich weglassen soll und was fehlt. Wäre nett wenn ihr den korrekten Quelltext noch einmal postet.
Creekz ist offline  
Alt 15.06.2008, 18:50  
Neuer Benutzer
 
Registriert seit: 14.06.2008
Beiträge: 5
Creekz befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
if(isset($_POST['senden']))
{
//hier alles rein was zum eintragen wichtig ist an php code
}
Was soll ich dann da eintragen?
Creekz ist offline  
Alt 15.06.2008, 18:52  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.072
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

Na das was du zum eintragen in die DB benötigst!

Du hast doch den Code geschrieben da musst doch wissen was da dazu gehört!
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Brauche hilfe mik08 PHP Tipps 2008 10 27.07.2008 16:17
Datenbanktabelle erstellen - brauche Hilfe Raccoon PHP Tipps 2008 1 14.06.2008 11:03
Ich brauche eure Hilfe beim rechnen... GELight PHP Tipps 2006 6 07.04.2006 14:20
Ich brauche eure Hilfe PHP Tipps 2006 22 19.02.2006 19:57
PHP <--> MySQL | Brauche Hilfe ahnungsloser Datenbanken 18 16.02.2006 21:49
brauche eben hilfe PHP Tipps 2007 2 26.11.2005 08:36
brauche sehr schnell und dringend hilfe Beitragsarchiv 13 24.10.2005 13:11
HILFE ! Brauche ganz dringend hilfe! PHP Tipps 2005-2 2 10.10.2005 23:08
brauche hilfe!!! marcelglaeser HTML, Usability und Barrierefreiheit 0 03.10.2005 20:01
Hilfe, Ich brauche hilfe! Kevin PHP Tipps 2005-2 2 27.09.2005 19:31
BRAUCHE DRINGENDE HILFE !!! PHP Tipps 2005-2 2 06.08.2005 19:45
Brauche Hilfe bei preg_match() PHP Tipps 2005-2 2 23.07.2005 22:44
[Erledigt] Brauche dringend Hilfe PHP Tipps 2005 19 01.02.2005 20:21
Brauche Hilfe PHP Tipps 2005 5 11.01.2005 15:30
Brauche Hilfe - kenne mich nicht aus - zahlen auch dafür Beitragsarchiv 1 09.08.2004 16:10


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:59 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum