Seite 1 von 3
mysql datum
Verfasst: 20.06.2004 20:41
von Lord_Femto
hi.
ich habe ein newsscript.
Code: Alles auswählen
if()
{
echo " <font color=red>$betreff</font>";
}
else
{
echo "$betreff";
}
ich möchte nun, dass, wenn in den ersten fünf tagen nach dem erstellen eines neuen newsbeitrages die textfarbe rot wird. wenn der beitrag älter als 5 tage ist, dann soll er in ganz normaler farbe erscheinen. soweit so gut. doch wie mache ich das jetzt mit der if bedingung? $datum<???
das $datum wird bei mir mit dem sql TIMESTAMP abgespeichert...
als zweites suche ich eine gif animation, was aussieht wie ein blaulicht der feuerwehr oder irgendetwas anderes, was als alert fungieren könnte
danke im voraus.
Verfasst: 20.06.2004 21:01
von Dennis63
Code: Alles auswählen
if ((date > (data('U') - 86400 * 5)) echo "bla1";
else echo "bla2";
Grüße
Dennis
PS: echo "$betreff"; <-- Lasse hier die " -Zeichen weg. Es geht zwar auch mit, gibt aber problem, wenn Du einfache Anführungsstriche nimmst ( ' )
Verfasst: 20.06.2004 21:37
von Lord_Femto
Code: Alles auswählen
if ((date > (data('U') - 86400 * 5))
{
echo "<font color=red>$betreff</font>";
}
else
{
echo $betreff;
}
folgender fehler
Parse error: parse error, unexpected '{' in c:\homepage\server\news.php on line 52
Verfasst: 20.06.2004 21:46
von Dennis63
Jep. Das ist richtig.
(a) Wozu die { } Klammern?
(b) Ich habe eine ( Klammer zu viel. Daher er Fehler.
(c) Und ich das $ vor dem date vergessen (nicht vor dem date() )
Grüße
Dennis
Verfasst: 20.06.2004 22:21
von Lord_Femto
ok. fehler sind weg. problem ist nur, dass jetzt alle auch die neuen postings schwarz markiert sind.
außerdem müssten es doch 8640 statt 86400 sein.
Verfasst: 20.06.2004 22:26
von Dennis63
60x60x24 ist bei mir aber 86400 und nicht 8640
Du kannst aus dem > auch ein < machen und umgekehrt. Ich habe den Code nur schnell eingetippt. Anpassen an deine Seite solltest Du ihn schon selber.
www.php.net/date hilft auch wenn es drum geht wie welche Funktion genau arbeitet.
Grüße
Dennis
Verfasst: 20.06.2004 22:37
von Lord_Femto
na dann verstehe ich aber nicht, warum er mir den wert 1087763874 ausgibt?!?
Verfasst: 20.06.2004 22:59
von Dennis63
Poste bitte mehr als nur "das verstehe ich nicht"
1087763874 = 20.06.2004 22:37:54
Und was soll daran falsch sein? Das ist das aktuelle Datum. Ein 100% korrekter TimeStamp.
Leis dazu bitte folgendes :
www.php.net/date
Grüße
Dennis
Verfasst: 20.06.2004 22:59
von Leuchte
Das ist der Timestamp den du natürlich formatieren musst.
http://de3.php.net/manual/de/function.date.php
Verfasst: 20.06.2004 23:23
von Lord_Femto
hmmm danke für den tipp. funktioniert aber immer noch nicht.
hier mal mein code:
Code: Alles auswählen
<?php
$vb = mysql_connect('localhost', '*******, '*******');
$daten = mysql_db_query("usr_web218_1", "select id, autor, text, betreff, datum from `PB-News` order by id desc");
mysql_select_db("usr_web218_1");
$datum2 = mysql_db_query("SELECT UNIX_TIMESTAMP('datum') from`PB-News`", $vb);
$anzahl = mysql_num_rows($daten);
for($i=0; $i<$anzahl; $i++)
{
$autor = mysql_result($daten, $i, "autor");
$datum = mysql_result($daten, $i, "datum");
$betreff = mysql_result($daten, $i, "betreff");
$text = mysql_result($daten, $i, "text");
echo "<br>
<table width=60% align=center class=bodyline cellpadding=4 cellspacing=0>
<tr height=26>
<td align=left class=row1><strong>";
if ($datum2 > (date('U') - 432000))
{
echo "<font size=3px color=red>$betreff</font>";
}
else
{
echo "<font size=3px>$betreff</font>";
}
echo "</strong>" . time('void') . " $datum2</td>
</tr>
<tr>
<td class=row2>" . nl2br("$text") . "</td>
</tr>
<tr>
<td align=right class=row3><span class=genmed2>Posted by <strong>$autor</strong>, $datum Uhr </span></td>
</tr>
</table>";
}
if(!$vb)
{
echo "<font color=red size=5>Zur Zeit gibt es Probleme mit der Datenbank.<br>Bitte versuchen Sie es später noch einmal.<br>Falls das Problem öfter auftaucht, bitte eine kurz Mail an den <a href=mailto:webmaster@pandemicbrew.de>Webmaster</a> schreiben, Danke!</font>";
}
mysql_close($vb);
?>