我需要解决这个棘手的问题。我希望我会得到你的解决方案。
我正在创建一个表单,我必须从这样的PHP for循环打印:
<form method="get">
<?php
for ($i=1; $i <= 5 ; $i++) {
echo "Name: <input name='name[]' type='text' value=''/> Your Age: <input name='age[]' type='text' value=''/> Your Qualification: <input name='Qualification[]' type='text' value=''/>";
echo "<br/>";
}
?>
<input type="submit" name="submit" value="Submit">
这将为每个值提供5个表格。
当用户将数据放入字段时,我需要做什么。
这就是我想要显示数据的方式:
你的名字是xyz 你的年龄是25岁 你的资格是aaaa。这是我的代码:
print_r ($name);
echo "<br />";
print_r ($age);
echo "<br />";
print_r ($qualification);
echo "<br />";
foreach($_GET['name'] as $key => $value){
if (!empty($value)) {
$name[]="your name is :". $value;
}
}
foreach($_GET['age'] as $key => $value){
if (!empty($value)) {
$age[]=$value;
}
}
foreach($_GET['Qualification'] as $key => $value){
if (!empty($value)) {
$qualification[]=$value;
}
}
$yourname=implode(",",$name);
$yourage=implode(",",$age);
$yourqua=implode(",",$qualification);
echo $yourname . $yourage . $yourqua;
?>
这就是我得到的:
your name is :xyz,your name is :abc25,14abc,dfg
它是这样的但是,我需要第一行正确地给出输出,然后是下一行,然后是下一行。
答案 0 :(得分:1)
用此替换你的
$array = array();
$int i = 0;
foreach($_GET['name'] as $key => $value){
if (!empty($value)) {
$array[$i]["name"] =$value;
$i++;
}
}
$i=0;
foreach($_GET['age'] as $key => $value){
if (!empty($value)) {
$array[$i]["age"] =$value;
$i++;
}
}
$i=0;
foreach($_GET['Qualification'] as $key => $value){
if (!empty($value)) {
$array[$i]["qualification"] =$value;
$i++;
}
}
foreach($array as $key=>$value)
echo $value["name"]." (".$value["age"].") = ".$value["qualification"]."<br/>";
}