Mój kod wybiera z bazy danych, wypisuje informacje, a następnie uruchamia inną pętlę if, aby zdecydować, jaki kod wyprowadzić:
<?php
echo "<p>the loop<p><br>
<p>Accreditations</p>";
if ($fields["accreditations1"]==1){echo "HTML CODE 1";} else {
if ($fields["accreditations1"]==2){echo "HTML CODE 2";} else {
if ($fields["accreditations1"]==3){echo "HTML CODE 3";} else {
if ($fields["accreditations1"]==4){echo "HTML CODE 4";} else {
if ($fields["accreditations1"]==5){echo "HTML CODE 5";} else {
if ($fields["accreditations1"]==6){echo "HTML CODE 6";} else {
if ($fields["accreditations1"]==7){echo "HTML CODE 7";} else {
if ($fields["accreditations1"]==0){echo "";}
if ($fields["accreditations2"]==1){echo "HTML CODE 1";} else {
if ($fields["accreditations2"]==2){echo "HTML CODE 2";} else {
if ($fields["accreditations2"]==3){echo "HTML CODE 3";} else {
if ($fields["accreditations2"]==4){echo "HTML CODE 4";} else {
if ($fields["accreditations2"]==5){echo "HTML CODE 5";} else {
if ($fields["accreditations2"]==6){echo "HTML CODE 6";} else {
if ($fields["accreditations2"]==7){echo "HTML CODE 7";} else {
if ($fields["accreditations2"]==0){echo "";}
if ($fields["accreditations3"]==1){echo "HTML CODE 1";} else {
if ($fields["accreditations3"]==2){echo "HTML CODE 2";} else {
if ($fields["accreditations3"]==3){echo "HTML CODE 3";} else {
if ($fields["accreditations3"]==4){echo "HTML CODE 4";} else {
if ($fields["accreditations3"]==5){echo "HTML CODE 5";} else {
if ($fields["accreditations3"]==6){echo "HTML CODE 6";} else {
if ($fields["accreditations3"]==7){echo "HTML CODE 7";} else {
if ($fields["accreditations3"]==0){echo "";}
echo "<br />";
if ($fields["accreditations4"]==1){echo "HTML CODE 1";} else {
if ($fields["accreditations4"]==2){echo "HTML CODE 2";} else {
if ($fields["accreditations4"]==3){echo "HTML CODE 3";} else {
if ($fields["accreditations4"]==4){echo "HTML CODE 4";} else {
if ($fields["accreditations4"]==5){echo "HTML CODE 5";} else {
if ($fields["accreditations4"]==6){echo "HTML CODE 6";} else {
if ($fields["accreditations4"]==7){echo "HTML CODE 7";} else {
if ($fields["accreditations4"]==0){echo "";}
if ($fields["accreditations5"]==1){echo "HTML CODE 1";} else {
if ($fields["accreditations5"]==2){echo "HTML CODE 2";} else {
if ($fields["accreditations5"]==3){echo "HTML CODE 3";} else {
if ($fields["accreditations5"]==4){echo "HTML CODE 4";} else {
if ($fields["accreditations5"]==5){echo "HTML CODE 5";} else {
if ($fields["accreditations5"]==6){echo "HTML CODE 6";} else {
if ($fields["accreditations5"]==7){echo "HTML CODE 7";} else {
if ($fields["accreditations5"]==0){echo "";}
if ($fields["accreditations6"]==1){echo "HTML CODE 1";} else {
if ($fields["accreditations6"]==2){echo "HTML CODE 2";} else {
if ($fields["accreditations6"]==3){echo "HTML CODE 3";} else {
if ($fields["accreditations6"]==4){echo "HTML CODE 4";} else {
if ($fields["accreditations6"]==5){echo "HTML CODE 5";} else {
if ($fields["accreditations6"]==6){echo "HTML CODE 6";} else {
if ($fields["accreditations6"]==7){echo "HTML CODE 7";} else {
if ($fields["accreditations6"]==0){echo "";}
?>
Po pierwsze, czy muszę coś zrobić, aby zamknąć ifs? Czy istnieje również krótszy sposób robienia tego?
Odpowiedzi:
2 dla odpowiedzi № 1Użyj switch
komunikat, lubię to
switch( $fields["accreditations1"] ) {
case 1: echo "HTML CODE 1"; break;
case 2: echo "HTML CODE 2"; break;
case 3: echo "HTML CODE 3"; break;
case 4: echo "HTML CODE 4"; break;
case 5: echo "HTML CODE 5"; break;
case 6: echo "HTML CODE 6"; break;
case 7: echo "HTML CODE 7"; break;
case 0: echo "";
}
Zakładam, że to nie jest rzeczywisty wynik. Jeśli się mylę, powinieneś rozważyć napisanie do tego oddzielnej funkcji!
1 dla odpowiedzi nr 2
Spróbuj tego, używając a for
pętla,
for( $i=1; $i<=count($fields); $i++) {
if( $fields["accreditations".$i] > 0 && $fields["accreditations".$i] <= 7)
echo "HTML CODE " $fields["accreditations".$i];
}
1 dla odpowiedzi nr 3
Myślę, że masz "
za dużo po <p>Accreditations</p>
.
Oprócz tego możesz użyć instrukcji switch, która nieco skróci ten kod.
Możesz także użyć:
if (condition) {}
else if (othercondition) {}
elseif (thirdcondition {}
else {}
Zauważ, że if of else jest nie w środku nawiasy pozostałe. Możesz pisać else if
lub elseif
oba oznaczają to samo.
Jest to szczególnie przydatne w przypadkach, gdy przełącznik nie działa. W twoim przypadku wystarczy użyć przełącznika.