我的表单中有3个textareas用于收集姓名,年龄和地点,并在提交表单后回显输出。如何做一个在多个数组的PHP foreach循环
问题,我面对:
例如,如果我像进入数据低于
名称:
George
Tom
年龄:
30
40
地点:
SA
IN
我期待像输出:
My name is George, age 30, from SA
My name is Tom, age 40, from IN
,但它给我的输出:
My name is George, age 30, from SA
My name is George, age 30, from IN
My name is George, age 40, from SA
My name is George, age 40, from IN
My name is Tom, age 30, from SA
My name is Tom, age 30, from IN
My name is Tom, age 40, from SA
My name is Tom, age 40, from IN
我怎么能处理来自各textarea的每一行数据,并给予输出?
我的代码:PHP FIDDLE
<form id="main" name="main" action="#text" method="post" >
<div class="input">Name<span><textarea class="textarea" id="main-name" name="main-name" type="text"></textarea></span> </div>
<div class="input">Age<span><textarea class="textarea" id="main-age" name="main-age" type="text"></textarea></span> </div>
<div class="input">Place<span><textarea class="textarea" id="main-place" name="main-place" type="text"></textarea></span> </div>
<div class="submit-clear">
<input id="generate" type="submit" name="script" value="create my symcli script" />
<input onClick="clear_all();" id="clear" type="submit" name="clear" value="clear" />
</div>
</form>
<div id="output-main">
<form id="main2" name="main2" action="#text" method="post">
<textarea onclick="this.select()" name="output_textarea" id="output_textarea" cols="100" rows="25" readonly value=" ">
<?php
$names1 = $_POST['main-name'];
$ages1 = $_POST['main-age'];
$places1 = $_POST['main-place'];
$names = explode("\n", $names1);
$ages = explode("\n", $ages1);
$places = explode("\n", $places1);
foreach ($names as $key => $name) {
foreach ($ages as $key => $age) {
foreach ($places as $key => $place) {
$name = trim($name);
$age = trim($age);
$place = trim($place);
echo "My name is $name, age $age, from $place".PHP_EOL;
}}}
?>
</textarea>
</form>
</div>
@acr编写代码时混淆了一些变量......现在好多了吗? – bwoebi
No..output:'我叫G,3岁,来自S' – acr
@acr再次更新...我应该睡一会儿... – bwoebi