mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Di 23.04.2024 21:42 Benutzername: Passwort: Auto-Login

Thema: PHP: Problem mit Login Script vom 08.10.2010


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> PHP: Problem mit Login Script
Autor Nachricht
dr88
Threadersteller

Dabei seit: 14.09.2010
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Fr 08.10.2010 17:59
Titel

PHP: Problem mit Login Script

Antworten mit Zitat Zum Seitenanfang

hey,
bin absoluter neuling auf dem gebiet php und tu mich noch recht schwer. ich bastle grad an nem login script rum, bzw. versuch ich mir daran ein bisschen php zu erklären und zu sehen was man alles damit anstellen kann. ich hab das aus irgendeinem forum das script, aber ich glaube das ist das gleiche wie das von selfthtml, bin mir aber nicht ganz sicher.

auf jedenfall funktioniert es noch nicht richtig, ich bekommen mich nicht eingeloggt, es tut sich gar nichts, werde nicht auf den geschützten bereich weitergeleitet sprich eingeloggt, es wird keine fehlermeldung angezeigt in form von einer 404 seite, das iwie was falsch wäre, ich bleib einfach auf der startseite und fertig.

wäre nett wenn mir jmd einen rat geben könnte, danke =)

index2.php
Code:
<?php
     if ($_SERVER['REQUEST_METHOD'] == 'POST') {
      session_start();

      $username = $_POST['username'];
      $passwort = $_POST['passwort'];

      $hostname = $_SERVER['HTTP_HOST'];
      $path = dirname($_SERVER['PHP_SELF']);

      // Benutzername und Passwort werden überprüft
      if ($username == 'test' && $passwort == 'test') {
       $_SESSION['angemeldet'] = true;

       // Weiterleitung zur geschützten Startseite
       if ($_SERVER['SERVER_PROTOCOL'] == 'HTTP/1.1') {
        if (php_sapi_name() == 'cgi') {
         header('Status: 303 See Other');
         }
        else {
         header('HTTP/1.1 303 See Other');
         }
        }

       header('Location: http://dominikreinhard.do.funpic.de'.$hostname.($path == '/' ? '' : $path).'/test.php');
       exit;
       }
      }
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
.
.
.
.
.
<br /><form action="index2.php" method="post">
        <table background="images/border_bg.jpg" width="155" style="border-style:solid; border-width:1px; border-color:#000;" cellspacing="0">
        <tr>
        <th colspan="2"><img src="images/login.png" /></th>
        </tr>
        <tr>
        <td height="21" width="64">&nbsp;Name:</td><td><input type="text" name="username" size="10" maxlength="250" style="border-style:solid; border-width:1px; border-color:#000;"></td>
        </tr>
        <tr>
        <td height="21" width="64">&nbsp;Passwort:</td><td><input type="text" name="password" size="10" maxlength="250" style="border-style:solid; border-width:1px; border-color:#000;"></td>
        </tr>
        <tr>
        <td></td><td align="right"><div style="margin-right:6px; margin-bottom:5px; margin-top:4px;"><input name="submit" type="image" src="images/go.png" value="login" /></div></td>
        </tr>
        </table>
        </form>


logout.php
Code:
 <?php
     session_start();
     session_destroy();

     $hostname = $_SERVER['HTTP_HOST'];
     $path = dirname($_SERVER['PHP_SELF']);

     header('Location: http://dominikreinhard.do.funpic.de'.$hostname.($path == '/' ? '' : $path).'/login.php');
?>


auth.php
Code:
 <?php
     session_start();

     $hostname = $_SERVER['HTTP_HOST'];
     $path = dirname($_SERVER['PHP_SELF']);

     if (!isset($_SESSION['angemeldet']) || !$_SESSION['angemeldet']) {
      header('Location: http://dominikreinhard.do.funpic.de'.$hostname.($path == '/' ? '' : $path).'/index2.php');
      exit;
      }
?>


test.php
Code:
 <?php include('auth.php'); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
test
</body>
</html>


