Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Antwort
 
Themen-Optionen
Alt 08.12.2005, 16:04   Nach oben    #1
cyberboy
Gast
 
Beiträge: n/a
Standard Login

Hallo,
ich habe da ein Problem mit einem Login-Script und finde den Fehler einfach nicht.
Der Login klappt gar nicht. Muss irgendwie am Absenden des Forms liegen, aber ich komm nicht drauf. Könnt ihr mir weiterhelfen?
Schon mal danke im voraus...

PHP-Code:
<?php
// SESSION Starten
session_start();
include(
"config.php");
// Prüfen, ob Session zur IP passt
if(!isset($_SESSION['user_ip'])){ $_SESSION['user_ip'] = $_SERVER['REMOTE_ADDR']; }
if(
$_SESSION['user_ip'] != $_SERVER['REMOTE_ADDR'])
{
$fehlermeldung 'Ihre IP gehört nicht zu der verwendeten Session.';
session_destroy();
unset(
$_SESSION);
}
function 
eingaben_pruefen($text)
{
     if(
get_magic_quotes_gpc()) { $text stripslashes($text); } // escapes von macig_quotes aufloesen, wenn aktiviert
     
$text mysql_real_escape_string($text);
return 
$text;
}
// Datenbankverbindung aufbauen
$db mysql_connect($database_server$database_user$database_passwort);
if(!
$db)die("Server nicht erreichbar.");
if(!
mysql_select_db($database_name$db))die("Datenbank nicht erreichbar.");
// Ende Datenbankverbindung aufbauen
// Formulare aufbauen
$form_log .= '
  
   <form action = "index.php" method = "post">
   
   <tr>
   <td><img src="Grafiken/0.gif" width="50"></td>
   <td class="text">Anmeldename:</td>
   <td align="right"><input type="text" id="user" name="user"></td>
   <td><img src="Grafiken/0.gif" width="50"></td>
   </tr>
   <tr>
   <td><img src="Grafiken/0.gif" width="50"></td>
   <td class="text">Passwort:</td>
   <td align="right"><input type="password" id="pass" name="pass"></td>
   <td><img src="Grafiken/0.gif" width="50"></td>
   </tr>
   <tr>
   <td><img src="Grafiken/0.gif" width="50"></td>
   <td></td>
   <td align="right"><input type="image" src="Grafiken/login.jpg" id="anmelden" name="anmelden" width="80" height="39"></td>
   <td><img src="Grafiken/0.gif" width="50"></td>
   </tr>
   </form> 
   
             '
;
// Ende Formulare aufbauen
if(isset($_POST['anmelden']))
{
   
$sql "SELECT * FROM ".$database_table." WHERE user = '".eingaben_pruefen($_POST['user'])."' AND pass = '".md5($_POST['pass'])."' ";
   
$query mysql_query($sql) or die("Query nicht erfolgreich.");
      
// Wenn nicht, Benutzer anlegen
      
if($row mysql_fetch_array($query))
      {
      
$nachricht 'Login erfolgreich!';
      
$_SESSION['user_ip'] = $_SERVER['REMOTE_ADDR'];
      
$_SESSION['user_name'] = $row['user'];
      
$_SESSION['user_id'] = $row['id'];
      
$_SESSION['user_email'] = $row['nname'];
      }
      else{ 
$fehlermeldung 'Benutzername oder Passwort nicht korrekt.';}
}
if(isset(
$_SESSION['user_id']))
{
$login 'Sie sind angemeldet als '.$_SESSION['user_name'].'.<br /><a href="index.php?action=abmelden">abmelden</a>';
}
else {
$login $form_log;}
// Ausgabe in HTML Grundgerüst
echo '
<html>
<head>
 <title>titel</title>
 <link href="website.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="background-color:FFFFFF">
 
 <tr align="center">
  <td>&nbsp;</td>
     <td>&nbsp;</td>
 </tr>
 <tr style="background-color:0083D6">
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td><img src="Grafiken/0.gif" height="30"></td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
 </tr>
 <tr>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td><img src="Grafiken/0.gif" height="50"></td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
 </tr>
 <tr align="center">
  <table width="100%" border="0" cellspacing="0" cellpadding="0" style="background-color:FFFFFF">
  <tr>
  <td><img src="Grafiken/0.gif" height="1"></td>
  <td width="1"><img src="Grafiken/0.gif" height="1"></td>
  <td width="400" style="background-color:000000"><img src="Grafiken/0.gif" height="1"></td>
  <td width="1"><img src="Grafiken/0.gif" height="1"></td>
  <td><img src="Grafiken/0.gif" height="1"></td>
  </tr>
  </table>
  <table width="100%" border="0" cellspacing="0" cellpadding="0" style="background-color:FFFFFF">
  <tr>
  <td>&nbsp;</td>
  <td width="1" style="background-color:000000"></td>
  <td align="center" width="400" class="text" style="background-color:E0E0E0">
   <table width="100%" border="0" cellspacing="0" cellpadding="0">
   <tr>
   <td><img src="Grafiken/0.gif" height="20">
   '
