Frage zu PHP und MYSQL

Hallo zusammen,
mich beschäfftigt gerade ein Problem:
Ich hab in meiner Datenbank eine Spalte wo immer der Eintragstermin in Jahr-Monat-Tag Format gespeichert wird (da ich keine Einstellung gefunden habe, wo nur der Monat gespeichert wird).
Nun will ich die Daten auslesen, was kein Porblem darstellt, doch das nachherige Sortieren.
Habt ihr eine Idee wie man die Daten nach Monaten sortieren kann?
Also so etwa:

if (Datum1 == ****(Jahr egal)-10-**(Tag egal))
{
     echo "Text1";
}
else
{
     echo "";
}
usw.

Oder kann man auch direkt nur Dateien von einem Monat aus der SQL DB auslesen?

Hi,

welchen Typ hast du denn der Datums-Spalte verpasst? Sofern du “Date” verwendenst sollte es da eigentlich kein Problem geben.

Ich hab DATE verwendet,
kann man das denn so schreiben mit der IF und den *?
Ich dachte nur so theoretisch, aber wusste die genaue Programmierung nicht

du könntest als Datentyp auch einfach TinyInt (oder nen anderen INT) verwenden, und dort einfach nur die Zahlen 1 bis 12 eintragen.
Ist dann zwar kein Datumsformat, aber wenn ohnehin nur der Monat wichtig ist, und danach sortiert werden soll, denke ich ist das am passendsten.

Das wird nicht gehen, denke ich mal, da man eine Checkbox ankreuzt und das Datum gespeichert wird, wann diese abgeschickt wurde.
Ich möchte halt nen Vergleich darstellen, wie oft und in welchem Monat die Checkbox angekreuzt wurde :smiley:

Du meinst, du entnimmst die Zeit mit time()?
Da gibts was passendes, das heißt date(). Mit dem findest du den Monat heraus, und trägst diesen ein. Ich benutz auch immer INT für Datum/Zeit, da ich einfach den Timestamp speichere…

Öhm… ich muss zugeben noch neu auf diesem Gebiet zu sein, und hab nicht so viel gerade verstanden^^

Also:
Ich frage die Zeit damit ab:

$SQL = "INSERT INTO st100 (Punkt, Ergebnis, Erstellt) VALUES ('".$_REQUEST['Punkt']."', '".$_REQUEST['Ergebnis']."', NOW(''))";

Und nun will ich nicht nur eine insgesammte Summer für das “Ergebnis” (pro geklickter Checkbox +1)

$sql = mysql_query("SELECT SUM(Ergebnis) as summest FROM st100",$Tabelle); list($summest) = mysql_fetch_array($sql);
Sondern auch noch wissen, wie oft in welchem Monat diese Checkbox geklickt wurde :slight_smile:

Da hab ich mir gedacht (aber ehrlich gesagt keien Ahnung wie es gehen könnte), wie oben beschrieben, das Datum (Erstellt) auszulesen und mit einem PHP Script den Monaten zu zuteilen, oder so :slight_smile:

du kannste es direkt von einem bestimmten Monat auslesen mit der WHERE clause
z.B. für Juni:

Wie man es allerdings nach Monaten sortieren kann ohne dabei Tage und Jahre zu beachten… :< kein plan im moment.

Ja, sowas wäre genial :slight_smile:

Ok, ich habs so gemacht und es hat geklappt - vielen Dank euch für eure Hilfe :slight_smile:

Jetzt hab ich noch eine Frage :smiley:

Kann man auch sowas schreiben?

SELECT SUM(Ergebnis) as summest FROM st100 WHERE MONTH(Erstellt) = 6 and YEAR(Erstellt) = 2010

oder wie sieht der Code aus, wenn man auch noch das Jahr abfragen will?

[quote=“Cannily”]Jetzt hab ich noch eine Frage :smiley:

Kann man auch sowas schreiben?[/quote]
Das könnte man a) im Handbuch nachlesen, b) ausprobieren.

cybton.com/tutorials_show,My … t,842.html

Vielen Dank comjag für den Link, der ist genial :smiley:

Euch allen Danke für euere Hilfe und Geduld. :thx:

Sollen ich den Thread jetzt löschen, da er erledigt ist, oder stehen lassen, da andere vielleicht was lernen könnten?

einfach stehen lassen
löschen kannst du ihn eh nicht :ps:

klar kann er ihn löschen.
einfach den ersten post löschen^^

Kann er nicht