Problem mit while-Schleife

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    hier mal der aktuelle code:

    PHP-Code:
    <?php
                                    
    echo '<pre>';
                                    
    error_reporting(E_ALL);
                                    echo 
    '</pre>';
                                
    // countvars
                                
    $x 1;
                                
    $cnews"SELECT * FROM mxm_news ORDER BY datum";
                                
    $newslesen mysql_query($cnews,$connect);
                                echo 
    '<table width 620 border="0" cellspacing="0" cellpadding="0">';
                                echo 
    '<tr>';
                                while (
    $prg=mysql_fetch_array($newslesen))
                                {    
                                    
    //datum
                                    //$mkday = strtotime ($prg['datum']);
                                    
    $mkd mkformat ($prg['datum']);
                                    
    $wday date ("D | d.m.y"mktime($mkd));
                                    echo 
    "test: $mkd";
                                    
    //table aufbauen
                                    
    echo '<td>';
                                    include (
    'label_tmp_tbl.php');
                                    echo 
    '</td>';
                                    
    $x ++;
                                    if (
    $x ==4)
                                    {
                                        echo 
    '</tr></table><table width 620 border="0" cellspacing="0" cellpadding="0"><tr>';
                                        
    $x 1;
                                    }                            
                                }
                                
                                
    ?>
    ich forme den string nun um, damit mktime ihn schluckt, aber wieder der selbe fehler: 4 verschiedene vars -> ein ergebniss....

    Kommentar


    • #17
      PHP-Code:
      $mkd mkformat($prg['datum']); 
      Hab ich was verpasst oder wurde eine neue Funktion eingeführt?
      Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

      Kommentar


      • #18
        Was macht die Fkt mkformat() ?
        Und das funzt NICHT ?
        PHP-Code:
        $wday date ("D | d.m.y"strtotime($prg['datum'])); 
        Wozu überhaupt mktime() ? Hast du dir mal die Fkt im Manual angeschaut und deine Parameter mit jenen verglichen, die die Fkt erwartet ?
        Dein Datum aus der DB müsste doch eigentlich korrekt formatiert sein für strtotime()
        Und das error_reporting mit E_ALL sagt nix ?

        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #19
          jupp... damit der sql-string mktime-verträglich wird...

          Kommentar


          • #20
            Der String aus der DB sollte aber schon strtotime() kompatibel sein. Also warum nochmal eine eigene Fkt drüberlassen ?
            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

            Kommentar


            • #21
              Aloha Leuts,

              ich würde das Problem gern nochmals aufrollen da ich denke das ich auch teilweise etwas falsch rüber gebracht habe...

              Die Problematik:
              Ich baue mit mehreren Templates ein Programm auf, die Daten kommen aus einer SQL-Datenbank.

              nun habe ich die eigentliche Datei, in der dieses Programm "zusammengebaut" wird.

              Hier mal der Aufbau der programm.php, den unwichtigen html-teil etwas zusammengekürzt:

              programm.php
              Code:
              <?php
              	include ('../config_inc.php');
              ?>
              <html>.....
              der Aufbau der ersten Tabelle und Bestückung mit den Daten aus der dB:

              Code:
              <td valign="top">
              						<!-- Programm auslesen -->
              						<?php
              							$x = 1;
              							$cnews= "SELECT * FROM mxm_news ORDER BY datum";
              							$newslesen = mysql_query($cnews,$connect);
              							echo '<table width 620 border="0" cellspacing="0" cellpadding="0">';
              							echo '<tr>';
              							while ($prg=mysql_fetch_array($newslesen))
              							{	
              								
              								echo '<td>';
              								include ('label_tmp_tbl.php');
              								echo '</td>';
              								$x ++;
              								if ($x ==4)
              								{
              									echo '</tr></table><table width 620 border="0" cellspacing="0" cellpadding="0"><tr>';
              									$x = 1;
              								}							
              							}
              							
              							?>
              							</td>
              der untere Bereich:

              Code:
              <td>
              						  	<!-- flyer auslesen -->
              						<?php
              							$fnews= "SELECT * FROM mxm_news ORDER BY datum";
              							$flyerlesen = mysql_query($fnews,$connect);
              							echo '<table width 620 border="0" cellspacing="0" cellpadding="0">';
              							while ($rowflyer=mysql_fetch_array($flyerlesen))
              							{	
              								//datum
              								$zeit = $rowflyer[datum];
              								$ja = substr($zeit, 0, 4); // jahr
              								$mo = substr($zeit, 5, 2); // monat
              								$ta = substr($zeit, 8, 2); // tag
              								$tr = ".";
              								$t = $ta.$tr.$mo.$tr.$ja;
              								
              								//build tables
              								echo '<tr><td><a name="'.$rowflyer[id].'"></a>';
              								echo '<img src="../img/stopper_620/'.$rowflyer[flyer].'"/>';
              								echo '</td></tr>';	
              								echo '<tr><td height="2"></td></tr>';
              								echo '<tr><td>';
              								include ('fly_tmp_tbl.php');
              								echo '</td></tr>';
              								echo '<tr><td height="10"></td></tr>';
              								echo '<tr><td><a href="#programindex" class="indexlink">zur Übersicht</a></td></tr>';
              								echo '<tr><td height="10"></td></tr>';
              								echo '<tr><td background="../img/layout/linex.gif"><img src="../img/spacer.gif" width="1" height="15">&nbsp;</td></tr>';							
              							}
              							echo '</table>';
              							?>						  
              						  </td>
              hier die tmpl-Dateien die ich include:

              fly_tmpl_tbl.php
              Code:
              <table width="620" height="210" border="0" cellpadding="0" cellspacing="10" class="bg2">
              	<tr>
              		<td valign="top">
              			<table width="100%" height="186" border="0" cellpadding="0" cellspacing="2">
              				<tr>
              					<td width="298" valign="top" class="bg2">
              						<iframe height="168" width="100%" src="iframe_tmp.php?pt=<?php echo $rowflyer[ptext];?>" scrolling="Yes" frameborder="0"></iframe>
              					</td>
              						<td width="295" valign="top">
              							<table bgcolor="<?php echo $rowflyer[bgc];?>" width="100%" height="100%" border="0" cellpadding="0" cellspacing="15" >
              							<tr>
              								<td valign="top">
              									<table width="100%" border="0" cellspacing="0" cellpadding="0">
              										<tr>
              											<td class="textheader1"></td>
              										</tr>
              										<tr>
              											<td height="10" class="textheader1"><?php echo $t;?> | Open <?php echo $rowflyer[offen];?><br><br><?php echo $rowflyer[pname];?></td>
              										</tr>
              										<tr>
              											<td height="1" class="bg1"><img src="../img/spacer.gif" width="1" height="1" /></td>
              										</tr>
              										<tr>
              											<td height="10"><img src="../img/spacer.gif" width="30" height="10" /></td>
              										</tr>
              										<tr>
              											<td height="60" valign="top" class="text3"><?php echo $rowflyer[dj];?><br><br><?php echo $rowflyer[music];?><br><br>Eintritt:<?php echo $rowflyer[eintritt];?></td>
              										</tr>
              									</table>
              								</td>
              							</tr>
              						</table>
              					</td>
              				</tr>
              			</table>
              		</td>
              	</tr>
              </table>
              label_tmp_tpl.php
              Code:
              <table width="196" border="0" cellpadding="1" cellspacing="1">
                <tr>
                  <td width="196" background="../img/layout/linex.gif"><img src="../img/spacer.gif" width="1" height="15">&nbsp;</td>
                </tr>
                <tr>
                  <td height="20" align="left" class="bg1"><?php echo $partydatum;?></td>
                </tr>
                <tr>
                  <td height="1"><img src="../img/spacer.gif" width="1" height="1" /></td>
                </tr>
                <tr>
                  <td align="center" valign="middle" class="bg2"><a href="#<?php echo $prg[id];?>"><img src="../img/logos/<?php echo $prg[logo];?>" width="194" height="92" border="0" /></a></td>
                </tr>
              </table>
              Mein Problem wie schon vorher beschrieben: erstaunlicher Weise liest er in der While-Schleife alle passenden Daten aus, überträgt aber das umgeformte Datum - heißt das erste Datum das er aus der Datenbank holt und ins Format bringt ist dann in allen anderen Durchläufen in der Schleife. Ich habe auch schon einiges ausprobiert - immo habe ich die Funktion die das Datum umformt ausgeklammert und den Ablauf in der Schleife inkludiert - mit dem selben Effekt.

              Hier seht ihr wie es aussehen sollte: http://www.maxxim-berlin.de/progr_docs/programm.htm

              So sieht es im Moment aus: http://www.maxxim-berlin.de/progr_docs/programm.php

              Kommentar


              • #22
                okay, hat sich erledigt... schlimm wenn man beim datenbank - aufbau versehentlich timestamp anstelle datetime nimmt und per phpadmin das datum immer mit now() überschrieben wird...


                trotzdem nochmals vielen dank an alle

                Kommentar

                Lädt...
                X