这是我要做的最后一件事,在我完成这项工作之后,我可以设计出更容易的设计。感谢你的帮助。 我想通过在文本框中键入查询来使用php列出来自mysql的记录。然后程序将列出具有该元素的所有记录,例如地址。 这是我的代码:
<?php
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("koro", $con);
\\what will I put in the WHERE ADDRESS="?
$result = mysql_query("SELECT * FROM students WHERE ADDRESS=");
echo "<table border='1'>
<tr><th>Firstname</th>
<th>Lastname</th></tr>";
while($row = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $row['IDNUMBER'] . "</td>";
echo "<td>" . $row['LNAME'] . "</td>";
echo "<td>" . $row['FNAME'] . "</td>";
echo "<td>" . $row['MNAME'] . "</td>";
echo "<td>" . $row['GRADEYR'] . "</td>";
echo "<td>" . $row['ADDRESS'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysql_close($con);
?>
listform.html:
<html>
<head>
<form action="list.php" method="post">
address:<input type="text" name="grup" value="" /><br/>
<input type="submit" name="List" value="" /><br/>
</form>
</head>
</html>
\我将把什么放在WHERE ADDRESS =“?谢谢
答案 0 :(得分:3)
您将在$_POST[]
数组中找到该值。
$result = mysql_query("SELECT * FROM students WHERE ADDRESS = '{$_POST["grup"]}'");
这种方法可能很危险 - 您还需要清除针对SQL injection attacks的$ _POST []数据 - 其中有大量可用的教程。
答案 1 :(得分:1)
$ _ POST ['grup']将在发布时包含字段中的值。
然后执行以下操作:
$result = mysql_query(sprintf("SELECT * FROM students WHERE ADDRESS='%s'", mysql_real_escape_string($_POST['grup'], $con)));
如果你不使用sprintf和mysql_real_escape_string来逃避POST值,那么你可以成为SQL注入攻击的目标。