MySQL テーブル プロパティ 'isVisible' == 1 の SQL ステートメントを満たすレコーダーがない場合、次のコードで 'h2' タグとテキスト (コードの下部にある else ステートメントに表示される) を表示する予定です。
クエリが「null」の結果を返したかどうかをテストすることにしました。これは、ロジックに欠陥があるに違いありません。どのレコードも SQL ステートメントの「WHERE isVisible = 1」の部分に一致しない場合でも、クエリの結果は null 以外の値を返す必要があります。
「0」にハードコードされた DB のレコードは 1 つだけです。「isVisible」プロパティが値「1」に戻されると、コードは正しく実行されます。例外は私に問題を引き起こす唯一のものです。私は通常、PHP をあまり使用しないので、おそらく最初の if ステートメントの数行下で間違った条件をテストしているだけだと思います。
お時間をいただきありがとうございます。
<?php
// Generate SQL Statements
$sql_position = "SELECT * FROM tbl_experience
WHERE isVisible = 1
ORDER BY 'displayPosition'";
// Run Query
$result = mysql_query($sql_position);
// Iteration Variable
$i = 0;
if ($result != null) {
// List all of the experiences as a timeline
while($row = mysql_fetch_array($result)) {
// Build a div to contain the experience properties
echo "<div id='experienceContainer_" . $row['displayPosition'] . "' class='experienceContainer";
if (i % 2) {
// The row should be displayed with 'Even' class attributes
echo " Even";
} else {
// The row should be displayed with 'Odd' class attributes
echo " Odd";
}
// Finish the opening <div> tag
echo "'>";
// Display the attributes of the experience
// Experience Type
echo "<div id='type_" . $row['displayPosition'] . "' class='experienceType'>";
switch ($row['type']) {
case 0:
echo "Undefined";
break;
case 1:
echo "Work";
break;
case 2:
echo "Achievement";
break;
case 3:
echo "Award";
break;
}
echo "</div>";
// Experience Title
echo "<div id='title_" . $row['displayPosition'] . "' class='experienceTitle'>";
echo $row['title'];
echo "</div>";
// Experience Description
echo "<div id='description_" . $row['displayPosition'] . "' class='experienceDescription'>";
echo $row['description'];
echo "</div>";
// Close the 'experienceContainer' div
echo "</div><!-- end of experienceContainer_" . $row['displayPosition'] . " -->";
}
} else {
// There are no visible records
echo "<h2>No entries for \"Experience\" can be found</h2>";
}