Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Web Development
You last visited: Today at 08:56

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Hilfe Login.php

Discussion on Hilfe Login.php within the Web Development forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 287
Join Date: Dec 2012
Posts: 430
Received Thanks: 57
Hilfe Login.php

Hallo. Kann mir da einer vllt. helfen ?

index.php:
Quote:
<!DOCTYPE HTML>
<html>
<head>
<title>goFeeling - Login</title>

<meta name='keywords' content=''>
<meta name='description' content=''>

</head>

<body>

<div id='loginform'>
<form action='login.php' method='post'>
<p>Benutzername: <input type='text' name='user'></p>
<p>Passwort: <input type='password' name='pass'></p>
<input type='submit' name='login' value='Login'> <input type='reset' name='reset' value='Reset'>
</form>
</div>

</body>
</html>
Login.php:
Quote:
<?php
$benutzer = $_POST['user'];
$benutzer = $_POST['pass'];
$loginbutton = $_POST['login'];


if ($loginbutton)
{
if ($benutzer AND $passwort)
{
//connect to db
$connect = mysql_connect("localhost","Geheim","Geheim");
mysql_select_db("Geheim");

$query = mysql_query("SELECT * FROM accounts WHERE benutzer='$benutzer'");
$num = mysql_num_rows($query);

if ($num==0)
{
WHILE ($row = mysql_fetch_assoc($query))
{
$dbbbenutzer= $row['benutzer'];
$dbpasswort= $row ['passwort'];

}

if ($dbbenutzer==$benutzer AND $dbpasswort==$paswort)
{
echo "Login erfolgreich!";

}
else
echo "Ihre Daten wurden nicht gefunden";



}
else
echo "Der angegebende Benutzer existiert nicht!";


}
else
echo "Bitte fuellen sie alle Felder aus!;
}

?>
Immer wenn ich mich dann einloggen will (trollgsm.de.gp) kommt diese Meldung: Parse error : syntax error, unexpected $ end, erwartet T_VARIABLE oder T_DOLLAR_OPEN_CURLY_BRACES oder T_CURLY_OPEN in / data/multiserv/users/1107589/projects/2474948/www/login.php on line 47

Ihh weiß aber nicht was da falsch sein soll. Weil ?> muss doch zum Schluss.
4C4D is offline  
Old 05/07/2013, 15:58   #2


 
elite*gold: 0
Join Date: Jul 2009
Posts: 3,357
Received Thanks: 705
else
echo "Bitte fuellen sie alle Felder aus!;
}

Hast du nach dem else eine "{" vergessen. Dennoch finde ich dort mehrere Fehler, berichtige das mal. Dann zur abfrage ob der Button geklickt wurde, dort benutzt man $_isset...

Und dann gibts da mehrere fehlende "{"...
StridingGiant is offline  
Old 05/07/2013, 16:05   #3
 
elite*gold: 287
Join Date: Dec 2012
Posts: 430
Received Thanks: 57
Quote:
Originally Posted by RaulDeluxe View Post
else
echo "Bitte fuellen sie alle Felder aus!;
}

Hast du nach dem else eine "{" vergessen. Dennoch finde ich dort mehrere Fehler, berichtige das mal. Dann zur abfrage ob der Button geklickt wurde, dort benutzt man $_isset...

