PHP SQL读取用户输入以运行查询

时间:2018-11-13 18:51:12

标签: php sql user-input sql-like

我有一些代码应该采用用户输入的内容并读取它,然后由用户输入以运行查询并显示结果。这是我要做的所有事情的简化版本,因此在这种情况下,您可以忽略课程标题字段。当我用数据库中的数据填充姓氏来运行代码时,即使记录中姓氏为Li的人,也会收到错误消息“ where子句中的未知列'Li'”。我认为我的SQL语句的语法有问题:$ readAllQuery =“ SELECT * FROM Student WHERE LastName LIKE”。“ $ name”;任何帮助或见解将不胜感激。这是完整的代码:

<?php

if ($_SERVER["REQUEST_METHOD"]=="POST"){
$host = "localhost";
$db = "cis475";
$user = "root";
$pw = "";


$conn = new mysqli ($host, $user, $pw, $db);
if($conn){echo "Connection established <br>";}
if($conn->connect_error) die($conn->connect_error);

$name=$_POST["lname"];
$course=$_POST["course"];

$readAllQuery = "SELECT * FROM student WHERE LastName LIKE "."$name";

$result = $conn->query($readAllQuery);
        if (!$result) die($conn->error);


        while ($row = mysqli_fetch_array($result)){
        echo    $row['1']." ".$row['2']." ".$row['3']." ".$row['4']." 
        ".$row['5']." ".$row['6']." ".$row['7']." ".$row['8']." ".$row['9'];
            echo "<br>";
        }
}
?>



<html>
<body>

<form action="select.php" method="post">
Course Title: <input type="text" name="course"><br>
Last Name: <input type="text" name="lname"><br>
<input type="submit" value="Show Enrollments" name="submit">
</form>

</body>
</html>

0 个答案:

没有答案