【发布时间】:2017-12-09 16:28:18
【问题描述】:
学生将他的凭据输入到来自:
<form action="index.php" id="courseform" method="post">
Enter Your First Name: <input type="text" name="fname"><br><br>
Enter Your Last Name: <input type="text" name="lname"><br><br>
Enter Your Student Number: <input type="text" name="student_nr"><br><br>
<input type="submit">
</form>
我有一张学生记录表如下:
Database changed
mysql> explain student;
+-----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| id | char(6) | NO | PRI | NULL | |
| firstname | varchar(30) | NO | | NULL | |
| lastname | varchar(30) | NO | | NULL | |
| email | varchar(50) | YES | | NULL | |
+-----------+-------------+------+-----+---------+-------+
4 rows in set (0.05 sec)
如何验证表格中输入的 3 个值 'fname'、'lname' 和 'id'(=student_nr) 是否完整有效,即:存在于表格中?
我尝试了以下方法,但没有成功:
<?php
include 'parameter_conn.php';
$link = mysqli_connect("$server","$user","$pass","$db");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}else {
echo "Connection Successful" . "<br>";
}
if (isset($_POST['fname'],$_POST['lname'],$_POST['student_nr'])) {
$fname = $_POST["fname"];
$lname = $_POST["lname"];
$student_nr = $_POST["student_nr"];
}
$result_student = mysqli_query($link, "SELECT * FROM student");
$rows_student = mysqli_num_rows($result_student);
if($fname === $result_student['firstname'] && $lname === $result_student['lastname'] && $student_nr === $result_student['id']) {
echo 'found';
} else {
echo 'not found';
}
【问题讨论】:
-
你的代码中
$result_student是从哪里来的? -
请显示您用于创建这些变量的代码。
-
Randall,DrKey,感谢您的反馈,这是完整的 php 代码。