Und dann gibts da mehrere fehlende "{"...
Ok. Danke. Aber wenn ich denn das { hin schreibe, zeigt der auf der Webseite das es ein Fehler. Wenn du zeit hast, könntest du das denn richtig machen? Wäre echt nett
4C4D is offline  
Old 05/07/2013, 16:13   #4


 
Cr4nkSt4r's Avatar
 
elite*gold: 74
Join Date: Oct 2008
Posts: 619
Received Thanks: 288
Und bitte, code einfach sauberer
Wenn du bei einer if Abfrage Klammern benutzt, nutze die doch bitte auch bei else.
Wenn du allerdings ohne die Klammern coden willst, lass sie auch bei if weg.
Beachte dabei aber, dass so bald du 2 Zeilen in die Aufführung nach einer erfüllten Bedingung haben möchtest, dass du die Klammern nutzen musst.
Dann hattest du oben statt $passwort = $_POST['pass']; nur $benutzer= $_POST['pass'];
Somit kann $passwort nie etwas enthalten geschweige denn sie existiert.
Auch solltest du das while klein schreiben
Sollte ein Benutzer in der Datenbank gefunden werden, was auch eig. nur ein einzieges Ergebnis geben sollte, wird $num auf 1 gesetzt, wenn du mit 0 abfragst (if($num==1)) springt er in den Teil wenn der Benutzer nicht existiert, was er ja nur machen soll wenn er existiert.
Also auch ein Paar Logikfehler ausbessern und das nächste Mal keine Wiederholung des ganzen machen

PHP Code:
<?php
  $benutzer 
$_POST['user'];
  
$passwort $_POST['pass'];
  
$loginbutton $_POST['login'];


  if(isset(
$loginbutton) && !empty($loginbutton))
  {
    if(isset(
$benutzer) && !empty($benutzer) && isset($passwort) && !empty($passwort))
    {
      
//connect to db
      
$connect mysql_connect("localhost","Geheim","Geheim");
      
mysql_select_db("Geheim");
  
      
$query mysql_query("SELECT * FROM accounts WHERE benutzer='$benutzer'");
      
$num mysql_num_rows($query);
  
      if(
$num==1)
      {
        while(
$row mysql_fetch_assoc($query))
        {
          
$dbbbenutzer $row['benutzer'];
          
$dbpasswort $row ['passwort'];
        }
        if (
$dbbenutzer == $benutzer && $dbpasswort == $paswort)
        {
          echo 
"Login erfolgreich!";
        }
        else
        {
          echo 
"Ihre Daten wurden nicht gefunden";
        }
      }
      else
      {
        echo 
"Der angegebende Benutzer existiert nicht!";
      }
    }
    else
    {
      echo 
"Bitte fuellen sie alle Felder aus!";
    }
  }
?>
Cr4nkSt4r is offline  
Thanks
1 User
Old 05/07/2013, 16:20   #5
 
elite*gold: 287
Join Date: Dec 2012
Posts: 430
Received Thanks: 57
Quote:
Originally Posted by Cr4nkSt4r View Post
PHP Code:
<?php
  $benutzer 
$_POST['user'];
  
$benutzer $_POST['pass'];
  
$loginbutton $_POST['login'];


  if(isset(
$loginbutton) && !empty($loginbutton))
  {
    if(isset(
$benutzer) && !empty($benutzer) && isset($passwort) && !empty($passwort))
    {
    
//connect to db
    
$connect mysql_connect("localhost","Geheim","Geheim");
    
mysql_select_db("Geheim");

    
$query mysql_query("SELECT * FROM accounts WHERE benutzer='$benutzer'");
    
$num mysql_num_rows($query);

    if(
$num==1)
    {
      WHILE(
$row mysql_fetch_assoc($query))
      {
        
$dbbbenutzer $row['benutzer'];
        
$dbpasswort $row ['passwort'];
          }
          if (
$dbbenutzer == $benutzer && $dbpasswort == $paswort)
          {
        echo 
"Login erfolgreich!";
          }
          else
           echo 
"Ihre Daten wurden nicht gefunden";
        }
        else
          echo 
"Der angegebende Benutzer existiert nicht!";
    }
    else
      echo 
"Bitte fuellen sie alle Felder aus!";
  }
?>
Das Teil zeigt richtig formatierten Code echt assig an o0...
Und bitte, code einfach sauberer
Wenn du bei einer if Abfrage Klammern benutzt, nutze die doch bitte auch bei else.
Wenn du allerdings ohne die Klammern coden willst, lass sie auch bei if weg.
Beachte dabei aber, dass so bald du 2 Zeilen in die Aufführung nach einer erfüllten Bedingung haben möchtest, dass du die Klammern nutzen musst.

PHP Code:
<?php
  $benutzer 
$_POST['user'];
  
$benutzer $_POST['pass'];
  
$loginbutton $_POST['login'];


  if(isset(
$loginbutton) && !empty($loginbutton))
  {
    if(isset(
$benutzer) && !empty($benutzer) && isset($passwort) && !empty($passwort))
    {
    
//connect to db
    
$connect mysql_connect("localhost","Geheim","Geheim");
    
mysql_select_db("Geheim");

    
$query mysql_query("SELECT * FROM accounts WHERE benutzer='$benutzer'");
    
$num mysql_num_rows($query);

    if(
$num==1)
    {
      WHILE(
$row mysql_fetch_assoc($query))
      {
        
$dbbbenutzer $row['benutzer'];
        
$dbpasswort $row ['passwort'];
          }
          if (
$dbbenutzer == $benutzer && $dbpasswort == $paswort)
          {
        echo 
"Login erfolgreich!";
          }
          else
          {
            echo 
"Ihre Daten wurden nicht gefunden";
          }
        }
        else
        {
          echo 
"Der angegebende Benutzer existiert nicht!";
        }
    }
    else
    {
      echo 
"Bitte fuellen sie alle Felder aus!";
    }
  }
?>
Okay, danke.

Nächstes Problem.. Immer wenn ich mich einloggen möchte kommen dann jetzt: Bitte fuellen sie alle Felder aus!
Ich habe es doch... Habe auch schon DB mit reingemacht & so. Auch schon Account erstellt. Doch das kommt immer. Ich mache das über Kilu, geht das da nicht?

Nächstes Problem.. Immer wenn ich mich einloggen möchte kommen dann jetzt: Bitte fuellen sie alle Felder aus!
Ich habe es doch... Habe auch schon DB mit reingemacht & so. Auch schon Account erstellt. Doch das kommt immer. Ich mache das über Kilu, geht das da nicht?
4C4D is offline  
Old 05/08/2013, 12:04   #6



 
Frutex's Avatar
 
elite*gold: 0
Join Date: Jan 2009
Posts: 18,580
Received Thanks: 3,864
Arrow Technical Support -> Web Development

#moved
Frutex is offline  
Old 05/08/2013, 12:50   #7
 
elite*gold: 0
Join Date: Jan 2013
Posts: 358
Received Thanks: 105
PHP Code:
  $benutzer $_POST['user']; 
  
$benutzer $_POST['pass']; 
  
$loginbutton $_POST['login']; 
Code:
// Und weg ist die account database
'DROP DATABASE accounts
Wer denkt denn bitte mal an die Sicherheit ? wenn du das so machst hat jeder
und damit mein ich jeder Vollzugirff auf deine datenbank...
wenn du dann noch ne news außgabe hast wird ein XSS angriff daraus
und dann wirds wirklich hardcore

versuch ma lieber

PHP Code:
  $benutzer mysql_escape_string($_POST['user']); 
  
$benutzer mysql_escape_string($_POST['pass']); 
  
$loginbutton mysql_escape_string($_POST['login']); 
jedoch was "$loginbutton" soll weiß ich auch ned.. xD
Fehlgeschlagen is offline  
Old 05/08/2013, 13:47   #8


 
Cr4nkSt4r's Avatar
 
elite*gold: 74
Join Date: Oct 2008
Posts: 619
Received Thanks: 288
Quote:
Originally Posted by [RABBiT] View Post
Okay, danke.
Nächstes Problem.. Immer wenn ich mich einloggen möchte kommen dann jetzt: Bitte fuellen sie alle Felder aus!
Ich habe es doch... Habe auch schon DB mit reingemacht & so. Auch schon Account erstellt. Doch das kommt immer. Ich mache das über Kilu, geht das da nicht?
Vor deiner Antwort habe ich meinen Post noch entsprechend bearbeitet, da steht auch, warum welche Meldungen kommen.
Einfach noch einmal den Post von mir lesen ^^

@Fehlgeschlagen
In dem Code kann man noch vieles besser machen, in erster Linie ging es ja erst einmal darum dass der Code funktioniert.
Im zweiten Schritt kann man ihn dann sicher machen, ich weis ja nicht ob dies nicht eh schon angesetzt war oder nicht.

Was der $loginbutton soll, ganz einfach, damit fragt er ab ob das Formular überhaupt abgeschickt wurde und der Post nicht so gemacht wurde.
Klar, wer weis was gesendet wird sendet den entsprechenden Parameter eben mit, aber auch da gibt es wieder Wege die dies komplizierter machen können für andere Leute, aber darauf brauchen wir hier ja erst einmal nicht eingehen
Cr4nkSt4r is offline  
Thanks
1 User
Old 05/08/2013, 14:29   #9
 
elite*gold: 287
Join Date: Dec 2012
Posts: 430
Received Thanks: 57
Ich danke euch. Habe jetzt alles gemacht was ihr gesagt habt. So... Jetzt ist das nächste Problem.. :
Quote:
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /data/multiserv/users/1107589/projects/2474948/www/login.php on line 16
Auf Line 16 ist dieser Code :
Quote:
$num = mysql_num_rows($query);
4C4D is offline  
Old 05/08/2013, 15:37   #10


 
Cr4nkSt4r's Avatar
 
elite*gold: 74
Join Date: Oct 2008
Posts: 619
Received Thanks: 288
Den Fehler bekommst du da mysql_query den Rückgabewert false liefert da es einen Fehler mit dem $qry geben wird.

Probier mal:
PHP Code:
$query mysql_query("SELECT * FROM `accounts` WHERE `benutzer` = '".$benutzer."'"); 
Cr4nkSt4r is offline  
Old 05/08/2013, 15:48   #11
 
elite*gold: 287
Join Date: Dec 2012
Posts: 430
Received Thanks: 57
Quote:
Originally Posted by Cr4nkSt4r View Post
Den Fehler bekommst du da mysql_query den Rückgabewert false liefert da es einen Fehler mit dem $qry geben wird.

Probier mal:
PHP Code:
$query mysql_query("SELECT * FROM `accounts` WHERE `benutzer` = '".$benutzer."'"); 
Danke. Jetzt zeigt es aber wieder an : "Bitte fuellen sie alle Felder aus! "
4C4D is offline  
Old 05/08/2013, 22:07   #12
 
kissein's Avatar
 
elite*gold: 0
Join Date: Sep 2005
Posts: 427
Received Thanks: 87
Code:
if ($dbbenutzer == $benutzer && $dbpasswort == $paswort)
Typo bei $passwort

//EDIT:
Hab mir mal den Eingangspost etwas genauer durchgelesen und falls das Errorlogging nicht komplett abgeschaltet ist müsste er eigentlich diverse Indizies Warnung schmeissen wegen der fehlenden Request überprüfung z.B. soetwas wie

Code:
if(isset($_POST)){
    $foo = $_POST['bar'];
    .....
}
kissein is offline  
Old 05/13/2013, 09:46   #13


 
Cr4nkSt4r's Avatar
 
elite*gold: 74
Join Date: Oct 2008
Posts: 619
Received Thanks: 288
Du kannst doch ganz einfach gucken warum er dir ausgibt dass alle Felder ausgefüllt werden müssen:
PHP Code:
if(isset($loginbutton) && !empty($loginbutton)) 

  if(isset(
$benutzer) && !empty($benutzer) && isset($passwort) && !empty($passwort)) 
  { 
  } 
  else 
  { 
    echo 
"Bitte fuellen sie alle Felder aus!"
  } 

kannst dann in dem else Zweig der ja immer ausgegeben wird test weise die Variablen ausgeben lassen welche in der if-Abfrage überprüft werden und dann vll. auch noch alle $_POST-Parameter:
PHP Code:
if(isset($loginbutton) && !empty($loginbutton)) 

  if(isset(
$benutzer) && !empty($benutzer) && isset($passwort) && !empty($passwort)) 
  { 
  } 
  else 
  { 
    
//echo "Bitte fuellen sie alle Felder aus!";
    
echo 'Benutzer:'.$benuter.'<br />';
    echo 
'Passwort:'.$passwort.'<br />';
    echo 
'Loginbutton:'.$loginbutton.'<br />';

    echo 
'<pre>';
      
print_r($_POST);
    echo 
'</pre>';
  } 

Cr4nkSt4r is offline  
Reply


Similar Threads Similar Threads
[Hilfe] - Login
12/19/2012 - .NET Languages - 3 Replies
Hallo zusammen, Ich bräuchte hilfe und zwar bei mein Login..ich möchte ein Login in mein programm einbauen indem ich Halt 2 textboxen hab Mit BN und PW und ich leute so über ein anderes programm einfügen kann, damit die sich dann mit ihren gewünschten Daten einloggen können. Ich möchte nicht das jeder dieses programm verwendet. Vllt. kann man das auch so machen, dass man es so einstellen kann das der jenige sich nur auf sein pc anmelden kann oder man kann es einstellen das begrentzt nur 5...
login Down Hilfe
07/02/2011 - Metin2 Private Server - 1 Replies
Hey leute bei unserem root Server ist login Down -.- Wie mache ich den wider an ? ohne reboot
[Hilfe]Login Fix
01/22/2011 - Metin2 Private Server - 3 Replies
Also ich habe alles nachdem den sein Tutuorial gemacht : http://www.elitepvpers.com/forum/metin2-pserver-gu ides-strategies/797201-how-auth-server-fix-loginbu g-infos-wie-alles-funktioniert.html aber an der Stelle wo steht "Esc Enter Enter" Wenn ich ESC drücken passiert gar nichts , warum? (Englische Tastatur) Ein Bild : http://img5.imagebanana.com/img/9cw38hur/thumb/Ne ueBitmap.png
Login-Hilfe
03/09/2008 - General Coding - 2 Replies
Hi leute, und zwar wollte ich mal fragen ob es eine art loginhilfe gibt? z.B. gab es früher mal so einen srostarter der immer gewartet hat, bis 2 plätze frei sind(serverlist) und dann auf okey drückte. gibt es so ähnliche oder neue hilfen um sich bequemer einzulogen? Danke im vorraus



All times are GMT +1. The time now is 08:57.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.