PCMasters Hardware Forum > Software > GFX, Webdesign und Programmierung > Seite 4 > Problem in PHP Code

Im PC Forum registrieren


Produktsuche
IDEALO-PRODUKT-SUCHE
idealo preisvergleich
PCM News & Reviews
Antwort
 
 
Alt 04.04.2011, 19:35
Benutzerbild von hallo2000
Threadersteller
hallo2000
 
Standard

Problem in PHP Code



Hallo,

ich arbeite gerade an einem Loginsystem und habe ein Problem.
Folgene Fehlermeldung erscheint:

Parse error: syntax error, unexpected T_SL in /data/multiserv/users/548038/projects/1347874/www/Login/class/login.php on line 77

Die login.php:

PHP-Code:
<?php

class login{

    private 
$id NULL;
    private 
$name NULL;
    private 
$passwort NULL;
    private 
$email NULL;
    private 
$session NULL;
    private 
$dbconnection NULL;
    
    public function 
__construct($sessionid){
        
$this->dbconnection = new DB_MySQL();
        
        
$this->session $sessionid;
        
        if (isset(
$_POST['login'])===true && 
            isset(
$_POST['username'])===true && 
            isset(
$_POST['userpass'])===true){
            
             
$this->name $_POST['username'];
             
$this->passwort $_POST['userpass'];
             
$this->login();
             return 
true;
        }
        
        if (isset(
$_GET['logout'])===true && $_GET['logout']==='1'){
                 
$this->logout();
        }
    }
    
    private  function 
login(){
        
$query 'SELECT * FROM users
                  WHERE  
                    Name     = \''
mysql_real_escape_string($this->name) .'\' AND
                    Passwort = \''
mysql_real_escape_string(MD5($this->passwort)) .'\'
                  LIMIT 1;'
;
        
        
$this->dbconnection->query(&$query);
        
        if(
$this->dbconnection->count()!==1){
            return 
false;
        } else {
            
$row $this->dbconnection->fetchRow();
            
$this->email $row['EMail'];
            
$this->id    $row['ID'];
            
            
$this->logout();
            
            
$query 'UPDATE  
                          users
                      SET  
                        Session = \''
mysql_real_escape_string($this->session) .'\' 
                      WHERE 
                          ID =  '
$this->id .
                      LIMIT 1;'
;
            
            
$this->dbconnection->query(&$query);            
            
            return 
true;
        }
    }
    
    public function 
logged_in(){
        
$query 'SELECT * 
                      FROM users
                  WHERE  
                    Session = \''
mysql_real_escape_string($this->session) .'\' 
                  LIMIT 1;'
;
        
        
$this->dbconnection->query(&$query);
        
        return (
$this->dbconnection->count()!==1) ? false true;
    }
    
    public function 
showLogin(){
        echo <<<
EOT 
<form method="post" action="">
<
fieldset style="width:300px;text-align:right;position:absolute; left:20%; top:20%;">
 <
legend>Benutzeranmeldung</legend>
    <
br />
    <
label for="textinput1">Benutzername</label>
    <
input type="text" name="username">
    <
br />
    <
label>Passwort</label>
    <
input type="password" name="userpass" id="textinput2">
    <
br /><br />
  <
button name="login" type="submit">Anmelden</button>

</
fieldset>
</
form>
            
EOT;
    }
    
    public function 
showLogout($text='Logout'){
        echo 
'<a href="?logout=1&sid=',$this->session,'">',$text,'</a>';
    }

    
    private function 
logout(){
        
$query 'UPDATE  
                      users
                  SET  
                    Session = NULL 
                  WHERE 
                      Session = \''
mysql_real_escape_string($this->session) .'\'
                  LIMIT 1;'
;
        
        
$this->dbconnection->query(&$query);
    }
}

?>
Ich kenne mich nicht she rgut mit php aus und habe die Codes ausm Netz gezogen. Ich hoffe ihr könnt mir helfen.

Mit freundlichen Grüßen hallo2000
Alt Heute
Hardware Bot
Computer Informationen
 
Diese Werbung wird registrierten
Mitgliedern nicht angezeigt.
Werden Sie noch heute kostenlos Mitglied
auf PCMasters.de
Standard Weitere Informationen

 
Alt 04.04.2011, 20:27
Creator1981
 
Standard

Sag mal bitte, was Zeile 77 ist.

Und schraub mal error_reporting hoch.
 
Alt 04.04.2011, 20:40
Benutzerbild von hallo2000
Threadersteller
hallo2000
 
Standard

in Zeile 77 ist der Fehler.
Steht ja in der Fehlermeldung.
wie kann ich das Error-Reporting denn höher machen?
 
Alt 04.04.2011, 20:44
Creator1981
 
Standard

Du scherzkeks Ich will wissen was in der Zeile 77 ist habe keine editor hier grade und keine lust zum zählen.

PHP-Code:
error_reporting(E_ALL|E_STRICT); 
ganz nach oben ins script.
 
Alt 04.04.2011, 20:48
Benutzerbild von hallo2000
Threadersteller
hallo2000
 
Standard

achso, sry.

Also in der Zeile ist das:
PHP-Code:
echo <<<EOT 

Das mit dem Error-Report mach ich morgen.

 
Alt 04.04.2011, 20:53
Creator1981
 
Standard

Jo ist klar ein Syntaxfehler

