kostenloser Webspace werbefrei: lima-city


Erneutes Problem mit Login-Script

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    rock4life

    Kostenloser Webspace von rock4life

    rock4life hat kostenlosen Webspace.

    hallo allerseits,
    ich habe auf meiner Seite http://rock4life.lima-city.de
    auf der startseite ein Login ...wenn ich mich einloggen will oder registrieren will kommt ein fehler aber ich kann ich nicht beheben ....

    Warning: Cannot modify header information - headers already sent by (output started at /home/webpages/lima-city/rock4life/html/login.php:17) in /home/webpages/lima-city/rock4life/html/login.php on line 90
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Gleiche Fehlermeldung wie gestern, also auch gleicher Fehler wie gestern.
    Und gewöhn dir BITTE an, Quellcode zu posten.
    Sonst kann man echt nur blind in die Gegend raten.

    Poste mal den Quellcode der Seite, die dann nach dem Login aufgerufen wird.

    Vermutlich steht session_start() wieder nicht ganz oben an erster Stelle.
  4. Autor dieses Themas

    rock4life

    Kostenloser Webspace von rock4life

    rock4life hat kostenlosen Webspace.

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <!-- +-----------------------------------------------------------------+ -->
    <!--
    +---------------------------------------------------------+
    | |
    | Copyright by RaveShowNetworkZ 2oo6 |
    | |
    | Design by : RAVESHOW |
    | Code by : RAVESHOW |
    | |
    | Contact: raveshow@web.de |
    | |
    | http://raveshow.funpic.de/ |
    +---------------------------------------------------------+
    -->
    <!-- +----------------------------------------------------------------+ -->
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <link rel="stylesheet" type="text/css" href="login.css">
    </head>
    
    <body>
    <center>
    <table>
    <form action="<? $PHP_SELF; ?>" method="post">
    <tr>
    <td colspan="2" align="left"><b>Registrierung</b><hr></td>
    </tr>
    <tr>
    <td>Benutzername:&nbsp;</td>
    <td><input type="text" size="25" name="neuer_benutzer"></td>
    </tr>
    <tr>
    <td>Passwort:&nbsp;</td>
    <td><input type="password" size="25" name="neues_passwort"></td>
    </tr>
    <tr>
    <td>e-Mail:&nbsp;</td>
    <td><input type="text" size="25" name="neue_email"></td>
    </tr>
    <tr>
    <td colspan="2" align="left"><hr></td>
    </tr>
    <tr>
    <td><a href="javascript:history.go(-1);">Zur&uuml;ck</a></td><td colspan="2" align="right"><input type="submit" value="Registrieren" name="reg"></td>
    </tr>
    <tr>
    <td align="center" colspan="2">
    <?
    // Ein paar Variabeln bestimmen...
    
    $var_user = $_POST["neuer_benutzer"];
    $var_pass = $_POST["neues_passwort"];
    $var_mail = $_POST["neue_email"];
    $datei = "benutzer/".$var_user.".lif";
    $vorhanden = file_exists($datei);
    
    // Wenn die Datei vorhanden ist soll er nicht weitermachen und einen Fehler ausgeben... andernfalls
    // macht er mit der Prozedur weiter...
    
    if(!$vorhanden) {
    
    // Wenn der Registrieren Button gedrückt wurde macht er weiter...
    
    if(isset($_POST["reg"])) {
    
    // Einmal kurz prüfen ob die wichtigen Felder auch nicht leer waren...
    
    if(!empty($var_user) && !empty($var_pass)) {
    
    // Neue Datei schreiben mit Benutzerinformationen...
    
    $eintrag = $var_user."§§".md5($var_pass)."§§".$var_mail;
    $f = fopen($datei, "w");
    fwrite($f, $eintrag);
    fclose($f);
    
    echo "Benutzer wurde hinzugefügt!";
    header ("Refresh: 2, url=login.php");
    } else {
    echo "Benutzer konnte nicht hinzugefügt werden!";
    }
    }
    } else {
    echo "Benutzer ist bereits vorhanden!";
    }
    ?>
    </td>
    </tr>
    </form>
    </table>
    </center>
    </body>
    </html>


    Hier gibt es aber kein session start

    Beitrag zuletzt geändert: 18.2.2009 11:13:56 von rock4life
  5. djfun

    Co-Admin Kostenloser Webspace von djfun

    djfun hat kostenlosen Webspace.

    zwar kein session_start(), allerdings steht header ("Refresh: 2, url=login.php"); mittendrin.. siehe auch http://de.php.net/manual/de/function.header.php
    da darf auch keine ausgabe davor stehen..

    Beitrag zuletzt geändert: 18.2.2009 13:27:17 von djfun
  6. Autor dieses Themas

    rock4life

    Kostenloser Webspace von rock4life

    rock4life hat kostenlosen Webspace.

    in welcher Zeile soll es denn sonst stehen ?
  7. projektverwaltung

    projektverwaltung hat kostenlosen Webspace.

    unter dieser Zeile sokkte es noch gehn:
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">


    aber mach die weiterleitung besser mit javascript oder lass einfach einen Link anzeigen
  8. Autor dieses Themas

    rock4life

    Kostenloser Webspace von rock4life

    rock4life hat kostenlosen Webspace.

    ich bekomms einfach nicht hin :confused: ....
    kann mir mal jemand den korekten quelltext machen ??
  9. Du musst den PHP Quelltext vor den HTML Quelltext schreiben. Danach musst du die header - Funktion ein paar Zeilen nach oben verschieben. Die Ausgaben kannst du in die Variable $output schreiben und danach im HTML Teil ausgeben:

    <?
    // Ein paar Variabeln bestimmen...
    
    $var_user = $_POST["neuer_benutzer"];
    $var_pass = $_POST["neues_passwort"];
    $var_mail = $_POST["neue_email"];
    $datei = "benutzer/".$var_user.".lif";
    $vorhanden = file_exists($datei);
    
    // Wenn die Datei vorhanden ist soll er nicht weitermachen und einen Fehler ausgeben... andernfalls
    // macht er mit der Prozedur weiter...
    
    if(!$vorhanden) {
    
    // Wenn der Registrieren Button gedrückt wurde macht er weiter...
    
    if(isset($_POST["reg"])) {
    
    // Einmal kurz prüfen ob die wichtigen Felder auch nicht leer waren...
    
    if(!empty($var_user) && !empty($var_pass)) {
    
    header ("Refresh: 2, url=login.php");
    
    // Neue Datei schreiben mit Benutzerinformationen...
    
    $eintrag = $var_user."§§".md5($var_pass)."§§".$var_mail;
    $f = fopen($datei, "w");
    fwrite($f, $eintrag);
    fclose($f);
    
    $output = "Benutzer wurde hinzugefügt!";
    } else {
    $output = "Benutzer konnte nicht hinzugefügt werden!";
    }
    }
    } else {
    $output = "Benutzer ist bereits vorhanden!";
    }
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <!-- +-----------------------------------------------------------------+ -->
    <!--
    +---------------------------------------------------------+
    | |
    | Copyright by RaveShowNetworkZ 2oo6 |
    | |
    | Design by : RAVESHOW |
    | Code by : RAVESHOW |
    | |
    | Contact: raveshow@web.de |
    | |
    | http://raveshow.funpic.de/ |
    +---------------------------------------------------------+
    -->
    <!-- +----------------------------------------------------------------+ -->
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <link rel="stylesheet" type="text/css" href="login.css">
    </head>
    
    <body>
    <center>
    <table>
    <form action="<? $PHP_SELF; ?>" method="post">
    <tr>
    <td colspan="2" align="left"><b>Registrierung</b><hr></td>
    </tr>
    <tr>
    <td>Benutzername:&nbsp;</td>
    <td><input type="text" size="25" name="neuer_benutzer"></td>
    </tr>
    <tr>
    <td>Passwort:&nbsp;</td>
    <td><input type="password" size="25" name="neues_passwort"></td>
    </tr>
    <tr>
    <td>e-Mail:&nbsp;</td>
    <td><input type="text" size="25" name="neue_email"></td>
    </tr>
    <tr>
    <td colspan="2" align="left"><hr></td>
    </tr>
    <tr>
    <td><a href="javascript:history.go(-1);">Zur&uuml;ck</a></td><td colspan="2" align="right"><input type="submit" value="Registrieren" name="reg"></td>
    </tr>
    <tr>
    <td align="center" colspan="2">
    <?php echo $output; ?>
    </td>
    </tr>
    </form>
    </table>
    </center>
    </body>
    </html>
  10. Autor dieses Themas

    rock4life

    Kostenloser Webspace von rock4life

    rock4life hat kostenlosen Webspace.

    Vielen Dank das klappt...aber ich bekomme es mit meiner login.php nicht hin........
    kannst du mir das bitte nochmal so machen wie jetzte...wäre super toll !!

    <? session_start(); ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <!-- +-----------------------------------------------------------------+ -->
    <!--
    +---------------------------------------------------------+
    | |
    | Copyright by RaveShowNetworkZ 2oo6 |
    | |
    | Design by : RAVESHOW |
    | Code by : RAVESHOW |
    | |
    | Contact: raveshow@web.de |
    | |
    | http://raveshow.funpic.de/ |
    +---------------------------------------------------------+
    -->
    <!-- +----------------------------------------------------------------+ -->
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <link rel="stylesheet" type="text/css" href="login.css">
    </head>
    
    <body>
    <center>
    <table>
    <form action="<? $PHP_SELF; ?>" method="post">
    <tr>
    <td colspan="2" align="left"><b>Login</b><hr></td>
    </tr>
    <tr>
    <td>Benutzername:&nbsp;</td>
    <td><input type="text" size="25" name="benutzername"></td>
    </tr>
    <tr>
    <td>Passwort:&nbsp;</td>
    <td><input type="password" size="25" name="passwort"></td>
    </tr>
    <tr>
    <td colspan="2" align="left"><hr></td>
    </tr>
    <tr>
    <td colspan="2" align="right"><input type="submit" value="Einloggen" name="login"></td>
    </tr>
    <tr>
    <td colspan="2" align="center">
    <?
    // Falls ein fehler beim einloggen passiert kommt man hier hin...
    
    if(isset($_GET["error"])) {
    echo "Login fehlgeschlagen!";
    }
    
    // Wenn man den Einloggen Button gedrückt hat wird dieser PHP teil ausgeführt...
    
    if(isset($_POST["login"])) {
    
    // Ein paar Variabeln...
    
    $var_usr = $_POST["benutzername"];
    $var_pwd = $_POST["passwort"];
    $var_f = "benutzer/".$var_usr.".lif";
    
    // Wenn die Datei existiert soll er weitermachen...
    
    if(file_exists($var_f)) {
    
    // Jetzt wird die Datei in ein Array eingelesen...
    
    $check = array();
    $datei = fopen($var_f, "r");
    $lesen = fgets($datei, 1024);
    array_push($check, $lesen);
    fclose($datei);
    
    $lif = explode("§§", $check[0]);
    
    // Checken ob die im Formular eingegebenen Daten mit denen aus der Datei übereinstimmen...
    
    if($var_usr == $lif[0] && md5($var_pwd) == $lif[1]) {
    
    // Wenn alles richtig war bis jetzt werden die Daten aus der Datein in SessionVariabeln übergeben...
    
    $_SESSION["lif_benutzer"] = $lif[0];
    $_SESSION["lif_passwort"] = $lif[1];
    $_SESSION["lif_email"] = $lif[2];
    // Nun wird man zur geschützten Seite verfrachtet...
    header("Location:d_1.html");
    // Wenn die Daten nicht stimmen wird man zur Startseite zurückverfrachtet...
    } else {
    header("Location:dd.html");
    }
    } else {
    // Wird ausgegeben wenn die .lif Datei des Benutzers nicht existiert...
    echo "Den Benutzer: <b>$var_usr</b> gibt es nicht!";
    }
    }
    ?>
    </td>
    </tr>
    <tr>
    <td colspan="2" align="left"><a href="createnew.php">Registrieren?</a></td>
    </tr>
    </form>
    </table>
    </center>
    </body>
    </html>
  11. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!