.$nachricht.'
   '
.$fehlermeldung.'
   </td>
   <td></td>
   <td></td>
   <td></td>
   </tr>
       <tr>
        '
.$login.'
   </tr>
   <tr>
   <td><img src="Grafiken/0.gif" height="20"></td>
   <td></td>
   <td></td>
   <td></td>
   </tr>
   </table>
  </td>
  <td width="1" style="background-color:000000"></td>
  <td>&nbsp;</td>
  </tr>
  </table>
  <table width="100%" border="0" cellspacing="0" cellpadding="0" style="background-color:FFFFFF">
  <tr>
  <td><img src="Grafiken/0.gif" height="1"></td>
  <td width="1"><img src="Grafiken/0.gif" height="1"></td>
  <td width="400" style="background-color:000000"><img src="Grafiken/0.gif" height="1"></td>
  <td width="1"><img src="Grafiken/0.gif" height="1"></td>
  <td><img src="Grafiken/0.gif" height="1"></td>
  </tr>
  </table>
  
  </tr>            
 <tr>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td><img src="Grafiken/0.gif" height="50"></td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
 </tr>
 <tr>
  <table width="100%" border="0" cellspacing="0" cellpadding="0" style="background-color:FFFFFF">
  </table>
 </tr>
</table>
</body>
</html>
     '
;
?>
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 08.12.2005, 16:12   Nach oben    #2
Ben
Erfahrener Benutzer
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.800
Standard

Lasst dir mal mit
PHP-Code:
echo '<pre>'
print_r($_POST); 
echo 
'</pre>'
die Daten ausgeben, die per Formular versendet werden.

Eine etwas genauere Fehlerbeschreibung wäre auch nützlich.
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 08.12.2005, 17:47   Nach oben    #3
cyberboy
Gast
 
Beiträge: n/a
Standard

Das Problem hab ich insofern lösen können, indem ich den grafischen Button rausgenommen habe und stattdessen als type submit angegeben habe. Und nun geht's...weiß einer wieso das so ist?

Und noch eine Frage:
Wie kann ich eigentlich nach dem Login den User automatisch auf eine andere Seite schicken?

Hab's mit der Header-Weiterleitung probiert..


header('Location: http://domain.de/sess/testseite.php');
exit();

..aber da gibt er mir nur folgenden Fehler aus:

Warning: Cannot modify header information - headers already sent by (output started at /is/htdocs/wp1244702_SXCA4Z0D0O/www/domain.de/sess/config.php:14) in /is/htdocs/wp1244702_SXCA4Z0D0O/www/domain.de/sess/index.php on line 69
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 08.12.2005, 18:39   Nach oben    #4
Yang
Neuer Benutzer
 
Benutzerbild von Yang
 
Registriert seit: 28.11.2005
Beiträge: 9
Standard

da steht doch warum es nicht geht:
irgendwo in der config.php steht eine ausgabe (print/echo/printf)
vor einem cookie, header und session start darf keine ausgbe an den browser erfolgen. kein html-code, kein leerzeichen vor dem <?php, kein print/echo/printf.