PHP-Code:
public function showLogin(){
        echo 
'
<form method="post" action="">
<fieldset style="width:300px;text-align:right;position:absolute; left:20%; top:20%;">
 <legend>Benutzeranmeldung</legend>
    <br />
    <label for="textinput1">Benutzername</label>
    <input type="text" name="username">
    <br />
    <label>Passwort</label>
    <input type="password" name="userpass" id="textinput2">
    <br /><br />
  <button name="login" type="submit">Anmelden</button>

</fieldset>
</form>'
;
            
    } 
Sollte funktionieren.
 
Alt 05.04.2011, 11:40
Benutzerbild von hallo2000
Threadersteller
hallo2000
 
Standard

Danke. Jetzt funktioniert es ohne Probleme.

Geändert von hallo2000 (05.04.2011 um 11:43 Uhr).
 
Alt 06.04.2011, 14:25
Benutzerbild von hallo2000
Threadersteller
hallo2000
 
Standard

Hallo,

ich bins nochmal.
Ich arbeite gerade daran, das passend zum Code aus dem Ersten Code noch der Benutzername angezeigt wird, weil das ja ein Loginsystem ist.
Mein Problem ist aber nun, das der Benutzername nur das erstemal angezeigt wird und wenn man auf einer anderen Seite geht, ist der Benutzername auf einmal verschwunden und kommt auch nicht mehr wieder.
Wie kann ich das den machen, das der Benutzername auf jeder Seite angezeigt wird?

Mit freundlichen Grüßen hallo2000
 
Alt 06.04.2011, 15:39
Creator1981
 
Standard

Du musst hier mit der Session arbeiten.
Wenn der Login erfolgreich ist, dann packst du die ID vom User in die Session und kannst dann den Namen auslesen und darstellen.
Du musst ja eh auf jeder seite prüfen ob der user eingelogt ist oder nicht.
 
Alt 06.04.2011, 15:41
Benutzerbild von hallo2000
Threadersteller
hallo2000
 
Standard

ok.
Aber wie bekomme ich den Namen?
Also die Session kann ich ja Problemlos auf jeder Seite als Text anzeigen.
 
Alt 06.04.2011, 15:42
Creator1981
 
Standard

hä?
du weißst schon was eine Session ist oder? $_SESSION
Ich glaube dein Problem ist eher das du keinen schimmer hast was da oben in der KLasse überhaupt passiert, kann das sein?
 
Alt 06.04.2011, 16:09
Benutzerbild von hallo2000
Threadersteller
hallo2000
 
Standard

oO
ja, das kann sein, da ich ja noch neuling bin.
Sry.
 
Alt 06.04.2011, 16:31
Creator1981
 
Standard

Dafür muss man sich nicht entschuldigen. War ich ja auch mal.
Es ist nur schwer jemanden zu helfen der nicht versteht worüber man redet. Und dir jetzt code vorkauen möchte ich nicht, da du nichts dadurch lernst.

Es geht einfach kein weg vorbei sich mit den Grundlagen zu befassen. Und bitte schau wenn du mit irgendwelchen Tutorials arbeitest auf das Datum. Es geistern so viel schlechte Tutorials und code Beispiele im Netz rum, dass ist wirklich schlimm.

]

Das ist eine nette Seite zwar auch schon veraltet aber für die ersten schritte echt supper.
 
Alt 06.04.2011, 17:03
Benutzerbild von hallo2000
Threadersteller
hallo2000
 
Standard

Echt ne super Seite.
Schau ich mir mal an.

Geändert von hallo2000 (06.04.2011 um 17:22 Uhr).
 
Alt 27.04.2011, 21:26
Adler91
 
Standard

Zum Verschlüsseln des Passwortes nicht benutzen md5.
Du würdest auch nützliche Salz sein.
Mehr info in ]
hardware forum Neue Frage stellen?
Kurze Zusammenfassung der Frage:
Bitte wählen Sie eine Kategorie:
Mailadresse:
Ihre Frage:
Ihre Frage wird als Gast gespeichert. Sollte eine Antwort im Forum erfolgen, bekommen Sie diese per Email zugeschickt.


Antispam, bitte die folgende Aufgabe lösen: 
 
Um auf dieses Thema zu ANTWORTEN
bitte sich zuerst » hier kostenlos registrieren!!

Antwort

Tags: , ,

Ähnliche Tags: , ,


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Hardware Problem iall Grafikkarten 3 03.05.2010 17:55
(PHP) Problem mit Script! DarkRaver GFX, Webdesign und Programmierung 3 02.04.2010 13:10
Problem beim Zugriff auf 2. Festplatte über Programme BloodyLove Festplatten und optische Laufwerke 4 15.12.2009 10:05
Taskleisten/Desktop Problem, bitte um Hilfe! ravn Betriebssysteme 0 24.10.2009 13:06
BenQ-FP71V-TFT Problem babbsagg Monitore und PC-Peripherie 1 21.03.2008 13:32
PHP Problem mit der Sotierung bei mysql alflife2007 GFX, Webdesign und Programmierung 2 24.01.2008 20:10
Problem mit wc3tft und grafikarte ? DoN Grafikkarten 6 08.07.2007 12:22
Problem mit unbekannter Ursache Silens Hardware Allgemein 4 04.06.2007 00:07


Sie betrachten gerade: Problem in PHP Code


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



Im PC Forum registrieren