bin neu und hab noch keine ahnung von php

  • Hollo erstmal,
    ich bin jetzt dabei meine hp umzubauen und ich würde auch gerne eine loginseite machen, nur leider weiß ich nicht, wohin ich die logindaten schicken soll. Also wenn sich die leite einloggen, werden ihre daten ja zu einer seite geschickt, wo ihre daten überprüft werden und ich weiß eben nicht wie ich diese seite bauen soll.

    Ich habe einfach keine ahnung wie ich das alles machen soll, kann mir jemand helfen? Bitte.

  • Das Formular wird mittels action="" an eine weitere Seite geschickt.
    Wie sie heisst ist egal, hauptsache der Pfad stimmt.
    nehmen wir also an, die Seite heisst login.php
    Dann steht also im Formular:

    Code
    <form action="login.php" method="post">


    Die Daten werden mittels POST an die login.php gesendet.

    Wenn du also nach Name und Passwort fragst, dann wird das komplette Formular so aussehen

    Die login.php kann nun die Daten ganz einfach auswerten.
    Es ist wichtig dass du bei Formularen, die du auswerten moechtest, nicht vergisst name="" zu setzen, da du nur dadurch auf die Daten zugreifen kannst.

    login.php


    Da du in deinem Formular die Attribute name="" verteilt hast, kannst du mittels $_POST[''] auf die einzelnen Felder zugreifen.
    Anschliessend noch ueberpruefen, ob die Felder ausgefuellt sind, und das Passwort sowie den User ueberpruefen.
    Wenn das Passwort und der User richtig sind, wird die sichere Seite includet.

    Hoffe ich konnte helfen, bei Fragen einfach Posten

    PS: Es gibt bessere Versionen von Login Systemen, jedoch wollt ich das einfachste zeigen, da sessions und cookies vielleicht noch kompliziert sind, sowie md5 Verschluesselung und Vergleich mit einer Datenbankl

  • ok, aber ich verstehe nicht, wie ich das machen soll wenn sich jemand anmeldet, so das der sich gleich einloggen kann. ich will ja nicht nur für eine person den zugang ermöglichen.

    das mit dem loginfeldern sieht bei mir jetzt mal so aus

    <p align=center><FONT face="Comic Sans MS" color=blue size=3>Login<table class="center">
    <tr>
    <td class="center"><form action="login.php" method="post">
    <input type="text" name="username" value="Username" onFocus="if(this.value=='Username') this.value='';">

    <input type="password" name="passwort" value="Passwort" onFocus="if(this.value=='Passwort') this.value='';">
    <input type="submit" name="login" value="Login" /></form><font face="Comic Sans MS" size="2">Passwort vergessen?</td>

    haut das hin? und wenn ja wie mach ich das nun das sich die grad angemeldeten gleich einloggen können?

    Danke schonmal das du mir hilfst

  • Du meinst, die die schon eingeloggst sind, sich NICHT mehr einloggen muessen?
    Da musst du dir mal Sessions angucken.
    Und wenn du das mit mehreren Usern machen willst, dann erweiterst du einfach die If-Abfrage oder regelst es ueber .txt oder ueber MySQL.
    Ich arbeite generell immer mit MySQL, weils handlicher ist und schneller.
    Und einfach!

  • nein ich mein, das die sich gerade angemeldet haben, wie im forum, sich gleich einloggen können. Ohne das ich ihnen die befugniss dazu geben oder sie eintragen muss.
    von MySQL habe ich schon was gehört, wie mache ich das denn?

  • Wenn man ueber ein Formular jemanden registriert, und User + passwort in eine Datenbank schreibt, kann man sich gleich darueber registrieren, da man den Input mit der Datenbank vergleicht.
    Bitte guck dir ein paar Tutorials an.

  • ich stör einfach nochmal, da mein login noch nich ganz klappt, da er mir immer eine fehlermeldung gibt, vllt weiß jemand von euch rat

    if (!logged_in())

    er findet das logged_in.php nicht, also wollte ich den kompletten pfad angeben, aber wie? dann meint er immer syntax error

    bitte helft mir

  • damit rufst du eine funktion auf und irgendwie geht das so gar nicht was du machen willlst
    also bei dir wäre jetzt logged_in() eine funktion
    wenn es eine funktion ist dann muss diese entweder (hier)true oder false zurückliefern. wenn es das tut ist alles in ordnung.
    ausserdem kann er keine *.php dateien automatisch finden
    du musst die schon entweder einbinden (mit include() oder require() ) oder als ziel in einem formularangeben
    du kannst einfach nur target="logged_in.php" nehmen, WENN die datei in dem gleichen ordner liegt in der auch das script ausgeführt wird, SONST nimmst du target="login/logged_in.php" oder target="http://www.adresse.de/home/login/logged_in.php"
    PS: hab mir jetzt nich alles durchgelesen, aber vll hilft das ja shconmal ^^

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • ja also das war nur ein ausschnitt von meinem code, ganz sieht der so aus

  • hmm poste mal die funktionen login() und logged_in()
    únd du musst klammern für deine bedingungen setzen (allein für die überischt)
    if (blabla) {
    echo "bla";
    else {
    echo "blubb";
    }

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • also login()
    war das vorhin (letzter beitrag)

    logged_in()

  • das problem ist, mit logged_in kannst du nicht überprüfen, ob ein benutzer eingeloggt ist, wenn diese funktion gar nicht existiert!
    mach das mal so:

    1. das formular (kreigst du ja selbst hin eigentlich)

    Code
    <form name="form1" action="login.php" method="post">
    <input type="text" name="name">
    
    
    <input type="password" name="pw">
    
    
    <input type="submit" name="submit" value="Ab Damit">
    </form>


    2. die seite login.php


    3. sicher.php

    PHP
    <?php
    session_start();
    if($_SESSION['login'] && $_SESSION['user'] == "admin") {
    echo "guten tag, dies ist eine sichere seite";
    }
    else {
    die("Sie sind nichteingeloggt");
    }
    ?>


    so in etaw geht das, habs nicht getestet und einfach eben schnel lgeschrieben, es können also tipfehler und sowas drin sein

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • ne das problem ist, das er die loggt_in datei nicht findet und ich den ganzen fad angeben wollte, aber nicht weiß wie. ich habe ja eine datei, die kontrolliert, ob jemand eingeloggt ist

  • ok jetzt habe ich das problem gelöst, aber ein anderes ist entstanden. wenn ich mich jetzt anmelden will, zu welcher datei muss ich das schicken?

  • das kann man schlecht so erklären und wieso das rad 2 mal erfinden ? es gibt sehr viele ute tutorials, einfach mal googlen

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!