我需要有关mysql和php的帮助。
我有以下下拉列表:
<select>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
包含所有车型的数据库。
我需要根据从下拉列表中选择的值来回显数据库中的SELECT。
因此,如果网站中的用户选择沃尔沃,他将从我的mysql数据库接收选择,其中包含以下信息:
Volvo S30
Volvo S60
Volvo S90
etc.
修改
选择将是:
SELECT Imagename,Imageurl FROM pics WHERE Carmaker = Volvo
但我不知道如何使SELECT受用户选择选项的限制。
答案 0 :(得分:1)
我会尽力给你一个快速的帮助。
首先,您必须在html select设置name属性。
<select name="type">
<option value="1">Volvo</option>
<option value="2">Saab</option>
<option value="3">Mercedes</option>
<option value="4">Audi</option>
</select>
然后在表单重定向的文件中:
$connection = mysqli_connect('localhost', 'root', 'your_password', 'your_database');
mysqli_set_charset($connection, 'utf8');
if (!$connection) {
die("Database connection failed: " . mysqli_error());
}
$car_type = (int)$_POST['type']; //Code for user input validation and sanitization
$query = "SELECT Imagename, Imageurl FROM pics WHERE Carmaker = '$car_type';";
$result = mysqli_query($connection, $query);
if(!$result) {
die("SQL Error: " . mysqli_error($connection);
}
//Then you can make a loop to take the data one by one
while ($row = mysqli_fetch_array($result)) {
echo '<p>'.$row['Imagename'].' '.$row['Imageurl'].'</p>';
}
首先尝试使用mysqli_ *函数(而不是mysql_ *)来使用查询。然后尝试学习PDO或类似的东西。另外,阅读一些解释服务器端用户输入验证和清理的教程非常重要。