php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 28-05-2010, 21:54
Sonork
 Registrierter Benutzer
Links : Onlinestatus : Sonork ist offline
Registriert seit: Nov 2009
Beiträge: 48
Sonork befindet sich auf einem aufstrebenden Ast
Standard Loginscript funktioniert, allerdings nicht Offline!

Hallo erstmal,

ich weiß ich stelle in Letzter Zeit viele fragen, die ich mir mit ein bischen mehr überlegen selbst beantworten könnte, nun ahbe ich aber schon 6 Stunden über folgendes Problem gegrübelt, und finde keine Logische Antwort!
Ich benutze für den Login auf meiner Seite folgendes Formular, und folgenden Script:

PHP-Code:
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<
form action="./index.php?content=login/login1" method="post">
<
table width="440" border="0">
  <
tr>
    <
td width="36%" height="18"><font size="-1" color="#000000"><strong>Benutzername:</strong></font></td>
    <
td width="64%">&nbsp;</td>
    </
tr>
    <
tr>
    <
td width="36%"><input type="text" size="18" maxlength="50"
name="usernamen"></td>
<
td align="center">&nbsp;</td>
    </
tr>
   <
td width="36%"><font size="-1" color="#000000"><strong>Passwort:</strong></font></td>
   <
td align="center">&nbsp;</td>
  </
tr>
  <
tr>
    <
td><input type="password" size="18" maxlength="50"
name="password">
</
td>
<
td align="center">&nbsp;</td>
<
tr>
    <
td width="36%" height="18"><font size="-1" color="#000000">&nbsp;</font></td>
    <
td align="center">&nbsp;</td>
    </
tr>
    <
tr>
    <
td width="36%" align="center"><input name="submit" type="submit" value="Login"></td>
    <
td align="center">&nbsp;</td>
    </
tr>
</
table>
</
form
PHP-Code:
<?php
$username 
$_POST["usernamen"];
$password md5($_POST["password"]);//Verschlüssltes Passwort
//Datenbankabfrage
$sql "SELECT usernamen, password FROM login WHERE usernamen LIKE '$usernamen' LIMIT 1";
$result mysql_query($sql); 
$row mysql_fetch_object($result);
//Passwortkontrolle
if($row->password == $password)
    {
    
$_SESSION['usernamen'] = $usernamen;
    echo 
"Login erfolgreich. <br> <a href=\"../index.php\">Klicken Sie hier um Zur Hauptseite zurückzugelangen!</a>";
    }
else
    {
    echo 
"Benutzername und/oder Passwort waren falsch. <a href='index.php?content=login/login'>Login</a>";
    }
?>
Auf meinem Online Server funktioniert dies auch Tadellos da nächste Woche über kein Internet verfüge und an der Seite weiterarbeiten wollte habe ich mit nun server2Go heruntergeladen, meine Datenbank über phpMyAdmin Importiert, und die SQL Daten angepasst.
Allerdings will der Login nicht funktionieren. Die Tabellen in der Online und offline DB habe ich auch miteinader abgegelichen, und keine Unterschiede gefunden.
Daran das ich Daten nicht an die DB weitergeben kann, kann es nicht leigen, den mein Formular zum Registrieren funktioniert Offline ohne Probleme. Nun also meine Frage, was könnte hier das Problem sein?

WIe gesagt Online funktionert das Script!
Mit Zitat antworten
  #2 (permalink)  
Alt 28-05-2010, 22:05
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Sonork Beitrag anzeigen
Daran das ich Daten nicht an die DB weitergeben kann, kann es nicht leigen,
Behaupte sowas bitte nur dann, wenn du es überprüft hast - und nicht auf Grund irgendwelcher Überlegungen, die durchaus falsch sein können.

Fehlerbehandlung enthält dein Code gar keine - also fang damit an.

http://peterkropff.de/tutorials/php_...php_fehler.htm
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #3 (permalink)  
Alt 28-05-2010, 22:22
Peacie
 Registrierter Benutzer
Links : Onlinestatus : Peacie ist offline
Registriert seit: Nov 2003
Beiträge: 341
Peacie ist zur Zeit noch ein unbeschriebenes Blatt
Peacie eine Nachricht über ICQ schicken Peacie eine Nachricht über AIM schicken Peacie eine Nachricht über Yahoo! schicken
Standard

