Passworteingabe in Html/php ?



  • $user und $pass existieren doch gar nicht. Schau dir mal $_POST an.



  • Die Bedeutung von Post ist Daten zu übertragen, sorry muss Ich alles erst nachlesen. In der Datei pwd.php wird doch
    zugewiesen ? Müssen $user und $pass noch deklariert werden ?
    Was bedeutet das Dollarzeichen ? Variablendeklaration ?
    Wieso wird der Teil pwd.php inkludiert ? aus Sicherheitsgründen ?

    In der index.html sind user und pass doch genannt/zugewiesen ?
    In der Datei inhalt.php werden Sie mit Benutzer und Passwort verknüpft ?
    Falsch ist ja nur ne Abfrage.



  • Kann mir jemand einige Hinweise geben welche Anweisungen fehlen oder Ich ändern soll ?



  • roflo schrieb:

    $user und $pass existieren doch gar nicht. Schau dir mal $_POST an.

    Das.

    Früher wurden für diese Argumente einfach von php aus Variablen angelegt, das war aber sicherheitstechnisch unschön.
    Daher sind sie nur noch in $_POST["user"] und $_REQUEST["user"] . (Es gibt auch noch die Methode GET, die liegen dann in $_GET und auch in $_REQUEST . Es gibt noch mehr Arrays mit Systeminformationen in php...)

    Und das $ zeigt an, dass es sich um Variablen handelt... aber wenn du das nichtmal weißt solltes du dir vielleicht mal ein gutes Buch zu PHP zu Gemüte führen 🙄



  • Danke für den Hinweis, mach Ich
    und hab's scheinbar gelöst, allerdings zeigt er mir jetzt eine leere Seite an
    hab $user und passdurch(pass durch (_POST['user'])

    <?php
    include("pwd.php");
    if (($benutzer == ($_POST['user'])) and ($passwort == ($_POST['pass'])))
    {
    echo"<li><a href=\"startmodul99901.html\">";
    }
    

    ersetzt

    Weiss nicht ob Ich mit echo so verlinken kann.
    Ich bekomme jetzt eine leere Seite angezeigt ?



  • Gut gemeinter Rat, lies ein Buch oder mach dich irgendwo im Netz über Grundlagen schlau...

    EDIT:

    <?php 
    
    include("pwd.php"); 
    
    if($benutzer === $_POST['user'] && $passwort === $_POST['pass']){
        header("Location: http://www.salus457.de/startmodul99901.html");
        die();
    } else { 
        echo "Falsche Zugangsdaten."; 
    }
    

    Hier gibts ein paar Grundlagen

    snwFlake



  • Danke



  • Das Problem dabei ist, dass bei dieser Methode jeder Heinz 'startmodul99901.html' direkt im Browser aufrufen kann, ohne eingeloggt zu sein.



  • Das ist nicht das einzige Problem...ich bin lediglich auf das akuteste eingegangen...und das war Syntax.

    Ohne sich grundlegend mit dem Thema auseinander zu setzen wird er auch nicht weit kommen.



  • das heißt den Quelltext besser in der inhalt.php einbetten ? siehe:

    include("pwd.php");
    if (($benutzer == ($_POST['user'])) and ($passwort == ($_POST['pass'])))
    {
    echo"
    <html>
    <head>
    <meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\" />
    <title>Salus</title>
    </head>
    <body>
    

    So hatte Ich es sowieso gemacht, da die Anleitung das Fallbeispiel von dem Ich den Quelltext hatte es so vorgegeben hatte.
    (Ich hab quasi die Idee für die mir der nette Kollege snwFlake die Anleitung hat zukommen lassen noch nicht umgesetzt.)
    Ich hatte allerdings mit der genau dieser Vorahnung die Bezeichnung für starmodul99901.html bewusst gewählt. Das heißt php zeigt den link ja nicht an. Der Quelltext lässt sich mit rechtsklick nicht auslesen und auf startmodul99901 muss man doch erst mal kommen? Oder liege Ich falsch ?



  • Das ist nicht das einzige Problem...ich bin lediglich auf das akuteste eingegangen...und das war Syntax.

    Ohne sich grundlegend mit dem Thema auseinander zu setzen wird er auch nicht weit kommen.

    Das stimmt vollkommen, was mir bis jetzt geholfen hat ist, - dass Ich andere Sprachen flüssig behersche. - Ich werde php einige Zeit über Bücher, Tutorials z.B den angegeben Link erlernen !



  • PHP läuft auf server side, ohne ftp o.ä. server connection wirst du nicht in der Lage sein PHP-Scripts auszulesen.

    PHP zeigt gar nichts an...das macht HTML. Allerdings auch nicht so wie du es versucht hast.

    echo'<li><a href="/startmodul99901.html">redirect me</a>';
    

    Damit bekommst du einen klickbaren Link als List formatiert.



  • Ja , das war ein Denkfehler ist !Für den Link existiert kein Auslöser



  • Wenn man auf die die Datei zugreifen kann, wird das früher oder später auch jemand tun. Schau dir mal sessions an.



  • ok, die Version ist nicht wirklich sicher, habs glaube Ich kapiert.

    http://www.php-einfach.de/php-tutorial/php-sessions.php



  • $_SESSION? Ist das Tamiflu? Die Qualität im Forum war auch schon höher... 👎



  • wollknäul schrieb:

    Die Qualität im Forum war auch schon höher... 👎

    Durch unregistrierte Trolle ist sie halt leider gesunken...



  • von dem hier verlinkten php-einfach tutorial kann ich nur abraten, es ist grauenhaft veraltet.
    Gute Tutorials sind zum Beispiel http://www.peterkropff.de/site/php/php.htm (für anfänger), http://php-de.github.io/ (etwas mehr erfahrung), http://php.net/manual/de/tutorial.firstpage.php (die offizielle Doku)

    Alles 3 wirklich sehr gute Basis für php, php-einfach ist vielleicht einfach, dafür aber auch einfach unbrauchbar


Anmelden zum Antworten