使用PHP将2个数组插入mysql
我有两个带数组的表单使用PHP将2个数组插入mysql,php,mysql,arrays,Php,Mysql,Arrays,我有两个带数组的表单 <form action="addschedule.php" method="post"> <?php $n = 0; $c = 0; echo "<Select name='jam[]'>"; do{ if($c>10){$n="";} echo "<option>".$n.$c.":00</option>";
<form action="addschedule.php" method="post">
<?php
$n = 0;
$c = 0;
echo "<Select name='jam[]'>";
do{
if($c>10){$n="";}
echo "<option>".$n.$c.":00</option>";
echo "<option>".$n.$c.":30</option>";
$c++;
}while($c<24);
?>
<input type="text" name="nampro[]"></td>
<input type="submit" id="submit" class="btn btn-success" value="submit">
</form>
<input class="btn btn-primary" id="addrow" value="Add Row">
但我如何才能得到“nampro”或任何人有更好的方法来做到这一点?我是PHP新手,有人能帮忙吗?因为我可以看到两个数组的长度相同,所以您可以执行以下操作:
$jam = $_POST['jam'];
$namePro = $_POST['nampro'];
$sql = array();
foreach( $jam as $key=>$val ) {
$sql[] = '("'.$val.'", '.$namePro[$key].')';
}
$result = $mysqli->query('INSERT INTO SCHEDULE VALUES '.implode(',', $sql));
说明:
$jam = ['test','google','facebook','yahoo'];
$namePro = [123,112,110,100];
$sql = array();
foreach( $jam as $key=>$val ) {
$sql[] = '("'.$val.'", '.$namePro[$key].')';
}
echo('INSERT INTO SCHEDULE VALUES '.implode(',', $sql));
将为您提供以下输出:
在计划值中插入(“test”,123)、(“google”,112)、(“facebook”,
110),(“雅虎”,100)
试试这个代码
<?php
include_once("connect.php");
if(!empty($_POST['jam'])){
$namproPost = $_POST['nampro'];
foreach($_POST['jam'] as $key=>$jmt){
// echo $jmt."<br>";
$nampro = $namproPost[$key];
$result=$mysqli->query('INSERT INTO SCHEDULE VALUES ($jmt,$nampro)');
}
}
?>
屏幕截图中的nampro
输入字段在哪里?它是输入类型文本您在echo$\u POST['nampro'中得到123
?@JitendraPurohit我相信$\u POST['nampro']
是一个数组。不,它只返回“array”,因为$nampro
是查询中的数组,您不能直接使用它。您必须提到数组的索引值,如$nampro[0]
。
$jam = ['test','google','facebook','yahoo'];
$namePro = [123,112,110,100];
$sql = array();
foreach( $jam as $key=>$val ) {
$sql[] = '("'.$val.'", '.$namePro[$key].')';
}
echo('INSERT INTO SCHEDULE VALUES '.implode(',', $sql));
<?php
include_once("connect.php");
if(!empty($_POST['jam'])){
$namproPost = $_POST['nampro'];
foreach($_POST['jam'] as $key=>$jmt){
// echo $jmt."<br>";
$nampro = $namproPost[$key];
$result=$mysqli->query('INSERT INTO SCHEDULE VALUES ($jmt,$nampro)');
}
}
?>