webForumDet fria alternativet

Conditionals

2 svar · 257 visningar · startad av slow

slowMedlem sedan apr. 2004148 inlägg
#1

Kan någon se ifall det är något fel på min IF statements?
Denna lilla kod skall se ifall den ska hämta en nyhet från en speciell kategori eller från vilken kategori som helst. Det fungerar när jag väljer en kategori men när jag väljer Alla, alltså att den ska hämta från vilken kategori som helst så visar den bara tomt. Inga felmeddelanden eller liknande. Ser någon något fel?
Kan man ha en if inom en if?

MVH Patrik

///////////////////////////////////////////////////////////////
////////////////////// Senaste (hela) /////////////////////////
///////////////////////////////////////////////////////////////
if($page[funktiontop]=="Senaste (hela)") {
include "../config.php";
if($page[kattop]!="Alla"){
$kattoppen = $page[kattop];
mysql_select_db($database_piteguid, $piteguid);
$query_senaste_nyheten = "SELECT * FROM ". $stadsmapp_riksguiden ."_pages WHERE status = 'page' AND kategori_n = '" .$kattoppen. "' AND pub = 1 AND startDate <= (CURRENT_DATE) ORDER BY id DESC LIMIT 1";
$senaste_nyheten = mysql_query($query_senaste_nyheten, $piteguid) or die(mysql_error());
$row_senaste_nyheten = mysql_fetch_assoc($senaste_nyheten);
$totalRows_senaste_nyheten = mysql_num_rows($senaste_nyheten); 
} 
else if($page[kattop]=="Alla"){
mysql_select_db($database_piteguid, $piteguid);
$query_senaste_nyheten = "SELECT * FROM ". $stadsmapp_riksguiden ."_pages WHERE status = 'page' AND pub = 1 AND startDate <= (CURRENT_DATE) ORDER BY id DESC LIMIT 1";
$senaste_nyheten = mysql_query($query_senaste_nyheten, $piteguid) or die(mysql_error());
$row_senaste_nyheten = mysql_fetch_assoc($senaste_nyheten);
$totalRows_senaste_nyheten = mysql_num_rows($senaste_nyheten);
}
echo "<p><strong>"; 
echo $row_senaste_nyheten['title'];
echo "</strong><br>";
echo $row_senaste_nyheten['content'];
echo "</p>"; 
// om kommentera visa detta
if ($row_senaste_nyheten[commentary] == "on") {
echo "<p><a href='index.php?id=" .$row_senaste_nyheten['id']."&forumAction=addComment'>Kommentera nyheten</a></p>";
}
mysql_free_result($senaste_nyheten);
}
///////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////
PeddaMedlem sedan juni 20004 880 inlägg
#2

1. Ja, du kan ha if-satser inuti andra if-satser.

2. Det verkar inte som att den går in i din else if-sats. Alltså verkar inte $page['kattop'] ha värdet 'Alla'.
Testa att skriva ut $page['kattop'] för att se vad den har för värde eller ändra else if till enbart else.

red/ du kan ju även lägga till or die(mysql_error()) till din sql-sats för att se om du får något felmeddelande och skriva ut sqlfrågan för att se om du ser några fel i den.

slowMedlem sedan apr. 2004148 inlägg
#3

Tack! Jag hade fel value under Alla...klantigt :) Men tack för hjälpen!!

128 ms totalt · 3 externa anrop · cache AV · v20260731051352-full.56cc9887
0 ms — hämta statistik (cache)
0 ms — hämta forumlista (cache)
125 ms — hämta tråd, inlägg och bilagor (db)