PHP-Code:
$username $_POST["usernamen"]; 
..

$sql "SELECT usernamen, password FROM login WHERE usernamen LIKE '$usernamen' LIMIT 1"
Du übernimmst oben zwar $_POST["usernamen"] in $username, verwendest aber im Query $usernamen.
Kann auf dem einen server laufen und auf dem anderen nicht.........
Der SQL Teil wird auf Servern mit register_globals funktionieren.
__________________
Mibau Datendesign - Online Ferienwelt
Mit Zitat antworten
  #4 (permalink)  
Alt 28-05-2010, 22:25
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.593
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Dein Script ist anfällig für SQL-Injections, eine der meist ausgenützten Sicherheitslücken.

PHP: SQL Injection - Manual
Mit Zitat antworten
  #5 (permalink)  
Alt 30-05-2010, 00:03
Sonork
 Registrierter Benutzer
Links : Onlinestatus : Sonork ist offline
Registriert seit: Nov 2009
Beiträge: 48
Sonork befindet sich auf einem aufstrebenden Ast
Standard

Also den Fehler mit dem Login Script konnte ich beheben, und nachdem ich mich einloggen kann, habe ich einen neuen Fehler den ich nicht verstehe, die Abfrage an sich schent zu funktionieren, hier mal der auszug vom Code:

PHP-Code:
$abfrage "SELECT * FROM spiele WHERE user LIKE '$usernamen' ORDER BY spname LIMIT $start, $eintraege_pro_seite";
$ergenis mysql_query($abfrage)
 OR die(
"Error: $abfrage <br>".mysql_error());
while(
$row mysql_fetch_object($ergebnis))
    {
    
$user $row->user;
    
$rating $row->rating;
    
$gfx $row->gfx;
    
$sound $row->sound;
    
$control $row->control;
    
$story $row->story;
    
$os $row->os;
    
$id $row->id;
    
//Der Besucher hat keine E-Mail Adresse angegeben:
    
if($row->spname == "")
       {
       
$spname "<b>$row->spname</b>";
       }
    else
       {
       
//Der User hat eine Email Adresse angegeben:
       
$spname "<a href=\"mailto:$row->email\">$row->spname</a>";
       }

    echo 
"
   <table align=\"center\" border=\"0\" cellspacing=\"0\" cellpadding=\"5\" bgcolor=\"#000000\" width=\"100%\">
   <tr bgcolor=\"#ffffff\">
   <td width='70%'>
   Zu <b>$spname für $os</b>
   </td>
   <td>
    <img src='./bew/logos/3dl.jpg' title='Bewertungslogo für die Grafik'>
   </td>
      <td>
   <img src='./bew/logos/soundl.jpg' title='Bewertungslogo für den Sound und Klang'>
   </td>
      <td>
  <img src='./bew/logos/contrl.jpg' title='Bewertungslogo für die Steuerung'>
   </td>
      <td>
  <img src='./bew/logos/storyl.jpg' title='Bewertungslogo für die Story, Verfolgung des Spielzieles'>
   </td>   </tr>
   <tr bgcolor=\"#ffffff\">
   <td width='70%'>
   von $user <a href=\"index.php?content=bew/votet_edit&id=$id\">(ID: $id)</a>
   </td>
   <td align='center' bgcolor=\"#AAD4EA\">
   $gfx
   </td>
     <td align='center' bgcolor=\"#40A4D8\">
   $sound
   </td>
     <td align='center' bgcolor=\"#AAD4EA\">
   $control
   </td>
      <td align='center' bgcolor=\"#40A4D8\">
   $story
   </td>
   </tr>
  <tr bgcolor=\"#ffffff\">
   <td>
   $rating
   </td><td></td><td></td><td>
   </td><td>
   </td>
   </tr>
   </table><br> <hr> "
;
   } 
Das Problem muss in der while Schleife liegen.. auch hier gilt wieder, Online gehts, Offline nicht!

Geändert von Sonork (30-05-2010 um 00:38 Uhr)
Mit Zitat antworten
  #6 (permalink)  
