Veröffentlicht 11. August 201015 j 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
11. August 201015 j 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.
11. August 201015 j und für die Beschränkung auf eine bestimmte Anzahl von Datensätzen würde ich mir die MySQL Funktion "LIMIT" einmal genauer ansehen
13. August 201015 j Autor 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
13. August 201015 j 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?
13. August 201015 j Autor 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 :-(
13. August 201015 j 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.
13. August 201015 j Autor Hey, ja das stimmt, aber da das eine Joomla-Componente ist und ich selbst nicht erstellt habe, gehts leider nur so :-(
13. August 201015 j 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.
14. August 201015 j Autor 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
14. August 201015 j Autor 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 = :-(
14. August 201015 j Autor 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 ???
14. August 201015 j Autor 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>"; } ?>
14. August 201015 j Autor 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?
14. August 201015 j Autor Bitte nicht mehr Antworten. Ich mache einen neuen Thread auf. http://forum.fachinformatiker.de/webdesign/140877-php-hyperlink-parameteruebergabe.html#post1254492 Bearbeitet 14. August 201015 j von Jojo1987
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.