0

私は本当にこのばかげた問題で立ち往生しています。私は動的フォーム変数を持っていますtest_nr。これnrは動的です。それから私はPOSTこの方法でそれをキャッチしたかった:

$test = $_POST['test_'.$nr.''];

しかし、これはどういうわけか機能していません。タイプミスがどこにあるのか疑問に思っています。私にとっては文法的に正しいです。この問題により、 while ループが永久に実行されます。

$in=1;
while($in<5){
    $time_.$in=$_POST['zeit_'. $in .''];
    $erfahrung_. $in = $_POST['berufserf_'. $in .''];
    $in++;
}

何か案は?

4

3 に答える 3

0
$time_.$in= ...

有効な構文ではありません。設定$in = ...してから連結$time_しているので、実際には変更するだけ$inです。代わりに配列を使用してください:

$times = array();
$erfahrung = array();
for ($i = 1; $i <= 5; $i++) {
    $times[$i] = $_POST['zeit_' . $i];
    $erfahrung[$i] = $_POST['berufserf_'. $in];
}
于 2013-02-14T12:16:54.550 に答える
0

もし、するなら

$time_.$in = 'something';

$inを'something'に設定してから、$time_と'something'の連結を返します。

適切な構文は次のようになります。

$varName = 'time_' . $in;
$$varName = 'something';

そしてもちろん、ここで配列を使用する方がはるかに便利です。

于 2013-02-14T12:18:07.107 に答える
0
    $in=1;
while($in<5){
    if(array_key_exist('zeit_'. $in, $_POST)){
    $time_.$in=$_POST['zeit_'. $in .''];
    $erfahrung_. $in = $_POST['berufserf_'. $in .''];
    $in++;
}
}
于 2013-02-14T12:21:39.243 に答える