##前提・実現したいこと
ループ処理でinputタグを出力させたいのですが、
別に用意した配列の添え字と同じ回では、配列の値をvalueに入れたいです。
例えば$correct_listの中がArray ( [1] => test [5] => test2 )の時、
$iが2回目のループの時には「test」、6回目のループの時には「test2」がvalueに入るようにしたいです。
(その他の場合はvalue="")
配列に値がある箇所(2回目、6回目で出力される要素)は正しく表示されますが、
配列に値がない箇所は下記のようなエラーがvalueに表示されます。
##発生している問題・エラーメッセージ
<br />
<b>Notice</b>: Undefined offset: 2 in <b>index.php</b> on line <b>35</b><br />
##該当のソースコード
html
1<?php 2$correct_list[1]="test"; 3$correct_list[5]="test2"; 4?> 5 <form action="" method="post"> 6 <ul> 7 <?php for($i=0;$i<$9;$i++): ?> 8 <?php $listNo=array_search($j,$correct_list);?> 9 <li><input type="text" name="<?php echo $i; ?>" value="<?php if($listNo=$i){echo $correct_list[$i];} ?>"></li> 10 <?php endfor; ?> 11 </ul> 12 <button name="submit" type="submit" class="">ボタン</button> 13 </form>
##試してみたこと
下記コードを追加してみました。
1回目のループで出力されるinputタグだけエラーが出なくなりました。。。
php
1 $listNo=array_search($j,$correct_list); 2if($listNo=$i){・・・}
初歩的な質問で恐縮ですが、エラーを消す方法をご教授ください。
よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/18 08:48