我是编程新手。我想通过使用一个FORM将数据发送到多个表但不是每个表只是我的选定表将更新数据。 它类似于我选择一个选项它只会发送这个表而不是其他选项,我不知道这是一个正确的方法还是错的请帮助我...
<div class="row">
<div class="data-store text-center">
<?php
add_part('admin-menu.php');
?>
<?php
if(!empty($_POST)){
$title=$_POST['title'];
$sel_data='sel_data';
if($sel_data == 1){
$insert="INSERT INTO `database`.`gfx` (`gfx_id`, `gfx_title`) VALUES (NULL, '$title');";
if(mysqli_query($con,$insert)){
echo "Product has been uploaded";
}
}else{
echo "Failed to store data";
}
if($sel_data == 2){
$insert="INSERT INTO `database`.`gfx` (`gfx_id`, `gfx_title`) VALUES (NULL, '$title');";
if(mysqli_query($con,$insert)){
echo "Product has been uploaded";
}
}else{
echo "Failed to store data";
}
}
?>
<form action="" method="post" enctype="multipart/form-data">
<div>
<label for="title"></label>
<input name="title" id="title" type="text" placeholder="post title"/>
</div>
<select name="sel_data" id="">
<option name="" >Select one</option>
<option name="table1" value="1">Option 1</option>
<option name="table2" value="2">Option 2</option>
<option name="table3" value="3">Option 3</option>
</select>
<input type="submit" value="submit" />
</form>
</div>
</div>
答案 0 :(得分:1)
使用
从数据库中选择表格“SELECT table_name 来自information_schema.tables WHERE table_schema ='your_database_name' “
使用结果数组使用foreach生成选项。 然后,您应该将表的名称作为值,而不是为选项提供整数值。之后您可以将代码更改为
<?php
if(!empty($_POST)){
$title = $_POST['title'];
$sel_data = $_POST['sel_data'];
$insert="INSERT INTO `database`.`.$sel_data.` (`gfx_id`, `gfx_title`) VALUES (NULL, '$title');";
if(mysqli_query($con,$insert)){
echo "Product has been uploaded";
}else{
echo "Failed to store data";
}
}
?>
通过使用上面的代码,输入的标题将仅插入到选定的表格中。
答案 1 :(得分:0)
如果所有表格具有相同的结构,您可以像这样优化代码。
<?php
if (!empty($_POST)) {
$title = $_POST['title'];
$sel_data = $_POST['sel_data'];
if (!empty($sel_data)) {
$insert = "INSERT INTO $sel_data.`gfx` (`gfx_id`, `gfx_title`) VALUES (NULL, '$title');";
if (mysqli_query($con, $insert)) {
echo "Product has been uploaded";
}
} else {
echo "Failed to store data";
}
}
?>
<div class="row">
<div class="data-store text-center">
<?php
add_part('admin-menu.php');
?>
<form action="" method="post" enctype="multipart/form-data">
<div>
<label for="title"></label>
<input name="title" id="title" type="text" placeholder="post title"/>
</div>
<select name="sel_data" id="">
<option value="" >Select one</option>
<option value="table1">Option 1</option>
<option value="table2">Option 2</option>
<option value="table3">Option 3</option>
</select>
<input type="submit" value="submit" />
</form>
</div>
</div>
答案 2 :(得分:0)
使用$ sel_data = $ _ POST ['sel_data']而不是$ sel_data ='sel_data';
答案 3 :(得分:0)
<强> EDITED 强>
嘿,你试过了吗?而且我认为唯一错误的是你的结构
html5