webForumDet fria alternativet

Avbryta while-slinga?

2 svar · 433 visningar · startad av Skogiz

SkogizMedlem sedan feb. 200395 inlägg
#1

Håller på med ett script som ska lista nyhetsartiklar. Meningen är att man ska kunna skriva ett datum sist i artikeln och på så sätt skriva artikeln och få den publicerad när datumet väl är rätt. DVS artikeln ska inte publiceras om datumet i artikeln är längre fram än dagens datum.

Problemet uppstår om datumet är dagens datum eller äldre (alltså ELSE-delen körs) för då visar den ju alla postar. Den ska bara visa en post om ELSE-delen körs.

Hoppas ni är med på hur jag menar.

Om datumet i artikeln är före dagens datum visas inte texten och nästa post visas men om datumet är dagens datum eller äldre ska endast 1 post visas.
Hur löser man detta på bästa sätt?

while ($rad = mysql_fetch_array ($data))
{

   $texten = $rad["pagetext"];
   $rest = substr("$texten", -10); // kollar de 10 sista tecknen
   $jerrysdatum = strtotime("$rest");
   $dagensdatum = time();
   IF ($dagensdatum < $jerrysdatum)
   {
   print ""; 
   print "<br>";
   }
      else
      {
         print "<br>";
         print "<b>";
         print $rad["title"] ;
         print "</b>";
         print "<br>";
         print nl2br($rad["pagetext"]);
      }
}
?>

Tack på förhand

stevenetMedlem sedan juni 20001 251 inlägg
#2

Skogiz skrev:

while ($rad = mysql_fetch_array ($data))
{

   $texten = $rad["pagetext"];
   $rest = substr("$texten", -10); // kollar de 10 sista tecknen
   $jerrysdatum = strtotime("$rest");
   $dagensdatum = time();
   IF ($dagensdatum < $jerrysdatum)
   {
   print ""; 
   print "<br>";
   }
elseif (date("Y-m-d", $dagensdatum)==date("Y-m-d", $jerrysdatum) OR $dagensdatum > $jerrysdatum) {
         print "<br>";
         print "<b>";
         print $rad["title"] ;
         print "</b>";
         print "<br>";
         print nl2br($rad["pagetext"]);
break;
}
      else
      {
         print "<br>";
         print "<b>";
         print $rad["title"] ;
         print "</b>";
         print "<br>";
         print nl2br($rad["pagetext"]);
      }
}
?>

Något åt det hållet du menar?

SkogizMedlem sedan feb. 200395 inlägg
#3

Exakt!

Toppen! Tack för hjälpen!

127 ms totalt · 3 externa anrop · v20260731065814-full.2b84b982
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)