<?php
$host = 'localhost';
$username = 'admin2';
$password = 'vaptek';
$db_name = 'vaportek_db';
// Connect to server and select database.
$db = new mysqli($host, $username, $password, $db_name);
if($db->connect_errno){
die('Unable to connect to database [' . $db->connect_error . ']');
}
// username and password sent from form
$myusername=$_POST['userId'];
$mypassword=$_POST['userPw'];
$stmt = $db->prepare("SELECT role FROM users WHERE `username`=? and `password`=?");
/* bind parameters for username and password */
$stmt->bind_param('ss', $myusername, $mypassword);
/* execute query */
$stmt->execute();
// If result matched $myusername and $mypassword, table row must be 1 row
if ($test == 1) {
// bind the result to a variable
$stmt->bind_result($role);
$stmt->fetch_object()->$role;
switch($role){
case 'director':
header("location: director.php");
break;
case 'customer':
header("location: cust.php");
break;
case 'production manager':
header("location: prodmanager.php");
break;
case 'account admin':
header("location: accountadmin.php");
exit();
default:
echo "Wrong staff ID or password";
}
$stmt->close();
}
$db->close();
?>
Wenn ich den Code ausführen es gibt mir nur eine leere Seite und gehen Sie nicht von login.phpphp Benutzer zu umleiten basierend auf der „Rolle“ mit mysqli
I echo $ Test gemacht haben = $ stmt-> affected_rows; was als -1 angezeigt wird Ich bin nicht sehr vertraut mit PHP und verstehe nicht wirklich, wo es falsch läuft.
Welche möchten Sie mit PDO oder MySQLi verwenden? :/ – Juned
Hallo, Entschuldigung nicht realisiert. Ich benutze derzeit mysqli, aber ich habe versucht, PDO und konnte nicht, dass auch nicht zu arbeiten, massiv eine Mauer zu schlagen –
Dies ist nicht PDO, aber MySQLi ist auch OK. Jedenfalls bekommst du einen leeren Bildschirm, weil nichts "echo" ist. Das liegt daran, dass "$ test" null ist und der "if" -Körper übersprungen wird. –