Datum Binär umwandeln und Variablen zuweisen.

L

Lukasz

Hallo. Mein Problem sind die Ausgabe von Files Toady. Dahinter möchte ich jeweils die Files die mit der heutigen Wochentag in der DB Binär gespeichert sind ausgeben.

PHP:
$showcomments = "100";
$result = mysql_query("SELECT * FROM phpkit_content ORDER BY content_id DESC");
{
for($i=0; $i<$showcomments && ($row = mysql_fetch_array($result)); $i++)
IF ("$row[content_option]" == "4" and "$row[content_status]" == "1") { 
echo "<img src=images/icon.gif>&nbsp;&nbsp;<a class=orange1 href=include.php?path=content/download.php&contentid=$row[content_id]>".$row[content_title]."</a><br>";
} else {}
} ?>
Erläuterung: im ersten Satz gebe ich an das maximal 100 Files ausgelesen werden sollen. Das ganze geschieht rückwärts aus der DB.

So wie der script jetzt ist werden die letzten 100 Contenteinträge
"IF ("$row[content_option]" == "4" and "$row[content_status]" == "1")" die den Status 1 also download haben ausgelesen.

In meiner DB "$row[content_time]" habe ich die Binäre Zeit des eintelldatums stehen.

Diese kann ich umwandeln. Und zwar so:
date('d.m. - H:i:s',$row[cintent_time])

So, das Problem ist das ich jetzt
1. Die jetztige Zeit so auslesen möchte.
2. den Monatstag (akuelle Zeit) eine Variable zuweisen möchte.
3. den Monatstag (DB Zeit). eine andere Variable.
4. Dann sollte ich das ganze im IF satz mit and..... erweitern.

Somit würden eben die Files today ausgegeben werden.
Jedoch habe ich eben das Problem das ich nicht weis wie ich der aktuellen Zeit dem Monatstag eine Variable zuweisen soll. Ebenfalls nicht wie ich dem DB TAg eine Variable zuweisen soll. Und wie soll ich die 2 vergleichen?

Den rest hab ich sonst gut hinbekommen.

Einen Dank an alle die sich die Mühe machen zu helfen.

Gruss!
 
Hallo!

Also, mal zusammenfassen:
Du möchtest:
- Das Datum, an dem das Script aufgerufen wird
- Den Tag des Monats, an dem das Script aufgerufen wird
- Den Tag des Monats, des Datenbankeintrages

auslesen, um diese zu vergleichen (es sollen nur die Datensätze angezeigt werden, die von "heute" sind).
Und das vergleichen willst du dann in einer if-Abfrage durchführen.
Ich hoffe, ich hab' die Situation richtig verstanden?!

Wäre es nicht einfacher, alles zusammen in der MySQL-Abfrage auszuführen?
So wie ich das sehe, hast du die Zeit in der DB als Linux-Zeitstempel stehen (MySQL-Zeitstempel sind ja 14-stellig und können wohl kaum mit Date() umgewandelt werden).
Dann würde ich die Query doch einfach so gestalten:

PHP:
$M = date(m);
$D = date(d);
$Y = date(Y);
$TS = mktime(0,0,0,$M,$D,$Y);

$result = mysql_query("SELECT * FROM phpkit_content  WHERE content_time >= $TS ORDER BY content_id DESC");

Aber mal 'ne Frage:
Warum packst du denn eigentlich alles in eine externe PHP-If-Abfrage?
Das mit den nur 100 Datensätze anzeigen lassen, und den auswerten, ob die Werte 4 und 1 gegeben sind, kann man doch alles in die Query packen.
Mal 'n Beispiel:

PHP:
SELECT * FROM phpkit_content  WHERE content_time >= $TS AND content_option='4' AND content_status='1' ORDER BY content_id DESC  LIMIT 0,100
 
Zurück