$query = "SELECT * FROM guests WHERE username='$username' AND password='$password'";
$results = mysqli_query($db, $query);
if (mysqli_num_rows($results) == 1) {
$_SESSION['username'] = $username;
$_SESSION['success'] = "You are now logged in";
header('location: index2.php');
//header('location: justfortest.php');
} else {
array_push($errors, "Wrong username/password combination");
}
if (!empty($_POST['brief']) && !empty($_POST['measure']) && !empty($_POST['status']) && is_array($_POST['brief']) && is_array($_POST['measure']) && is_array($_POST['status']) && count($_POST['brief']) === count($_POST['measure'])) {
$brief_array = $_POST['brief'];
$measure_array = $_POST['measure'];
$status_array = $_POST['status'];
for ($i = 0;$i < count($brief_array);$i++) {
$brief = mysqli_real_escape_string($con, $brief_array[$i]);
$msure = mysqli_real_escape_string($con, $measure_array[$i]);
$status = mysqli_real_escape_string($con, $status_array[$i]);
mysqli_query($con, "INSERT INTO goals (brief_about, measure, progress) VALUES ('$brief', '$msure', '$status')");
}
}
以下是用户登录和分别插入不同用户所需数据的代码。
任何帮助都会受到赞赏。
答案 0 :(得分:0)
我已在查询中插入用户名。从$_SESSION
中检索用户名,并且必须在有效用户登录时设置用户名,并在发生错误或用户注销时取消设置用户名。
$query = "SELECT * FROM guests WHERE username='$username' AND password='$password'";
$results = mysqli_query($db, $query);
if (mysqli_num_rows($results) == 1) {
$_SESSION['username'] = $username;
// removed the weird success thing here
header('location: index2.php');
} else {
array_push($errors, "Wrong username/password combination");
// always unset the username in session on errors and logout
unset($_SESSION['username']);
}
if (isset($_SESSION['username']) && // session username must be set
!empty($_POST['brief']) &&
!empty($_POST['measure']) &&
!empty($_POST['status']) &&
is_array($_POST['brief']) &&
is_array($_POST['measure']) &&
is_array($_POST['status']) &&
count($_POST['brief']) === count($_POST['measure'])) {
$brief_array = $_POST['brief'];
$measure_array = $_POST['measure'];
$status_array = $_POST['status'];
for ($i = 0;$i < count($brief_array);$i++) {
$username = mysqli_real_escape_string($con, $_SESSION['username']);
$brief = mysqli_real_escape_string($con, $brief_array[$i]);
$msure = mysqli_real_escape_string($con, $measure_array[$i]);
$status = mysqli_real_escape_string($con, $status_array[$i]);
$query = "INSERT INTO goals (username, brief_about, measure, progress)
VALUES ('$username', '$brief', '$msure', '$status')"
mysqli_query($con,$query);
}
}
您将必须将列username
添加到表goals
中。之后,您可以像这样查询数据库:
SELECT * FROM goals WHERE username = ?
哪里是“?”代表$_SESSION['username']
。
我没有添加准备好的语句,因为这不是这个问题的意思。