Zuletzt bearbeitet von dr88 am Fr 08.10.2010 18:01, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Net Works

Dabei seit: 11.09.2010
Ort: Neustadt
Alter: -
Geschlecht: -
Verfasst Fr 08.10.2010 23:28
Titel

Antworten mit Zitat Zum Seitenanfang

Hi.
Nur überflogen... 1 Fehler ist auf jeden Fall:
Code:
$passwort = $_POST['passwort'];


Und der Name des Textfeldes ist "password" mit d.

Versuche, Variablennamen immer mit Copy & Paste zu vervielfältigen und schaue, wenn Du keine Fehlermeldung bekommst, immer nach Schreibweisen der Variablen oder auch Nummern der Array-Indize. Schreibst Du eine Funktion beim Aufruf verkehrt, bekommst Du z.Bsp. eine Fehlermeldung.
Gern gemacht wird auch anstatt des Gleichheits-Operators (==) in if-Abfragen ein Zuweisungsoperator (=) zu nutzen. Die Liste lässt sich beliebig erweitern und man braucht manchmal Stunden, bis man es herausgefunden hat. Gerade bei einem "d" statt einem "t" kann es Dir passieren, dass Du hunderttausendmal drüber schaust und es einfach nicht siehst.
Das ist zum Teil eine sehr lustige Sache, die im Gehirn abgeht, So ist es zum Biespeil gnaz egal, wie die Bchustaebn in eniem Wrot geordent snid, solgnae der etsre und ltzete Buchstabe stimmt Lächel oder herauszufinden, wieviele "The" oder "this" (weiss nicht mehr genau) in einem Textabschnitt vorkommen, geht auch nich ^^

Ich sag immer: Die schlimmsten Fehler sind die, die keine sind. Oftmals sind Scripts / Codeblöcke korrekt, aber es wird Dir vielleicht nichts angezeigt, weil ein Name nicht stimmt, oder eine Farbe in der Hintergrundfarbe ist (welche sich vielleicht in irgendeiner Unterfunktion verbirgt) etc.

Grüße
Lars


Zuletzt bearbeitet von Net Works am Fr 08.10.2010 23:45, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Sa 09.10.2010 11:58
Titel

Antworten mit Zitat Zum Seitenanfang

Verwendet man eine ordentliche IDE (wie bspw. netbeans - http://netbeans.org), können solche Fehler nicht passieren, weil Vertipper als undeklarierte und ungenutzte Variablen markiert werden. Die Verwendung des Zuweisungsoperators anstelle des Vergleichsoperators ebenfalls.


Zitat:
Ich sag immer: Die schlimmsten Fehler sind die, die keine sind. Oftmals sind Scripts / Codeblöcke korrekt, aber es wird Dir vielleicht nichts angezeigt, weil ein Name nicht stimmt, oder eine Farbe in der Hintergrundfarbe ist (welche sich vielleicht in irgendeiner Unterfunktion verbirgt) etc.


Dafür gibt es Debugger (wie bspw. xdebug), die es Dir ermöglichen, Deinen Code - ja, zu debuggen.


Zuletzt bearbeitet von bacon am Sa 09.10.2010 11:59, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
dr88
Threadersteller

Dabei seit: 14.09.2010
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Sa 09.10.2010 22:00
Titel

Antworten mit Zitat Zum Seitenanfang

danke für eure antworten, ich hab den login bereich jetzt am laufen, hab viel gesucht, rumprobiert scripts miteinander kombiniert, jetzt klappts. zumindest für meine zwecke ist es ausreichend. als neuling hat man es wie immer nicht leicht auf dem gebiet, ist am anfang doch recht komplex, php ist nicht so einfach, aber das dachte ich auch von html, css, studieren, autofahren und kochen und jetzt ist alles leicht *zwinker*
  View user's profile Private Nachricht senden
 
Ähnliche Themen PHP Login Script
Login Script
PHP LogIn Script mit Statistik
Kunden Login Script
Login Script Hilfe!
Script für Login mit Zeitguthaben gesucht
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.