0

PHP 初学者:

我有一个基于表格数据的表单,用户也可以添加任意数量的行,目前我正在调用 .php 中的数据,例如:

$para01 = $_POST["1_0"];
$url01 = $_POST["1_1"];
$para02 = $_POST["2_0"];
$url02 = $_POST["2_1"];

等等

我想要一种调用表格数据的方法,这样我就可以满足 x 行的需求

所以,我的伪代码是:

  • 对于每一行,将单元格 id 0 应用于 $url 并将 id 1 应用于 $para
  • 然后在一些 html 中回显 url 和 para
  • 重复直到所有行都被表达。
4

3 回答 3

2

您应该将 url 和 para 设为(二维)数组。然后,使用二维 for 循环遍历 _POST[] 变量。将值添加到数组中,并在必要时打印它们。

于 2012-05-12T09:17:20.053 回答
0

你应该使用数组!一个简单的方法是调用所有的 post 变量,然后用 php 对它们进行排序......

假设表单输入字段如下所示,我非常快地为您完成了它:

formstart url1 para1 url2 para2 url3 para3 等等...

提交最终形式

$i=1;
$urls = array();
$paras = array();
foreach($_POST as $variable){
    if($i==1){
        array_push($urls,$variable);
        $i++;
    }else{
        array_push($paras,$variable);
        $i=1;
    }
}
echo'<table><tr><td>';
foreach($urls as $url){
    echo $url.'<br />';
}
echo'</td><td>';
foreach($paras as $para){
    echo $para.'<br />';
}
echo'</td></tr></table>';

编辑

你会像这样配对它们......

 $_POST = array('url1','paragraph1','url2','paragraph2','url3','paragraph3');
$urls = array();
$paras = array();
$i=1;
$c=0;
foreach($_POST as $variable){
    if($i==1){
        array_push($urls,$variable);
        $i++;
    }else{
        array_push($paras,$variable);
        $i=1;
     $c++;
    }
}

echo'<table>';
for($x=0;$x<$c;$x++){
   echo'<tr><td>'.$urls[$x].'</td><td>'.$paras[$x].'</td></tr>';
}
echo'</table>';
于 2012-05-12T09:33:30.290 回答
0

是的,您可以将其用作数组。就像,

<input type="text" name="para[]" />
<input type="text" name="url[]" />

<input type="text" name="para[]" />
<input type="text" name="url[]" />

<input type="text" name="para[]" />
<input type="text" name="url[]" />

而在php中,你可以使用like

<?php
foreach($_POST[para] as $key=>$val)
{
}

foreach($_POST[url] as $key=>$val)
{
}
?>
于 2012-05-12T10:38:10.983 回答