de_lung Geschrieben 23. Mai 2002 Geschrieben 23. Mai 2002 Hallo, ich bastle atm an einem Script, welches mir aktuelle Termine auflistet. Dabei zeigt es unten die gesamten Termine an, und oben drüber, die Termine, die man am aktuelle Tag hat: ---AKTUELLER TAG-- - Termin 1 - Termin 2 -------------------------------- ---GESAMT--- - Termin 1 .. .. .. Jetzt habe ich das Problem, dass mein Select Befehl, mit dem ich nur die Termine mit dem aktuellen Datum haben nicht funktioniert Zuerst hole ich mir das Datum $timestamp = time(); $date = date("d.m.Y",$timestamp); [/php] Dann pack ich das Datum in ein Formularfeld [php]print "<form action=\"$PHP_SELF\" method=\"GET\"><b>\n"; print "<input type=\"hidden\" size=\"50\" name=\"aktuell\" maxlenght=\"100\" value=\"".$date."\">\n"; print "</form>"; Und versuche dann mit einem Select Befehl darauf zuzugreifen $heutigetermine = mysql_query( "SELECT * FROM projekt_termine WHERE datum=$aktuell" ); Danach will ich ihn mit ner While Schleife ausgeben <? while ( $daten = mysql_fetch_array( $heutigetermine ) ) { ?> Heutige Termine:<br> :: <?php echo $daten[termin_name] ?> <? } ?>[/php] Nun sagts mir jedoch Warning: Supplied argument is not a valid MySQL result resource Der Fehler soll in der While-Schleife liegen, aber ich tip eher auf den SQL Befehl, denn wenn ich den SQL Befehl umschreibe und die WHERE Bedingung weglasse gehts...aber halt nich so, wie ich es benötige Hat einer einen Tip? Die Variable $date zeigts mir mit dem echo befehl richtig an, hier liegt der fehler also nicht. gruß, lung Zitieren
shad0w Geschrieben 23. Mai 2002 Geschrieben 23. Mai 2002 $heutigetermine = mysql_query( " SELECT * FROM projekt_termine WHERE datum = '$aktuel'l" ); so geht das. btw. select * from macht man nicht. wenn es eh nur 2 oder 3 felder sind, kannst du auch SELECT feld1, feld2, feld3 FROM table nehmen... das ist schneller.... so long Zitieren
shad0w Geschrieben 23. Mai 2002 Geschrieben 23. Mai 2002 noch was: <? while ( $daten = mysql_fetch_array( $heutigetermine ) ) { ?> Heutige Termine:<br> :: <?php echo $daten[termin_name] ?> <? } ?> das iss nich dein ernst, oder? schonmal was von echo() gehoert? <?php while ( $daten = mysql_fetch_array( $heutigetermine ) ) { echo( 'Heutige Termine:<br>' ); echo $daten['termin_name']; } ist wohl um einiges schneller und schoener... bei jedem <?php muss erst mal der php interpreter wieder gestartet werden... das dauert... Zitieren
MiH Geschrieben 24. Mai 2002 Geschrieben 24. Mai 2002 schonmal was von echo() gehoert? ja klar siehst doch hier in der zeile: <?php echo $daten[termin_name] ?> *lacht* Zitieren
Jaraz Geschrieben 24. Mai 2002 Geschrieben 24. Mai 2002 Original geschrieben von -silencer- <?php while ( $daten = mysql_fetch_array( $heutigetermine ) ) { echo( 'Heutige Termine:<br>' ); echo $daten['termin_name']; } Das hilft ihm nur immer noch nicht, da $heutigetermine so nicht mehr gefüllt ist. Du musst die Abfrage und die Verarbeitung des Ergebnisses in einem <?php ... ?> packen. Gruß Jaraz Zitieren
d.r.eam Geschrieben 24. Mai 2002 Geschrieben 24. Mai 2002 <?php /* Listing 1 */ /* Formular - kurz und schmerzlos */ ?> <form action="<?=$GLOBALS['PHP_SELF'] ?>" method="GET"> <input type="hidden" size="50" name="aktuell" maxlength="100" value="<?=time() ?>"> <input type="submit" > </form> <?php /* Listing 2 */ /* Verarbeitung */ /* Alle Fehlermeldungen einschalten */ error_reporting(E_ALL); if(isset($_GET['aktuell']) && !empty($_GET['aktuell'])){ /* Formatierung des Datums nach ISO nicht vergessen */ $heutigetermine = mysql_query( "SELECT * FROM projekt_termine" ." WHERE datum='".strftime('%Y-%m-%e',$_GET['aktuell'])."'" ); print "Heutige Termine:<br>"; while ( $daten = mysql_fetch_assoc( $heutigetermine ) ){ /* evtl. foreach(){} */ print $daten['termin_name']; } } ?> [/PHP] Zitieren
d.r.eam Geschrieben 24. Mai 2002 Geschrieben 24. Mai 2002 Achja, das eigentliche Problem dürfte deine Query sein. Also am besten nach der Query das Ergebnis checken! Zitieren
Hanfman Geschrieben 29. Mai 2002 Geschrieben 29. Mai 2002 Würde da aber auch: $heutigetermine = mysql_query( "SELECT * FROM projekt_termine WHERE datum=getdate()" ); gehen? Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.