Login bereitet Fehler PHP

  • Derzeit bin ich dabei ein Login System zu schreiben was noch nicht richtig funktioniert. Sobald ich mich Einlogge und die Daten Richtig sind erhalte ich eine weiße seite von auth.php wo liegt evtl der Fehler ?


    auth.php

    <?php
    $auth = false;
    if (isset($_POST[name]) && isset($_POST[password])) {
    mysql_connect('localhost', 'samp','zensiert') or die ('Unable to connect to server.');
    mysql_select_db('samp') or die ('Unable to select database.');
    $sql = "SELECT * FROM users WHERE name = '$_POST[name]' AND password=MD5('$_POST[password]')";



    $result = mysql_query($sql) or die ('Unable to execute query.');
    $num = mysql_numrows($result);
    if ($num != 0) {
    $auth = true;
    }

    }
    if (! $auth) {



    echo "Authorization Failed";
    exit;
    }
    else if ($auth = true) {
    $sql2 = "SELECT ACCESS FROM users WHERE name = '$_POST[name]'";
    $result2 = mysql_query($sql2);
    $row = mysql_fetch_array($result2, MYSQL_BOTH);
    if ($row[0] == "Full")
    {
    $auth = "Full";
    ?>
    <meta http-equiv="refresh" content="2;URL=http://ihatelearning.powercalling.net/full.php">
    <?php
    }

    elseif ($row[0] == "View")
    {
    ?>
    <meta http-equiv="refresh" content="2;URL=http://www.dogpile.com">
    <?php
    }

    elseif ($row[0] == "Useradmin")
    {
    $auth = "Useradmin";
    ?>
    <meta http-equiv="refresh" content="2;URL=http://ihatelearning.powercalling.net/useradmin/useradmin.php">
    <?php
    }



    }
    setcookie("author", $auth);



    ?>



  • Zeig bitte mal die Error.log, ist am Handy schwer nachzuvollziehen. Die MYSQL Query dürfte mit dem $POST dadrinne eig auch nicht klappen, du musst den Text erst mit einem ". unterbrechen.


    Also:


    • $sql2 = "SELECT ACCESS FROM users WHERE name = '".$_POST[name]."'";

    Einmal editiert, zuletzt von Zim-on ()

  • Die Errorlog gibt folgendes aus


    Code
    [Wed Feb 15 12:33:20.442566 2017] [proxy_fcgi:error] [pid 12502:tid 140019492636416] [client 31.18.53.78:52594] AH01071: Got error 'PHP message: PHP Warning:  mysql_fetch_array() expects parameter 1 to be resource, boolean given in /var/www/vhosts/samp-gaming.de/cp.samp-gaming.de/auth.php on line 23\n', referer: http://cp.samp-gaming.de/
  • Leider nicht


    Code
    [Wed Feb 15 12:40:41.525439 2017] [proxy_fcgi:error] [pid 12503:tid 140019681453824] [client 31.18.53.78:42343] AH01071: Got error 'PHP message: PHP Warning:  mysql_fetch_array() expects parameter 1 to be resource, boolean given in /var/www/vhosts/samp-gaming.de/cp.samp-gaming.de/auth.php on line 23\n', referer: http://cp.samp-gaming.de/
  • Was ist der unterschied zwischen mysql und mysqli ?

    das i...


    Nein Spaß bei Seite,


    Alle mysql_* Funktionen (z.B. mysql_connect; mysql_query; ..) sind in der PHP 5.6 als veraltet markiert und in PHP 7.0 entfernt worden. MySQLi ist die bessere (neuere und gemaintainte) Version die OOP unterstützt. PDO ist dagegen nur OOP.

    Mit freundlichen Grüßen
    Developer
    Go/Python Developer | ehm. Webdeveloper | Fachinformatiker Anwendungsentwicklung
    Arbeitet in einem cloudigen Umfeld bei einem der größten deutschen Rechenzentrumsbetreibern

  • Meine Meinung nach völlig ausreichend von den Sicherheitsmaßnahmen für normale Webapps.

  • Supi.


    Dann habe ich noch eine frage bzw ein Problem.


    Sobald ich mich einlogge wird das Passwort abgefragt. Dieses wird als richtig anerkannt. Er leitet mich auf home.php weiter die dann nochmal checkt ob der nutzer wirklich eingeloggt ist. Allerdings schmeißt er diesen sofort wieder raus. Ich denke hier ist das Problem irgendwo



    Code
    $sql = mysqli_query($db,"SELECT name FROM users WHERE name='$user_check' ");
  • Du musst dir sicher sein das die SESSION die beim Login-Vorgang gesetzt wird auch mit dem Username der in der MYSQL DB drin ist übereinstimmt, und vorher muss die Session gestartet werden!