Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在php mysql中更新多个选择框值_Php_Mysql - Fatal编程技术网

如何在php mysql中更新多个选择框值

如何在php mysql中更新多个选择框值,php,mysql,Php,Mysql,美国 大不列颠联合王国 阿富汗 阿兰群岛 阿尔巴尼亚 阿尔及利亚 美属萨摩亚 安道尔 试试这个:name=“specialization[]” 美国 大不列颠联合王国 阿富汗 阿兰群岛 阿尔巴尼亚 阿尔及利亚 美属萨摩亚 安道尔 然后在提交时,var_dump($_POST['specialization']);退出 您可以看到选定的值。您将获得逗号分隔的值,然后您可以使用内爆函数。试试这个 $specialization=implode(",",$_POST['specializati


美国
大不列颠联合王国
阿富汗
阿兰群岛
阿尔巴尼亚
阿尔及利亚
美属萨摩亚
安道尔
试试这个:
name=“specialization[]”


美国
大不列颠联合王国
阿富汗
阿兰群岛
阿尔巴尼亚
阿尔及利亚
美属萨摩亚
安道尔
然后在提交时,var_dump($_POST['specialization']);退出 您可以看到选定的值。您将获得逗号分隔的值,然后您可以使用
内爆
函数。

试试这个

  $specialization=implode(",",$_POST['specialization']);
查询:

 Insert into table ("specialization")values('$specialization');

    or  

   insert into table set specialization='$specialization';



        <select name="specialization[]" multiple>
                    <option value=""></option>
                    <option value="United States" selected>United States</option>
                    <option value="United Kingdom">United Kingdom</option>
                    <option value="Afghanistan" selected>Afghanistan</option>
                    <option value="Aland Islands">Aland Islands</option>
                    <option value="Albania">Albania</option>
                    <option value="Algeria">Algeria</option>
                    <option value="American Samoa">American Samoa</option>
                    <option value="Andorra">Andorra</option>
          </select>
在表中插入(“专门化”)值(“$specialization”);
或
插入到表集专门化=“$specialization”;
美国
大不列颠联合王国
阿富汗
阿兰群岛
阿尔巴尼亚
阿尔及利亚
美属萨摩亚
安道尔

您可以使用数组存储多个数据

<select name="specialization[]" multiple>
</select>
$specialization = implode(',',$_REQUEST['specialization']);
如果你想测试,请写下面的代码

echo "<pre>";
print_r($_POST['specialization']);
echo”“;
打印($_POST['specialization']);

美国
大不列颠联合王国
阿富汗
阿兰群岛
阿尔巴尼亚
阿尔及利亚
美属萨摩亚
安道尔
somepage.php

<?
$specialization = isset($_POST['specialization']) ? implode(",",$_POST['specialization']) : '';
$query = "";
if(!empty($specialization)){
   $query = "INSERT INTO TableName SET SpecializationColumnName='$specialization'";
}?>

您可以使用数组存储多个数据

<select name="specialization[]" multiple>
</select>
$specialization = implode(',',$_REQUEST['specialization']);
$specialization是以逗号分隔的多个选择值

之后,可以使用此查询更新表值

<div class="form-group">
<label for="exampleInputEmail1">Enter Movie Genre [Check for Multiple Select]</label> <br>
<select class="form-control" id="movie_genre"  multiple name="movie_genre[]">
<!-- <option value="choose-category">Choose Movie Genre</option> -->
<?php

$sql = mysqli_query($connection, "SELECT * From genre_info");
$row = mysqli_num_rows($sql);
while ($row = mysqli_fetch_array($sql)) {
    echo "<option value='".$row['genre_type']
        ."'>".$row['genre_type']
        ."</option>";
}
?>
</select>
</div>

// assigning value

foreach($_POST["movie_genre"] as $row)
{
    $movie_genre.= $row.', ';
}
$movie_genre = substr($movie_genre, 0, -2);

// insert into Db.,

$sql_query1 = "INSERT INTO movies_info (`movie_name`,`movie_image`,`movie_description`,`movie_trailer`,`release_date`,
    `release_year`,`movie_genre`,`movie_rating`,`movie_country`,`is_featured`)
VALUES('$movie_name','$target','$movie_description','$movie_trailer','$release_date',
    '$release_year','$movie_genre','$movie_rating','$movie_country','$is_featured')";

这非常适合我:

<select name="specialization[]" multiple> // notice the square bracket in the name
    <option value=""></option>
    <option value="United States" selected>United States</option>
    ...
</select>

$Implode = implode(',', $_POST['specialization']);
$Explode = explode(',', $Implode);

foreach ($Explode as $specialization) {
    $sql ="INSERT INTO TableName (SpecializationColumnName) VALUES ('$specialization');"; // notice two semicolon at the end
    $query = mysqli_query($con, $sql); // This has to be inside the foreach loop to work.
}

输入电影类型[检查多个选择]
//赋值 foreach($\u POST[“电影类型”]作为$row) { $movie_genera.=$row.','; } $movie\u genera=substr($movie\u genera,0,-2); //插入数据库中。, $sql\u query1=“插入电影信息(`movie\u name`、`movie\u image`、`movie\u description`、`movie\u trailer`、`release\u date`、, `发行年份、‘电影流派’、‘电影评级’、‘电影国家’、‘电影特色’) 值(“$movie\u name”、“$target”、“$movie\u description”、“$movie\u trailer”、“$release\u date”, “$release\u year”、“$movie\u流派”、“$movie\u rating”、“$movie\u country”、“$is\u特色”);

我的问题是如何使upd工作

尽管不建议使用逗号分隔的值在数据库中插入
。但如果这是你想要的,@Nana Partykar代码将起作用

但是如果有人在寻找标准化方法,您可以这样做

//注意名称中的方括号
美国
...
$IMPODE=IMPODE(',',$_POST['specialization']);
$Explode=Explode(',',$内爆);
foreach($Explode as$specialization){
$sql=“插入到TableName(SpecializationColumnName)值(“$specialization”);”;//注意末尾有两个分号
$query=mysqli_query($con,$sql);//这必须在foreach循环中才能工作。
}

什么以及如何来自数据库。。。??我们需要这些信息来解决问题。使用数组试试。可能是Thank You@Nana Partykar的副本。@Divakarcool:如果你认为这个答案对你有帮助的话。请把它标为正确答案。因为它将帮助其他用户轻松找到它。谢谢很高兴为您服务。您能解释一下为什么这对您非常有效吗?仅转储代码不是一个有用的答案。@插入我们通过此代码在此处传递数组值,//将值foreach($\u POST[“movie\u genre”]赋值为$row){$movie\u genre.=$row.',';}$movie\u genre=substr($movie\u genre,0,-2);
$specialization = implode(',',$_REQUEST['specialization']);
 UPDATE table_name
SET column_name=$specialization,column_name=value2,...
WHERE some_column=some_value;
<div class="form-group">
<label for="exampleInputEmail1">Enter Movie Genre [Check for Multiple Select]</label> <br>
<select class="form-control" id="movie_genre"  multiple name="movie_genre[]">
<!-- <option value="choose-category">Choose Movie Genre</option> -->
<?php

$sql = mysqli_query($connection, "SELECT * From genre_info");
$row = mysqli_num_rows($sql);
while ($row = mysqli_fetch_array($sql)) {
    echo "<option value='".$row['genre_type']
        ."'>".$row['genre_type']
        ."</option>";
}
?>
</select>
</div>

// assigning value

foreach($_POST["movie_genre"] as $row)
{
    $movie_genre.= $row.', ';
}
$movie_genre = substr($movie_genre, 0, -2);

// insert into Db.,

$sql_query1 = "INSERT INTO movies_info (`movie_name`,`movie_image`,`movie_description`,`movie_trailer`,`release_date`,
    `release_year`,`movie_genre`,`movie_rating`,`movie_country`,`is_featured`)
VALUES('$movie_name','$target','$movie_description','$movie_trailer','$release_date',
    '$release_year','$movie_genre','$movie_rating','$movie_country','$is_featured')";
<select name="specialization[]" multiple> // notice the square bracket in the name
    <option value=""></option>
    <option value="United States" selected>United States</option>
    ...
</select>

$Implode = implode(',', $_POST['specialization']);
$Explode = explode(',', $Implode);

foreach ($Explode as $specialization) {
    $sql ="INSERT INTO TableName (SpecializationColumnName) VALUES ('$specialization');"; // notice two semicolon at the end
    $query = mysqli_query($con, $sql); // This has to be inside the foreach loop to work.
}