Alt 30-05-2010, 00:07
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Sonork Beitrag anzeigen
habe ich einen neuen Fehler den ich nicht verstehe
Und du glaubst, wir könnten irgendwas dazu sagen, wenn du noch nicht mal ansatzweise eine Problembeschreibung lieferst?
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #7 (permalink)  
Alt 30-05-2010, 00:07
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.593
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Was geht nicht? Fehlermeldungen? Fehlerbeschreibung? Debug-Ausgaben? Übrigens sehr toll, dass du den Fehler in der while-Schleife vermutest, aber dann den Inhalt davon geheim hältst.

SELECT * sollte man nicht verwenden. Selektiere alle Spalten, die du haben willst, explizit.
Mit Zitat antworten
  #8 (permalink)  
Alt 30-05-2010, 00:35
Sonork
 Registrierter Benutzer
Links : Onlinestatus : Sonork ist offline
Registriert seit: Nov 2009
Beiträge: 48
Sonork befindet sich auf einem aufstrebenden Ast
Standard

Sry ganz vergessen, Mein Problem ist folgende Fehlermeldung:

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\Users\Blackdragon\Desktop\server2go\htdocs\bewertung\bew\votet.php on line 25

Das ist die Coding zeile mit While!!! (Code wurde Oben Editiert)

Geändert von Sonork (30-05-2010 um 00:38 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 30-05-2010, 00:41
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Das ist ein Folgefehler, weil deine Datenbankabfrage fehlschlug - jetzt lerne verflixt noch mal endlich mysql_error zu nutzen!
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #10 (permalink)  
Alt 30-05-2010, 00:48
Sonork
 Registrierter Benutzer
Links : Onlinestatus : Sonork ist offline
Registriert seit: Nov 2009
Beiträge: 48
Sonork befindet sich auf einem aufstrebenden Ast
Standard

du meinst
PHP-Code:
OR die("Error: $abfrage <br>".mysql_error()); 
??
Mit Zitat antworten
  #11 (permalink)  
Alt 30-05-2010, 00:54
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Sonork Beitrag anzeigen
PHP-Code:
$ergenis mysql_query($abfrage)
 OR die(
"Error: $abfrage <br>".mysql_error());
while(
$row mysql_fetch_object($ergebnis)) 
Und jetzt vergleich mal, in welcher Variablen du das Ergebnis deiner Abfrage ablegst, und auf welche Variable du dann mysql_fetch_object anwendest ...

Das ist jetzt das zweite Mal in diesem Thread, dass du es nicht gebacken bekommst, einen Variablennamen zwei mal identisch zu schreiben ... also stell verflucht noch mal endlich das error_reporting auf E_ALL, dann kann PHP dich auf solche Fehler hinweisen.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #12 (permalink)  
Alt 30-05-2010, 04:36
tr-oo-per
 Registrierter Benutzer
Links : Onlinestatus : tr-oo-per ist offline
Registriert seit: May 2010
Ort: at work
Beiträge: 32
tr-oo-per befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
ersetz mal das "$ergenis = ..." durch "$ergebnis = ..." ("b" fehlt). könnte helfen
Sorry, zu spät gesehen. wahsaga hatte es schon auf den punkt gebracht.

Definitiv E_ALL einstellen!!! Bei Fehlern gründlich prüfen was in der betreffenden Zeile los ist (Klammern richtig gesetzt? Variablen definiert/ initialisiert? Funktionsargumente in richtiger Reihenfolge? Google).

Geändert von tr-oo-per (30-05-2010 um 05:28 Uhr)
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Loginscript funktioniert nicht richtig 23isall PHP Developer Forum 32 04-04-2008 21:08
Loginscript geht nicht Teran SQL / Datenbanken 3 12-10-2006 15:25
[JavaScript] nl2br mit replace(), allerdings nicht nach HTML-Tags Lumi HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 4 21-03-2006 13:10
Loginscript klapt nicht :( S@M SQL / Datenbanken 2 13-03-2004 19:56
Loginscript geht nicht DZVO Tutorials 2 04-12-2003 16:43

Themen-Optionen
Thema bewerten
Thema bewerten:

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


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:45 Uhr.