Ich benutze XAMPP für mySQL und Apache Webserver. Die Datenbank scheint verbunden zu sein, aber wenn ich versuche, mich einzuloggen, nachdem ich einen Eintrag für Benutzername und Passwort auf der Datenbank erstellt habe. Es heißt, melden Sie sich nicht an.Anmelden in MySQL-Datenbank mit PHP?
<form action ="process.php" method ="POST">
<p><label>Username:</label>
<input type="text" id="user" name="username"/>
</p>
<p><label>PassWord</label>
<input type="password" id="pass" name="password"/>
</p>
<p>
<input type="submit" id="btn" value="Login"/>
</p>
</form>
Das ist mein process.php
<body>
<?php
$username =$_POST['username'];
$password =$_POST['password'];
$connectionString = mysqli_connect('localhost', 'root','', 'a7');
$result=mysqli_query($connectionString, "select * from table1 where
username = '$username' and password ='$password'") or die("failed to
find db ".mysql_error());
if($row['username']==$username && $row['password']==$password){
echo "success welcome ".$row['username'];
}
else{
echo "failed login";
}
?>
Es kommt immer:
Hinweis: Nicht definierte Variable: Zeile in C: \ xampp \ htdocs \ assignment7b \ process.php on line 30 fehlgeschlagen Login
Zeile 30: if($row['username']==$username && $row['password']==$password)
Sie versuchen, auf ein Array namens $ Zeile zuzugreifen, das Sie nicht speziell erstellt haben. Normalerweise würde man jedes $ Ergebnis als $ Zeile durchlaufen, um auf die zurückgegebenen Daten zuzugreifen. Außerdem verwenden Sie mysql_error, wenn Sie hauptsächlich die Bibliothek mysqli verwenden. Sie können diese Bibliotheken nicht mischen und abgleichen. – cteski
*** Bitte [stoppen Sie die Verwendung von mysql_ * 'Funktionen] (http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php). *** [Diese Erweiterungen ] (http://php.net/manual/en/migration70.removed-exts-sapis.php) wurden in PHP 7 entfernt. Erfahren Sie mehr über [prepared] (http://en.wikipedia.org/wiki/Prepared_statement) Anweisungen für [PDO] (http://php.net/manual/en/pdo.prepared-statements.php) und [MySQLi] (http://php.net/manual/en/mysqli.quickstart.prepared- Statements.php) und erwäge die Verwendung von PDO, [es ist wirklich ziemlich einfach] (http://jayblanchard.net/demystifying_php_pdo.html). –
[Little Bobby] (http://bobby-tables.com/) sagt *** [Ihr Skript ist für SQL Injection Attacks gefährdet.] (Http://stackoverflow.com/questions/60174/how-can- i-prevent-sql-injection-in-php) ***. Sogar [die Zeichenfolge zu entkommen] (http://stackoverflow.com/questions/5741187/sql-injection-that-gets-around-mysql-real-escape-string) ist nicht sicher! –