entferne die ausgabe aus der config.php und fertig
Yang ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 08.12.2005, 19:10   Nach oben    #5
Jay
Gast
 
Beiträge: n/a
Standard

@cyberboy

Schreib dir doch ne funktion a la:
PHP-Code:
<?php
function redirect($location) {
    if (
headers_sent()) {
    
?>
        <script type="text/javascript>">
        <!--
            window.location.href = "<?=$location;?>";
        // -->
        </script>
        <noscript>
        <meta http-equiv="refresh" content="0;url=<?=$location;?>" />
        </noscript>
    <?php
    
}
    else {
        
header ("Location: {$location}");
    }
}
Habe die funktion nicht getestet (gleich im Webformular geschrieben), aber so in der Art müsste das funktionieren.

In deiner konfigurations datei muss nich unbedingt eine ausgabe mit echo order so erfolgen es reicht auch wenn eine leerzeile oder leerzeichen vor den <?php tags steht.

Geändert von Jay (08.12.2005 um 19:19 Uhr).
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 09.12.2005, 11:43   Nach oben    #6
WarrenFaith
Mensch
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.793
Standard

error_reporting(E_ALL);
dann die fehler beseitigen
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 13.12.2005, 14:23   Nach oben    #7
cyberboy
Gast
 
Beiträge: n/a
Standard

Weiß einer von euch, warum das oben nicht mit der Grafik als Button funktioniert sondern nur mit dem Submit-Type?

HTML-Code:
<input type="image" src="Grafiken/login.jpg" id="anmelden" name="anmelden" width="80" height="39">
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 13.12.2005, 14:54   Nach oben    #8
DasMööp
Erfahrener Benutzer
 
Registriert seit: 14.12.2004
Beiträge: 212
Standard

Ab PHP5

PHP-Code:
error_reporting(E_ALL STRICT); 
Versuch mal:
HTML-Code:
<form>
<button type="submit" name="button"><img src="images/ie.gif" width=36 height=36 border="0"></button> 
</form>
__________________
Das Leben ist zwar bloß ein Adventure-Game, aber die Grafik ist verdammt gut.
Ich such immer noch den Cheat für unlimited money!
DasMööp ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 13.12.2005, 14:56   Nach oben    #9
Lars
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

HTML-Code:
<input type="submit" value="" style="background-image: url('bild.jpg'); height: 20px; width: 40px;" />
__________________
Gedanken aus Draht stricken einen Zaun.
Lars ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 13.12.2005, 15:16   Nach oben    #10
cyberboy
Gast
 
Beiträge: n/a
Standard

Das mit dem Button hab ich auch schon probiert, aber das geht leider nicht, weil das auch nicht alle Browser mitmachen.

Und über CSS hab ich's grad probiert, aber das funzt leider auch nicht
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 13.12.2005, 15:29   Nach oben    #11
cyberboy
Gast
 
Beiträge: n/a
Standard

Hab das Problem jetzt über ein input type="hidden" gelöst, indem ich dann die Variable übermittelt habe. Mit dem image-Type scheint das nicht zu funktionieren.
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 13.12.2005, 16:30   Nach oben    #12
Lars
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

http://localhost/documents/selfhtml/....htm#grafische
Vielleicht hilft dir das ein wenig weiter.
__________________
Gedanken aus Draht stricken einen Zaun.
Lars ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


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

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 Aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Login an Server karabey PHP-Programmierung 22 01.04.2006 16:26
Unterscheidung zwischen Groß-und Kleinschreibung beim Login cyberboy Datenbanken 6 22.12.2005 12:05
Probleme mit diesem Forum (Login) CIX88 Plauderecke 50 24.08.2005 09:28
Login sicher? spirit PHP-Programmierung 5 18.05.2005 22:00
login probleme pago PHP-Programmierung 3 28.03.2005 19:34


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:43 Uhr.

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.7.2, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.0.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44