0

PHPの初心者:

ユーザーが任意の数の行を追加できるテーブルデータに基づくフォームがあります。現在、.phpのデータを次のように呼び出しています。

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

テーブルデータを呼び出す方法が欲しいので、x行の量に対応できます

したがって、私の擬似コードは次のようになります。

  • 各行について、セルID0を$urlに適用し、ID1を$paraに適用します
  • 次に、いくつかのhtmlでURLとパラをエコーし​​ます
  • すべての行が表現されるまで繰り返します。
4

3 に答える 3

2

URLとパラを(2)次元配列にする必要があります。次に、2次元のforループを使用して、_POST[]変数をループします。値を配列に追加し、必要に応じて出力します。

于 2012-05-12T09:17:20.053 に答える
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では、次のように使用できます

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

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

配列を使用する必要があります!これを行う簡単な方法は、すべての投稿変数を呼び出してから、phpで並べ替えることです...

フォームの入力フィールドが次のようになっていると仮定して、私はあなたのためにそれを本当に素早く行いました:

formstart url1 para1 url2 para2url3para3など...

エンドフォームを送信する

$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 に答える