SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 23.07.2015, 11:28:44
Tim2theO Tim2theO ist offline
Anfänger
 
Registriert seit: Jul 2015
Alter: 49
Beiträge: 2
mysql_fetch_array in while-Schleife bringt falsche Ausgabe

Hallo,
ich habe folgendes Problem. Ich habe ein mySQL DB mit den Feldern:

datum, uhrzeit, ziel, typ, add

Diese frage ich mit folgender query.php ab:

PHP-Code:
<?php
$ergebnis 
mysql_query("SELECT `abfahrten`.`datum`, `abfahrten`.`uhrzeit`, `abfahrten`.`ziel`, `abfahrten`.`typ`, `abfahrten`.`add`\n"
    
"FROM `abfahrten`\n"
    
"WHERE ((`abfahrten`.`datum` = CURDATE()) AND (`abfahrten`.`uhrzeit` >= CURTIME()) AND (`abfahrten`.`ziel` =\"Zielort\"))\n"
    
" ");
?>
Mit der index.php versuche ich dies nun zur Anzeige zu bringen:

PHP-Code:

 <?php include( 'dbconnect.php' ); 
 include ( 
'query.php' );
// Inkludiert unsere Datei die sich um die Datenbankverbindung und die Abfragen kümmert

?>

<html>
<head>

  <meta http-equiv="Content-Type" content="text/html" charset="iso-8859-1">

  <meta name="GENERATOR" content="Kate">

  <meta name="SIW">
  <link href="fia.css" rel="stylesheet" type="text/css">
  <title>FIA</title>


<!--[if lt IE 9]> <script type="text/javascript" src="excanvas.js"></script> <![endif]-->
  <script type="text/javascript" src="station-clock.js"></script>
  <script type="text/javascript"> var clock = new StationClock("clock"); clock.body = StationClock.RoundBody; clock.dial = StationClock.GermanStrokeDial; clock.hourHand = StationClock.PointedHourHand; clock.minuteHand = StationClock.PointedMinuteHand; clock.secondHand = StationClock.HoleShapedSecondHand; clock.boss = StationClock.NoBoss; clock.minuteHandBehavoir = StationClock.BouncingMinuteHand; clock.secondHandBehavoir = StationClock.OverhastySecondHand; window.setInterval(function() { clock.draw() }, 50); </script><!--[if IE]>
<script type="text/javascript" src="excanvas.js"></script> <![endif]-->
</head>


<body style="background-color: rgb(0, 0, 128);">

<table border="0" cellspacing="5">

  <tbody>

    <tr>

      <td><canvas id="clock"

                  width="220" height="220"> Fehlermeldung </canvas></td>

      <td>
      <h6><nobr>Abfahrt Startort</nobr></h6>

      </td>

      <td><img src="logo.gif" id="Image1" alt=""></td>

    </tr>
    <!-- hier beginnt die zweite Tabellenzeile -->
<tr style="background-color: #FFFF00;">
  <td align=center><h9>Abfahrt</h9></td><td align=center><h9>Ziel</h9>
</tr>  
  
<!-- Hier beginnt die dritte Tabellenzeile -->
<?php while ($row mysql_fetch_array($ergebnis))
     {
    
?>
<tr>

      <td  rowspan="3" style="background-color: #FFFFFF;"><h7><?php list($h$m) = explode(':'$uhrzeit); echo $h;echo ":"; echo $m?></h7></td>

    </tr>

    <tr><td><?php if($typ == "s")
          { echo 
'<img src="schiff.jpg">';
            if (
$typ == "b")
            { echo 
'<img src="bus.jpg">';}
            }
             
?>

    
        <h8><?php echo $ziel?></h8></td></tr>

    <tr><td><marquee><h5><nobr><?php echo $add?></nobr></h5></marquee></td></tr>
      
  
    
    <?php    
        $uhrzeit 
$row['uhrzeit'];
        
$datum   $row['datum'];
        
$ziel    $row['ziel'];
        
$typ     $row['typ'];
        
$add     $row['add'];
        
        }
        
mysql_close($db);

     
?>

  </tbody>
</table>

</body>
</html>
Die Probleme dabei:

Bei der HTML Ausgabe innerhalb der While-Schleife entsteht erstmal eine Tabellenzeile in der nur ein Doppelpunkt (mit denen ich die Anzeige von $h und $m trenne) an. Ansonsten ist die Zeile leer.

Ich hatte die Abfrage oder das Array in Verdacht konnte dies aber nicht bestätigen. Die Abfrage liefert in phpMyAdmin alle Ergebnise zum aktuellen Datum mit Uhrzeit,Typ, Zielort und ggf. add (Bemerkung falls vorhanden).
Wenn ich das Array zum Test ausgebe über:
PHP-Code:
<?php while ($row mysql_fetch_array($ergenis))
        echo 
$row=[0].'-'.$row[1].'-'.$row[3]. usw. <br />;
?>
Dann erhalte ich folgende Ausgabe:

Array - 14:20:00 - Zielort - s -
Array - 15:00:00 - Zielort - s -
Array - 17:00:00 - Zielort - s -

Was in Ordnung ist. Am heutige Datum gibt es zu den o.g. Uhrzeiten je eine Abfahrt an den Zielort. das "s" ist der Typ (Schiff) und das Feld add (Bemerkung) ist leer.

Mich wundert nur das statt dem Datum das Wort Array in der Ausgabe auftaucht. Da ich Neuling bin kann ich mir das noch nicht erklären.

Allerdings erstellt mir die While-Schleife mit der HTML Ausgabe nur Tabellenzeilen der ersten beiden Abfahrten und vorher halt eine Zeile ohne Uhrzeit und Ziel sondern nur mit dem Doppelpunkt zwischen Stunde und Minute.
Das letzte Abfrageergebnis wird gar nicht mehr ausgegeben.

Ich habe mittlerweile soviel gesucht, gelesen, Bücher gewälzt und weiter gesucht. Aber ich komme nicht mehr weiter und hoffe auf einen fachkundigen Rat von euch.
Vielleicht erschließt sich jemandem von euch ja das Problem und kann mir bei der Lösung helfen und evtl. sogar eine kurze Erklärung liefern damit ich dazulernen kann :)

Beste Grüße

Timo
Mit Zitat antworten
  #2  
Alt 23.07.2015, 12:49:24
Tim2theO Tim2theO ist offline
Anfänger
 
Registriert seit: Jul 2015
Alter: 49
Beiträge: 2
AW: mysql_fetch_array in while-Schleife bringt falsche Ausgabe

Danke, habe den Fehler doch noch selbst gefunden.

Die Zuordnung der Variablen $uhrzeit = $row['uhrzeit']; usw. usw. musste an den Anfang der while-Schleife und nicht nach unten.
Mit Zitat antworten
Antwort

Stichworte
abfrage, anzeige, mysql_fetch_array, php, sql


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Addieren von Variable in While Schleife latina1984 PHP Grundlagen 2 26.09.2007 00:05:49
Statistik-Balken mit while Schleife JB PHP Grundlagen 2 21.09.2005 15:34:23
while Schleife und Variablen andy0935 PHP für Fortgeschrittene und Experten 4 26.01.2004 19:05:55
einzelnen wert in ner while schleife aus nem array löschen Stifler PHP Grundlagen 6 16.12.2003 11:29:52
while schleife will nicht durchlaufen Silencer PHP für Fortgeschrittene und Experten 2 03.01.2003 14:43:05


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:04:45 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt