私は最悪のエラーを抱えています...以下のコードは期待どおりに実行され、if
ステートメントの両方の半分に期待どおりにアクセスしています(「TRUE」と「FALSE」の両方がエラーログに追加され、それらは、それらを引き起こした状態の出力の上に追加されます)。
しかし、のTRUE
部分にアクセスするif
と、なぜか反響しません。コードセクションがスキップされていないことはわかっています(error_log("TRUE");
まだ実行されているため)。
コードの概要:
状態のリストをステップ実行し、HTML タグの半分を出力し (条件付きで中間ビットを追加)、最後に半分を出力します。
function createStateOptions($country, $state) {
$sql = "SELECT * FROM tbl_state WHERE disabled != true AND deleted != true AND country = :country ORDER BY state ASC";
$result = executeSQL($sql, array(':country' => $country));
if (is_array($result)) {
foreach ($result as $record) {
echo '<option value="' . htmlentities($record["state"], ENT_QUOTES) . '" ';
if($state == $record["state"]) {
echo " selected";
error_log("TRUE");
} else {
error_log("FALSE");
}
echo '>' . htmlentities($record["state"], ENT_QUOTES) . '</option>';
error_log("'".$state."' == '".$record["state"]."'");
}
}
}