如何合并2个数组(PHP、表单)
我在一个数据库中有多个地址,每行1出发1到达 我想在“表单/选择”中添加这些内容 我可以通过以下方式显示所有这些内容:如何合并2个数组(PHP、表单),php,mysql,arrays,forms,concatenation,Php,Mysql,Arrays,Forms,Concatenation,我在一个数据库中有多个地址,每行1出发1到达 我想在“表单/选择”中添加这些内容 我可以通过以下方式显示所有这些内容: echo $arraydep[0].$arrayarr[0]; 但是 或 或 不在我的表单中显示所有内容,仅显示1行的出发和到达 如果你能帮助我,那就太好了:) 这是我的完整代码: <?php include "./cfg/db.php"; $sql = 'SELECT * FROM commandes WHERE phone="555-1234"'; $list =
echo $arraydep[0].$arrayarr[0];
但是
或
或
不在我的表单中显示所有内容,仅显示1行的出发和到达
如果你能帮助我,那就太好了:)
这是我的完整代码:
<?php
include "./cfg/db.php";
$sql = 'SELECT * FROM commandes WHERE phone="555-1234"';
$list = mysqli_query($base, $sql) or die("Erreur SQL !" . $sql . "<br />" . mysqli_error());
mysqli_query($base, $sql) or die("Erreur SQL !" . $sql . "<br />" . mysqli_error());
while ($data = mysqli_fetch_array($list))
{
$arraydep = array(
$data[depadresse]
);
$arrayarr = array(
$data[arradresse]
);
echo $arraydep[0] . $arrayarr[0]; // echo all adresses from database for this phone number (for testing)
$adresses = array(
$arraydep[0],
$arrayarr[0]
);
}
?>
<form action="test2.php" method="post">
<select name="test2">
<?php
foreach($adresses as $adresse)
{
?>
<option value="<?php
echo $adresses . "<br />"; ?>">
<?php
echo $adresse . "<br />"; // only echo 1 departure and 1 arrival for 1 row in the drowdown menu
}
?>
</option>
</select>
<input type="submit" value="Valider" />
</form>
您只在数组中插入第一行。试试这个
$i = 0;
while ($data = mysqli_fetch_array($list))
{
$arraydep = array(
$data[depadresse]
);
$arrayarr = array(
$data[arradresse]
);
echo $arraydep[$i] . $arrayarr[$i]; // echo all adresses from database for this phone number (for testing)
$adresses = array(
$arraydep[$i],
$arrayarr[$i]
);
$i++
}
您只在数组中插入第一行。试试这个
$i = 0;
while ($data = mysqli_fetch_array($list))
{
$arraydep = array(
$data[depadresse]
);
$arrayarr = array(
$data[arradresse]
);
echo $arraydep[$i] . $arrayarr[$i]; // echo all adresses from database for this phone number (for testing)
$adresses = array(
$arraydep[$i],
$arrayarr[$i]
);
$i++
}
在外循环定义数组,否则在下一个语句中不起作用
请看我代码下面的用法
$arraydep = array();
$arrayarr = array();
$adresses = array();
while ($data = mysqli_fetch_array($list))
{
$arraydep[] = $data['depadresse'];
$arrayarr[] = $data['arradresse'];
$adresses[] = array( $arraydep[0], $arrayarr[0]);
}
var_dump($adresses);
echo $adresses[0][0] . ' ' . $adresses[0][1];
echo $adresses[1];
foreach ($oneOfDep as $arraydep){
echo $oneOfDep . ' ';
}
在外循环定义数组,否则在下一个语句中不起作用
请看我代码下面的用法
$arraydep = array();
$arrayarr = array();
$adresses = array();
while ($data = mysqli_fetch_array($list))
{
$arraydep[] = $data['depadresse'];
$arrayarr[] = $data['arradresse'];
$adresses[] = array( $arraydep[0], $arrayarr[0]);
}
var_dump($adresses);
echo $adresses[0][0] . ' ' . $adresses[0][1];
echo $adresses[1];
foreach ($oneOfDep as $arraydep){
echo $oneOfDep . ' ';
}
每次循环时,都需要将每组到达/离开附加到数组中
$adresses = array();
while ($data = mysqli_fetch_array($list,MYSQLI_ASSOC))
{
$adresses[] = array(
'dep' => $data['depadresse'],
'arr' => $data['arradresse']
);
}
如果您使用MYSQLI_ASSOC来检索结果,那么结果将由字段名键入。我不知道你的字段叫什么,但在访问$data时,它们需要放在引号内
在使用数组之前初始化数组也是一种很好的做法
您还应该避免选择*用法,而是始终列出您感兴趣的字段。这会告诉其他开发人员您的意图
您还应该考虑使用<强> MySqLyFutChyAL($LIST,MyQuiLasAsOC),然后不需要使用上面的循环。< /P>
要输出结果,只需使用以下命令。虽然我不确定您希望如何输出结果:
foreach($adresses as $adresse)
{
echo "<option value='{$adresse['dep']}'>{$adresse['dep']}</option>";
echo "<option value='{$adresse['arr']}'>{$adresse['arr']}</option>";
}
foreach($adrese as$adrese)
{
回音“{$adresse['dep']}”;
回音“{$adresse['arr']}”;
}
每次在循环中,您都需要将每组到达/离开附加到数组中
$adresses = array();
while ($data = mysqli_fetch_array($list,MYSQLI_ASSOC))
{
$adresses[] = array(
'dep' => $data['depadresse'],
'arr' => $data['arradresse']
);
}
如果您使用MYSQLI_ASSOC来检索结果,那么结果将由字段名键入。我不知道你的字段叫什么,但在访问$data时,它们需要放在引号内
在使用数组之前初始化数组也是一种很好的做法
您还应该避免选择*用法,而是始终列出您感兴趣的字段。这会告诉其他开发人员您的意图
您还应该考虑使用<强> MySqLyFutChyAL($LIST,MyQuiLasAsOC),然后不需要使用上面的循环。< /P>
要输出结果,只需使用以下命令。虽然我不确定您希望如何输出结果:
foreach($adresses as $adresse)
{
echo "<option value='{$adresse['dep']}'>{$adresse['dep']}</option>";
echo "<option value='{$adresse['arr']}'>{$adresse['arr']}</option>";
}
foreach($adrese as$adrese)
{
回音“{$adresse['dep']}”;
回音“{$adresse['arr']}”;
}
使用引号引用数组元素,例如$data['depadresse']
mysqli\u error()
此处需要db连接。使用引号引用数组元素,例如$data['depadresse']
mysqli\u error()
此处需要db连接。