php - 在 php 的下拉菜单中保存所选选项

标签 php mysql

我想将图像插入到下拉菜单中选定的类别中。不想在 html 中对菜单进行硬编码,以便 phpmyadmin 可以将其动态更新到菜单。目前,所有图像都插入 Greeting_Cards 表中,因为它目前是占位符。

我尝试将其保存为变量: $selected = $_POST['tables']; 并将其传递为 $selected 而不是greeting_cards,但这会抛出异常返回未定义索引的通知,并且根本不添加到任何表。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>upload</title>

</head>

<body>

<form action="upload.php" method="POST" enctype="multipart/form-data">
<input type="file" name="image" />
<input type="submit" name="submit" value="upload" />
</form>


<?php
require_once('/var/db_file.php');

//To do after submit button
if(isset($_POST['submit']))
{
	mysql_connect("localhost","root", $pass);
	mysql_select_db("images");

	$imageName = mysql_real_escape_string($_FILES["image"]["name"]);
	$imageData = mysql_real_escape_string(file_get_contents($_FILES["image"]["tmp_name"]));
	$imageType = mysql_real_escape_string($_FILES["image"]["type"]);

	/* Drop down menu */
	$dbname = "images";
	$sql = "SHOW TABLES FROM $dbname";
	$result = mysql_query($sql);
	$tableNames=array();

	while($row = mysql_fetch_row($result)){
		$tableNames[] = $row[0];
	}

	echo '<select name="tables" id="tables">';
	foreach($tableNames as $name){
		echo '<option value="' . $name . '">' . $name . '</option>';
	}
	echo '</select>';
	/* Drop down menu end */

    $selected = $_POST['tables'];

	echo '<br>';

	if(substr($imageType,0,5) == "image"){
		mysql_query("INSERT INTO `$selected` VALUES('','$imageName','$imageData')");
		echo "Image Uploaded!";
	}
	else{
		echo "Has to be an image!";
	}
}


?>

</body>
</html>

编辑 1:添加 $selected 变量,而不是 Greeting_Cards 修复:移动表单的结束标记以包含 php 代码。 感谢您的帮助!

最佳答案

在此代码片段中,$_POST['tables']未获取分配的值,因为表单没有名为 tables 的选择下拉列表。

尽管下拉菜单正在回显,但它位于 <form> 之外,因此未提交。

关于php - 在 php 的下拉菜单中保存所选选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31366802/

相关文章:

MySQL的不同引号

mysql - 无法打开 Rails 控制台:未配置生产数据库,建立连接引发 ActiveRecord::AdapterNotSpecified

mysql - 如何从第三个不存在的两个表中获取所有记录

PHP:为当前框架中的第三方模块/插件命名空间

PHP session 变量在 Firefox 46.0.1+Windows 中丢失,但适用于 Firefox 46.0.1+Ubuntu 14.04

javascript - 是否有等效于 php 的 strtok 函数的 javascript?

php - 更改购物车列的顺序而不覆盖 Woocommerce 中的模板文件

php - MySQLi 相当于 mysql_result()?

php - SQL 和 PHP 帮助!!从 1 个表格插入 4 个表格?更新

mysql join 如何选择数据为空