gpt4 book ai didi

PHP - 如何在 POST 之前从查询填充的下拉菜单中获取所选项目

转载 作者:行者123 更新时间:2023-11-28 23:50:58 26 4
gpt4 key购买 nike

我想知道如何从下拉菜单中获取选定的名称,通过使用 phpmyadmin 的查询填充,以根据选择显示图片。

例如,如果用户从下拉菜单中选择“山脉”,我希望能够使用该值并进行另一个查询以从数据库中获取特定图像 URL 并显示它,并且每次用户更改时选择图像相应地改变。

是的,我知道,mysql 命令已被弃用。如果您需要更多详细信息,请告诉我。

<select name='picker'>";
<?php
mysql_connect('localhost','root','');
mysql_select_db('...');
$sql = "...";
$result = mysql_query($sql);

while ($row = mysql_fetch_array($result)) {
echo "<option value='" . $row['name'] . "'>" . $row['name'] ."</option>";
}

$selectoption = $_REQUEST['picker'];
mysql_connect('localhost','root','');
mysql_select_db('...');
$sql3 = "...";
$image = mysql_query($sql3);
?>

<img src="<?php echo $image; ?>">

最佳答案

创建 2 个文件

  • main.php
  • 获取图像.php

注意:两个文件应该在同一个位置,如果根文件夹看起来像这样

main.php
fetchimage.php

如果在假设文件夹名称为 alpha 的文件夹内

alpha/main.php
alpha/fetchimage.php

现在创建main.php文件并放入以下 ​​PHPjQuery里面的代码。

<?php
error_reporting(E_ALL);
ini_set('display_errors',1);
mysql_connect('localhost','root','');
mysql_select_db('...');
?>
<select name="picker" id="picker">
<?php
$sql = "SELECT * FROM table";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
?>
<option value="<?php echo $row['name'];?>"><?php echo $row['name'];?></option>
<?php } ?>
</select>

//Here Show the Images
<div id="imged"></div>

jQuery

//JQuery library always comes first.
<script>
$(document).ready(function() {
$("#picker").change(function(){
var name=$(this).val();
alert(name); //This will show an alert when value selected, remove this **alert** in production mode, use it only in development mode.
var dataString = 'name='+ name;
$.ajax({
type: "POST",
url: "fetchimage.php",
data: dataString,
cache: false,
success: function(data){
$("#imged").html(data);
}
});
});
});
</script>

关于 jQuery change function 的更多信息和 Ajax Method

  • 绑定(bind)#picker使用 <select> 更改函数
  • 使用 id="imged" 绑定(bind) Ajax 成功函数显示图像

现在创建第二个文件名fetchimage.php并在其中放入以下代码。

<?php
error_reporting(E_ALL);
ini_set('display_errors',1);
mysql_connect('localhost','root',''); //Put Database Connection Here
mysql_select_db('...'); //Put Database Name Here
if(isset($_POST['name'])){
$selectoption = mysql_real_escape_string($_POST['name']);
$sql = "SELECT Image FROM table WHERE name = '$selectoption'";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
//This will show the image inside <div id="imged"></div>
echo '<img src="'. $row["Image"] .'" alt="" />';
}
?>

旁注:记住,mysql已弃用,应开始使用 mysqli现在。

MySQLi(过程示例)

<?php
error_reporting(E_ALL);
ini_set('display_errors',1);
//Conntection Credentials
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "databasename";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}

//Run Query
$sql = "SELECT imagename FROM table";
$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_assoc($result)) {
echo $row["imagename"];
}
} else {
echo "0 results";
}

mysqli_close($conn);
?>

OP 请求示例代码并通过电子邮件提供其他详细信息,例如(数据库)。

关于PHP - 如何在 POST 之前从查询填充的下拉菜单中获取所选项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32623052/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com