Nur anzeigen was hinter dem Datum liegt...

hehe...

guck mal hier:
rtfm.jpg

sia.jpg


@mods: sorry fürs spammen
 
@brain: nochmal ne kurze frage:

PHP:
$zu_insertender_timestamp = mktime("15"*hour*, "30"*minutes*, "5"*seconds*, "2"*month*, "28" *day*, "2002" *year*);

was hat da sgenau zu bedueten ? wieso 20 minuten, 5 sekunden etc...
der benutzer soll in das script ja ein datum eingeben wie z.b. 12.05.2002 aber wie wandel ich denn diese eingegeben zeit in den timestamp um ?

danke
 
wenn du von den eingaber deiner user $day, $month und $year hast, dann gehts so:

PHP:
$zu_insertender_timestamp = mktime("24", "00", "0", $month, $day, $year);

dann sollte es gehen, ich habe jetzt 24:00:00 genommen, du kannst natürlich auch 00:00:00 nehmen, musst du sehen, ob es an dem eingetragenen tag noch gehen soll oder schon an dem tag nichtmehr.
 
hmm, das funzt nicht...also es gibt ein formular, dort tippt der user z.b. "28.05" ein. dieses formular heisst "date". Nun wird die Datei geöffnet die den kram eintragen soll, dort hab ich nun gemacht:

PHP:
$date2 = explode(".", $date);
$timestamp = mktime("24", "00", $date2[1], $date2[2]);
$speichern = mysql_query("INSERT into com (time) VALUES ('$timestamp')") or die (mysql_error());

die spalte: "time" ist von typ timestamp, dort werden so nur lauter nullen eingetragen...

was mache ich falsch ? standard beim timestamp feld ist "NULL" liegts daran ? :D

//edit!

ich hab mal BIGINT ausprobiert und es scheint zu gehen ich teste mal...

//edit2!

bei diesem code:

PHP:
$date_com = time();
$anfrage = mysql_query("SELECT id, blubb, time FROM com order by id desc WHERE time < ".$date_com." LIMIT 5");
while ($ergebnis = mysql_fetch_array($anfrage)) {

sagt er was von einem fehler bei der while schleife..mysql fehler..

hat da jemand ne idee ? brain ? :P
 
Zuletzt bearbeitet:
keine ahnung, aber ich würde es mal so probieren, ich glaube, die syntax ist etwas verdreht:

PHP:
$anfrage = mysql_query("SELECT id, blubb, time FROM com WHERE time < '".$date_com."' ORDER BY id DESC LIMIT 5");

funktioniert das andere denn jetzt? abgesehen davon hast du anscheinen kein jahr beim timestamp eingetragen. Außerdem hast du die sekunden vergessen, also kriegst du wahrscheinlich nicht ganz das erwünschte ergebnis. versuch es so:

PHP:
$timestamp = mktime("24", "00", "0", $date2[1], $date2[2], date("Y"));
 
nun hab ichs so:

PHP:
 $anfrage = mysql_query("SELECT id, name, time FROM com WHERE time < '$date_com' order by id desc");

so der fehler ist weg...ABER er zeigt auch daten an wenn die das datum 09.05 besitzen, also ich denke der timestamp wird falsch eingetragen...bitte helft mir :P
 
schreib doch mal zum test die daten für den "endtag" direkt in eine variable im script, dann kannst du sehen, ob es vielleicht an der variablen übergabe liegt.

Ansonsten lass dir mal mit getdate() für irgendeinen geINSERTeten timestamp das datum anzeigen, dann kannst du das kontrollieren.
 
zu deinem 1. post... muss ich denn das Jahr mit angeben ? Ich wollte es erstmal ohne probieren...oder meinst du, dass meine gewünschte funktion nur mit der jahresangabe funtzen kann... ?

ich hab mal folgendes probiert:

PHP:
$date2 = explode(".", $date);
echo "$date2[1]<p>";
echo $date2[2]<p>";

und da gibt er nur $date2[2] aus, sprich nur den Monat...vielleicht liegt dort der fehler...
 
Zuletzt bearbeitet:
Zurück