Jojo1987 Geschrieben 11. August 2010 Geschrieben 11. August 2010 Hi, Ich will eine Abfrage von meinem JCAl-Calender haben. Soweit habe ich schon ein wenig programmiert, aber ich kenne mich damit nicht aus: $abfrage = "SELECT concat_WS('-',year,month,day) AS Datum1, title FROM jos_jcalpro2_events ORDER BY Datum1"; $ergebnis = mysql_query($abfrage); while($row = mysql_fetch_object($ergebnis)) { echo "$row->Datum1 - $row->title <br>"; }?> Da kommt dann: 2009-10-10 - Crazy After Summer Party 3 2009-10-10 - Weseke (Partynacht) Also soweit so gut, aber ich würde gerne das Datum so haben: 10.10.2009 - Crazy After Summer Party 3 10.10.2099 - Weseke (Partynacht) und nur die Datensätze, die ab heute, oder in der Zukunft liegen und nur immer eine gewissen Anzahl, z.b. 30 Stück. Ich hoffe, du kannst mir dabei helfen. DANKE
lupo49 Geschrieben 11. August 2010 Geschrieben 11. August 2010 Wenn du das Datum anders formatiert haben möchtest, dann schau dir mal die concat-Funktion genauer an. Um nur Datensätze auszugeben, die in der Zukunft liegen, musst du eine WHERE-Bedingung über das Datumsfeld einbauen.
dgr243 Geschrieben 11. August 2010 Geschrieben 11. August 2010 und für die Beschränkung auf eine bestimmte Anzahl von Datensätzen würde ich mir die MySQL Funktion "LIMIT" einmal genauer ansehen
Jojo1987 Geschrieben 13. August 2010 Autor Geschrieben 13. August 2010 Hi, @ lupo49: danke für die Hilfe, aber ich bekomme es einfach nicht hin, dass ich mein Datum (Das ja aus drei eigenen Spalten besteht), mit der WHERE-Bedingung zu vergleichen :-( @dgr243: Wie muss ich denn "LIMIT" benutzen? DANKE
_n4p_ Geschrieben 13. August 2010 Geschrieben 13. August 2010 MySQL :: MySQL 5.0 Reference Manual :: 12.2.8 SELECT Syntax
lupo49 Geschrieben 13. August 2010 Geschrieben 13. August 2010 Das geht doch durch einfaches überlegen. Schaue dir den Aufbau des concat-Befehls an: SELECT concat_WS('-',year,month,day) ... Anhand welcher Reihenfolge wird wohl die Ausgabe aufgebaut?
Jojo1987 Geschrieben 13. August 2010 Autor Geschrieben 13. August 2010 Das geht doch durch einfaches überlegen. Schaue dir den Aufbau des concat-Befehls an: SELECT concat_WS('-',year,month,day) ... Anhand welcher Reihenfolge wird wohl die Ausgabe aufgebaut? Hi, ja das wusste ich auch vorher schon, dass man die umdrehen kann, aber ich kann das dann nicht mit dem aktuellen Tag (13.08.2010) vergleichen, damit ich nur die heutigen und kommende bekomme :-(
lupo49 Geschrieben 13. August 2010 Geschrieben 13. August 2010 Normalerweise nutzt man auch den Datentyp DATE um Daten in eine Tabelle zu speichern. Der bietet weitaus mehr Möglichkeiten, als drei Spalten Tag, Monat, Datum. Mit dem Datentyp kannst du ohne großen Aufwand eine Menge an Datumsoperationen ausführen.
Jojo1987 Geschrieben 13. August 2010 Autor Geschrieben 13. August 2010 Hey, ja das stimmt, aber da das eine Joomla-Componente ist und ich selbst nicht erstellt habe, gehts leider nur so :-(
_n4p_ Geschrieben 13. August 2010 Geschrieben 13. August 2010 du kannst aber das ergebnis von concat als date behandeln, schaut dir mal MySQL :: MySQL 5.1 Referenzhandbuch :: 12.8 Cast-Funktionen und Operatoren an. allerdings brauchst du das gar nicht: MySQL :: MySQL 5.1 Reference Manual :: 11.7 Date and Time Functions funktioniert auch so.
Jojo1987 Geschrieben 14. August 2010 Autor Geschrieben 14. August 2010 HEy Leute, danke für die Antworten, nur leider will das bei mir nicht gehen :-(. Bin voll zu doof dafür. Kann mir da jemand eventuell was zusammenbauen? WÖre SAU NETT DANKE
_n4p_ Geschrieben 14. August 2010 Geschrieben 14. August 2010 was hast du denn bis jetzt? und was genau ist das problem?
Jojo1987 Geschrieben 14. August 2010 Autor Geschrieben 14. August 2010 HEy, also bis jetzt habe ich folgendes: <?php $verbindung = mysql_connect("localhost", "*****","******") or die ("keine Verbindung möglich. Benutzername oder Passwort sind falsch"); mysql_select_db("*****") or die ("Die Datenbank existiert nicht."); ?> <?php $abfrage = SELECT concat_WS('-',year,month,day) AS Datum1, title FROM jos_jcalpro2_events WHERE Datum1 > CURDATE() ORDER BY Datum1 LIMIT 30 $ergebnis = mysql_query($abfrage); while($row = mysql_fetch_object($ergebnis)) { echo "$row->Datum1 - $row->title <br>"; } ?> leider kommt da dann immer die Fehlermeldung: Parse error: syntax error, unexpected T_STRING in /var/www/vhosts/der-partykalender.info/httpdocs/iphone/test.php on line 15 Also in der Zeile mit: $abfrage = :-(
Jojo1987 Geschrieben 14. August 2010 Autor Geschrieben 14. August 2010 Ich habe jetzt eine andere Spalte gefunden bei MySQL: Die Spalte: "start_date" gibt das im Format "datetime" ist. Vielleicht kann man damit besser arbeiten? Sind so Einträge drin: 2009-03-28 19:00:00 ???
Jojo1987 Geschrieben 14. August 2010 Autor Geschrieben 14. August 2010 Klappt :-) aber leider steht da jetzt noch die Zeit falsch: 2010-08-14 06:00:00 Wie kann ich das in der Ausgabe umdrehen? <?php $verbindung = mysql_connect("localhost", "*****","*****") or die ("keine Verbindung möglich. Benutzername oder Passwort sind falsch"); mysql_select_db("******") or die ("Die Datenbank existiert nicht."); ?> <?php $abfrage = "SELECT start_date, title FROM jos_jcalpro2_events WHERE start_date > CURDATE() ORDER BY start_date LIMIT 30"; $ergebnis = mysql_query($abfrage); while($row = mysql_fetch_object($ergebnis)) { echo "$row->start_date - $row->title <br>"; } ?>
Jojo1987 Geschrieben 14. August 2010 Autor Geschrieben 14. August 2010 HEy, hab es schon geschaft :-) $abfrage = "SELECT concat_WS('.',day,month,year) AS Datum1, start_date, title FROM jos_jcalpro2_events WHERE start_date > CURDATE() ORDER BY start_date LIMIT 30"; $ergebnis = mysql_query($abfrage); while($row = mysql_fetch_object($ergebnis)) { echo "$row->Datum1 - $row->title <br>"; } Jetzt eine andere Frage: Es gibt in der Tabelle die Spalte "description". Wie kann ich einen HyperLink zu dieser Beschreibeung über den Title legen?
Jojo1987 Geschrieben 14. August 2010 Autor Geschrieben 14. August 2010 (bearbeitet) Bitte nicht mehr Antworten. Ich mache einen neuen Thread auf. http://forum.fachinformatiker.de/webdesign/140877-php-hyperlink-parameteruebergabe.html#post1254492 Bearbeitet 14. August 2010 von Jojo1987
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden