こんにちは! 私はコーディングが新しく、来年9月にはクラスに参加する予定です。楽しみにしています.... :-)PHP Myqsl PDOコード効率 - foreachループ内のForeachループ
私のデータベースの変更ページを作りました。これは、DBの内容を変更するための入力とドロップダウンリストで構成されています。少なくとも今は...もっと知るまで。
私は自分自身をコーディングしていますが、これを行う正しい方法は次のとおりかどうか疑問に思っていましたか?内側のクエリが外側のループが通過するたびに実行されるので、私の心ではそうではありません...しかし、それは動作します!
それは私が、内側のforeachループ($ familylist)MySQLのクエリで作業をするために見つけることができる唯一の方法です。内側ループのクエリが外側ループ($ plantList)の外側にある場合、それは機能しません。最初のドロップダウンリストにはコンテンツが表示されますが、次の行は、少なくとも最初のオプションではクエリのコンテンツが入力されません。
ご協力いただきありがとうございます。
<?php //more code here....
$plantQuery = "SELECT id, genre, espece, famille FROM plante ORDER BY genre";
$plantList = $dbconnect->query ($plantQuery);
?>
<table>
<thead>
<tr>
<th>ID</th>
<th>GENRE</th>
<th>ESPÈCE</th>
<th>FAMILLE</th>
</tr>
</thead>
<tbody>
<?php foreach ($plantList->fetchAll(PDO::FETCH_ASSOC) as $plant) : ?>
<form method="post">
<tr>
<td><input name="id" value="<?php echo $plant["id"] ;?>" readonly></td>
<td><input name="genre" value="<?php echo $plant["genre"] ;?>"></td>
<td><input name="espece" value="<?php echo $plant["espece"] ;?>"></td>
<td><select name="familleList" >
<option value="0" >Choisir une famille</option>
<?php
$familyQuery = "SELECT id, famille FROM famille ORDER BY id ASC";
$familyList = $dbconnect->query ($familyQuery);
?>
<?php foreach ($familyList->fetchAll(PDO::FETCH_ASSOC) as $family):?>
<option value="<?php echo $family["id"] ;?>" <?php if ($plant["famille"] <> 0 && $plant["famille"] == $family["id"]) {echo "selected"; }?>><?php echo $family["id"] . " - " . $family["famille"] ;?></option>
<?php endforeach ;?>
</select>
</td>
<td><button name="modifier" type="submit">Modifier</button></td>
<td><button name="supprimer" type="submit">Supprimer</button></td>
</tr>
</form>
<?php endforeach ;?>
</tbody>
</table>
明らかに私は基本を覚えていませんでした!コードを外して巻き戻す必要があります。メルティ! –