總的來說,我的數據庫中有3個冒號關於書籍 其中:Number(在我的代碼中,它的Nomer) Name(在我的代碼中它的nazvanie)和Thenathics(在我的代碼中它的Bukva)和桌上的書(在我的代碼的knigi),所以關於php和mysql的錯誤
我在index1.php這段代碼
<html><head>
<title>
Результаты поиска</title>
<meta charset="UTF8">
</head>
<body>
<html><head>
<title>
Поиск и Результаты поиска</title>
<meta charset="UTF8">
</head>
<body>
<form method="POST" action=script1.php>
<input type="text" name='a'>
<input type="text" name='b'>
<button>Найти</button></form>
</body>
</html>
而在script2.php這個代碼
<?php
$link = mysqli_connect("localhost", "root", "", "knigi");
$one=($_POST['a']);
$two=($_POST['b']);
$s='SELECT `Nomer`, `nazvanie`, `Bukva`
FROM `knigi`
WHERE
nazvanie = $one
or Bukva = $two';
$result = mysqli_query($link,$s) or die(mysqli_error($link));
$n=$row['Nomer'];
while ($row = mysqli_fetch_array($result)) {
echo"<div><ul><li>Книга номер ";
echo $row['Nomer'];echo"<p>";
echo $row['nazvanie'];echo" : ";
echo $row['Bukva'];echo"</p></li></ul></div><br>";
}
?>
腳本是給我的
Unknown column '$one' in 'where clause'
如果你把大約一個和兩個引號,它給
Parse error: syntax error, unexpected T_VARIABLE in C: \ OpenServer \ domains \ localhost \ script1.php on line 8
我猜你在搞亂引號(單,雙和反引號)。你的整個'$ s'變量應該用雙引號''',這樣變量就可以作爲變量傳遞,而不是字符串。列名應該反引號''',SQL中的字符串應該用單引號' 「'。所以基本上您的查詢應該是這樣的'$ S =「選擇\'Nomer \'\'nazvanie \'\'Bukva \' 由\'knigi \' WHERE nazvanie ='$一個人 或Bukva ='$ two'「;' – Qirel