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);
}
///////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////
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.