DarkoWho: Datum wird nicht ausgegeben! [PHP/MySQL]

Moin,
ich würd gern mal wissen ob man irgendwas Bestimmtes beachten muss, wenn man ein bestimmtes Datum aus einer MySQL-Datenbank mit Hilfe von PHP ausgeben lassen will...

Ich hab nämlich das Problem, dass mir kein Datum ausgegeben wird - obwohl die Abfrage richtig sein sollte...

  
  
if($dr_namen=="dr_alle" && $dr_datum=="dr_d1")  
{  
$ausg30 = "SELECT ma.mname, quadrat, datum, uhrzeit, azn FROM sm, ma WHERE datum = '1995-04-19'";  
  

(if-Anweisung ist nur für Auswahl der Suchkriterien)

Mit echo "$row->datum"; lasse ich mir dann die Ergebnisse ausgeben, allerdings wird in meinem Fall, wie gesagt, nichts ausgegeben.

Ich hoffe mir kann jemand ein paar hilfreiche Tips geben.

Danke schonmal im Voraus!

  1. Ich hab nämlich das Problem, dass mir kein Datum ausgegeben wird - obwohl die Abfrage richtig sein sollte...

    Was passiert denn, wenn du MySQL direkt damit fütterst? - ohne PHP.

    1. Ich hab nämlich das Problem, dass mir kein Datum ausgegeben wird - obwohl die Abfrage richtig sein sollte...

      Was passiert denn, wenn du MySQL direkt damit fütterst? - ohne PHP.

      ... dann wird mir ganz normal das gesuchte Datum ausgegeben - der gesuchte Eintrag ist also definitiv vorhanden.

      1. ... dann wird mir ganz normal das gesuchte Datum ausgegeben - der gesuchte Eintrag ist also definitiv vorhanden.

        Gut - was hast du also im PHP stehen? Die zuerst geposteten Zeilen können schlichtweg nicht funktionieren.

        1. ... dann wird mir ganz normal das gesuchte Datum ausgegeben - der gesuchte Eintrag ist also definitiv vorhanden.

          Gut - was hast du also im PHP stehen? Die zuerst geposteten Zeilen können schlichtweg nicht funktionieren.

          Insgesammt schaut das so bei mir aus:

            
          if($dr_namen=="dr_alle" && $dr_datum=="dr_d1")  
          {  
          $ausg30 = "SELECT ma.mname, quadrat, datum, uhrzeit, azn FROM sm, ma WHERE datum = '1995-04-19'";  
          $erg30 = mysql_query($ausg30) or die ("Query failed: " . mysql_error() . " Actual query: " . mysql_error());  
            
                  echo "<center><table border='0'  bordercolor='#333333' cellpadding='0' cellspacing='0' width='654px'>";  
                  echo "<tr>";  
                  echo "<td width='11%' align='center'>";  
                  echo "<u><b>Name</b></u>";  
                  echo "</td>";  
                  echo "<td width='11%' align='center'>";  
                  echo "<u><b>Quadrat</b></u>";  
                  echo "</td>";  
                  echo "<td width='12%' align='center'>";  
                  echo "<u><b>Datum</b></u>";  
                  echo "</td>";  
                  echo "<td width='11%' align='center'>";  
                  echo "<u><b>Uhrzeit</b></u>";  
                  echo "</td>";  
                  echo "<td width='11%' align='center'>";  
                  echo "<u><b>AzN</b></u>";  
                  echo "</td>";  
                  echo "</tr>";  
            
          while($row = mysql_fetch_object($erg30))  
                  {  
                  echo "<center><table border='0'  bordercolor='#333333' cellpadding='0' cellspacing='0' width='654px'>";  
                  echo "<tr>";  
                  echo "<td width='10%' align='center'>";  
                  echo "$row->mname";  
                  echo "</td>";  
                  echo "<td width='10%' align='center'>";  
                  echo "$row->quadrat";  
                  echo "</td>";  
                  echo "<td width='10%' align='center'>";  
                  echo "$row->datum";  
                  echo "</td>";  
                  echo "<td width='10%' align='center'>";  
                  echo "$row->uhrzeit";  
                  echo "</td>";  
                  echo "<td width='10%' align='center'>";  
                  echo "$row->azn";  
                  echo "</td>";  
                  echo "</tr>";  
                  echo "</center>";  
                  }  
                  }  
          
          

          Ab der While-Schleife gehts mit der Ausgabe der DB los, der Rest drüber ist nur als Überschrift für die einzelnen ausgegebenen Daten gedacht^^

          1. Dachte ich hab schon alles gesehen.. Werd immer wieder eines besseren belehrt. ;) Ich will da ja jetzt wirklich nicht schulmeistern, aber abgesehend davon das du dir mal dringent CSS angucken solltest, schreib den Code wenn du ihn schon so schreiben mußt bitte so auf. Was gibt dir print_r($row) aus?

            lg

              
            echo '<center><table border="0"  bordercolor="#333333" cellpadding="0" cellspacing="0" width="654px">";  
                     <tr>  
                       <td width="10%" align="center">'$row->mname.'</td>";  
                       <td width="10%" align="center">'.$row->quadrat.'</td>  
                       <td width="10%" align="center">'.$row->datum.'</td>  
                       <td width="10%" align="center">'.$row->uhrzeit.'</td>  
                       <td width="10%" align="center">'.$row->azn.'</td>  
                     </tr>  
                   </table>  
                </center>';  
            
            
            1. echo '<center><table border="0"  bordercolor="#333333" cellpadding="0" cellspacing="0" width="654px">";
                       <tr>
                         <td width="10%" align="center">'$row->mname.'</td>";
                         <td width="10%" align="center">'.$row->quadrat.'</td>
                         <td width="10%" align="center">'.$row->datum.'</td>
                         <td width="10%" align="center">'.$row->uhrzeit.'</td>
                         <td width="10%" align="center">'.$row->azn.'</td>
                       </tr>
                     </table>
                  </center>';

                
              PS.: die '";' am Ende der zeile 1 und 3 sind natürlich überflüssig und zuviel  ;)
              
              1. print_r($row) aus?

                Mit print_r($row) bekomme ich aber ebenfalls keine Ausgabe zustande...

                Wie?? Du bekommst damit keinerlei Ausgabe? Wenn garnix kommt ist dein Query fehlerhaft oder falsch und dein row ist dann sowieso leer.

                lg

                Hm, wenn ich print_r($row); bei meinen anderen, funktionierenden, Abfragen benutze, bekomme ich z.B. stdClass Object ( [mname] => Grube [mnr] => 3 [organisation] => ICBM ) ausgegeben, wenn ich mir das Datum ausgeben lassen will, bekomm ich aber nichts derartiges ausgegeben.
                Dabei funktioniert die reine MySQL-Abfrage wie gewünscht...
                Am restlichen Quellcode kanns eigentlich auch nicht liegen, da es sich um eine Kopie einer funktionierenden Abfrage handelt - mit angepassten Werten natürlich.

                1. Hi!

                  Hm, wenn ich print_r($row); bei meinen anderen, funktionierenden, Abfragen benutze, bekomme ich z.B. stdClass Object ( [mname] => Grube [mnr] => 3 [organisation] => ICBM ) ausgegeben, wenn ich mir das Datum ausgeben lassen will, bekomm ich aber nichts derartiges ausgegeben.
                  Dabei funktioniert die reine MySQL-Abfrage wie gewünscht...

                  Lass dir sämtliche beteiligte Variablen nach einer Änderung und so wie du sie als Parameter einer Funktion übergibst mit var_dump() ausgeben. (Ein <pre> vorher erhöht die Übersichtlichkeit der Ausgabe.) Stell außerdem (am besten immer beim Entwickeln) das error_reporting auf E_ALL und schau (in der phpinfo()-Ausgabe) ob display_errors angeschaltet ist.

                  Lo!

                  1. Dabei funktioniert die reine MySQL-Abfrage wie gewünscht...

                    Lass dir sämtliche beteiligte Variablen nach einer Änderung und so wie du sie als Parameter einer Funktion übergibst mit var_dump() ausgeben. (Ein <pre> vorher erhöht die Übersichtlichkeit der Ausgabe.) Stell außerdem (am besten immer beim Entwickeln) das error_reporting auf E_ALL und schau (in der phpinfo()-Ausgabe) ob display_errors angeschaltet ist.

                    Dem schließ ich mich an, und sollte display_errors auf off sein oder du nicht wissen wie du das error reporting einschaltest

                     error_reporting(E_ALL);  
                     ini_set("display_errors", 1);  
                    
                    

                    einfach am Begin des php abschnittes hinzufügen

                    lg

            2. Ich will da ja jetzt wirklich nicht schulmeistern, aber abgesehend davon das du dir mal dringent CSS angucken solltest [...]

              Ich würde eher HTML empfehlen :)

              echo "<td width='11%' align='center'>";
                      echo "<u><b>Name</b></u>";
                      echo "</td>";

              Das lässt darauf schließen, dass es eigentlich Kopfzellen sind die man sinnigerweise mit th auszeichnet.

              1. Ich will da ja jetzt wirklich nicht schulmeistern, aber abgesehend davon das du dir mal dringent CSS angucken solltest [...]

                Ich würde eher HTML empfehlen :)

                echo "<td width='11%' align='center'>";
                        echo "<u><b>Name</b></u>";
                        echo "</td>";

                Das lässt darauf schließen, dass es eigentlich Kopfzellen sind die man sinnigerweise mit th auszeichnet.

            3. Dachte ich hab schon alles gesehen.. Werd immer wieder eines besseren belehrt. ;) Ich will da ja jetzt wirklich nicht schulmeistern, aber abgesehend davon das du dir mal dringent CSS angucken solltest, schreib den Code wenn du ihn schon so schreiben mußt bitte so auf. Was gibt dir print_r($row) aus?

              lg

              Ich habs mittlerweile geschafft, dass zumindest die Überschriften ausgegeben werden - fehlt also nur noch der quasi wichtigste Teil^^

              Mit print_r($row) bekomme ich aber ebenfalls keine Ausgabe zustande...

              Und ja, ich arbeite noch nicht wirklich lange mit HTML/PHP/CSS, daher danke für die restlichen Tips^^

              1. print_r($row) aus?

                Mit print_r($row) bekomme ich aber ebenfalls keine Ausgabe zustande...

                Wie?? Du bekommst damit keinerlei Ausgabe? Wenn garnix kommt ist dein Query fehlerhaft oder falsch und dein row ist dann sowieso leer.

                lg

          2. Ab der While-Schleife gehts mit der Ausgabe der DB los, der Rest drüber ist nur als Überschrift für die einzelnen ausgegebenen Daten gedacht^^

            Sieht ansich OK aus - wie aus dem "Lehrbuch".

            Btw: gibts einen speziellen Grund warum du nicht mysql_fetch_assoc verwendest?