[PHP/MySQL]Datum in Tabelle eintragen

djjlx

---???---
ID: 62937
L
9 Mai 2006
599
21
Hy!

Hab ein kleines Problem!

Ich möchte das aktuelle Datum in die Tabelle eintragen!

So hab ichs gemacht

PHP:
@mysql_query("UPDATE statistik SET datum=".date("m-d-Y")." , klicks= klicks+1 WHERE url = '$url'");
Ergebniss in der Tab = -2014

Habs auch so probiert
PHP:
$datestamp = date("m-d-Y");
@mysql_query("UPDATE statistik SET datum= '$datestamp', klicks= klicks+1 WHERE url = '$url'");

Tabelle hab ich eingestellt auf Date und mit varchar(10) hab ichs auch probiert!

Finde meinen Fehler nicht!

Lg
Jürgen
 
Das erste is schlichtweg falsch, das siehst du ja selber, weil die '...' fehlen.
Das zweite sieht korrekt aus.

Ich vermute mal, dass kein Datensatz der Bedingung genügt.
Was spricht mysql_affected_rows() ? 0 ?
Mach btw. noch das @ weg und lass dir mysql_error() ausgeben. Vielleicht is doch was falsch.

edit:
Wieso nimmst du übrigens nicht den DATE-Datentyp ?
 
Zuletzt bearbeitet:
Ja hatte ich zuerst und da ist immer nur 0000-00-00 rausgekommen dann hab ich in anderen php dateien nach so etwas gesucht und dort hab ichs mit varchar gefunden. Als erstes hatte ich DATE drinnen aber funktioniert auch nicht.

Das @ hab ich nur drinnen da das nicht bei jeder URL gemacht wird bzw. nicht jede url in der TAB steht (zb.Rotation von Externen Anbietern) die Statistik ist nur für interne Sponsoren gedacht.

LG
 
Ja hatte ich zuerst und da ist immer nur 0000-00-00 rausgekommen
Dann hast du versucht, Müll einzutragen.
Das @ hab ich nur drinnen da das nicht bei jeder URL gemacht wird bzw. nicht jede url in der TAB steht (zb.Rotation von Externen Anbietern) die Statistik ist nur für interne Sponsoren gedacht.
Böse ! Weg mit dem @. Wenn kein Datensatz zutrifft, gibt es auch keinen Fehler.
Code:
[FONT=Courier New][B][COLOR=#9932cc]UPDATE[/COLOR][/B] statistik
[B][COLOR=#9932cc]SET[/COLOR][/B] klicks=0
[B][COLOR=#9932cc]WHERE[/COLOR][/B] 0=1[/FONT]
z.B. is gültig und erzeugt keinen Fehler.

edit:
Klar. Das Datumsformat muss Y-m-d sein, sonst akzeptiert es die DB freilich nicht ;)
 
Zuletzt bearbeitet:
PHP:
UPDATE statistik SET klicks=0 WHERE 0=1

Dumme Frage:Wo würde das hingehören? Da wirds ja nicht bei der richtigen URL eingetragen!

LG
edit:
Das heißt am besten so
$datestamp = date("Y-m-d");
 
Naja, wenn als Spaltentyp Date verwendet werden würde, könnte man auch einfach NOW() schreiben. Ist allgemein schicker, wenn man nicht ständig zwischen MySQL und PHP "wechselt", sondern sich bei solchen Dingen auf eine Art und Weise beschränkt. MySQL bietet da einiges an Funktionen zur Datumseingabe und -manipulation.
 
Dumme Frage:Wo würde das hingehören? Da wirds ja nicht bei der richtigen URL eingetragen!
Da wird gar nix eingetragen. Das soll dir nur zeigen, dass das @-Zeichen überflüssig ist. Auch Bedingungen, die immer zu false evaluieren, erzeugen dir keinen Fehler.