[PHP] & [MySQL] while + MySQL = weisse Seite

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Dw4rf, 6. April 2009 .

Schlagworte:
  1. 6. April 2009
    & [MySQL] while + MySQL = weisse Seite

    Hallo zusammen,

    so, bin mal nach langen wieder dabei ein wenig PHP zu Schreiben. Ich war nie ein Profi, fand es aber immer ganz schön, wenn ich kleinigkeiten hinbekommen habe.

    Wenn kleinigkeiten aber nicht klappen, drehe ich am Rad. So wie jetzt

    Ich bekomme bei der Ausgabe immer eine weisste Seite:

    PHP:
    <?
    include (
    'head/connect.php' );
    include
    "lang/lang_"  . $_SESSION [ 'lang' ].  ".php"

    if ( 
    $_SESSION [ 'lang' ] == "de" )
    {
        
    mysql_query ( "SET NAMES 'utf8'" $db );
        
    mysql_query ( "SET CHARACTER SET 'utf8'" $db );
         
    $abfrage  "SELECT `id`, `headline`, `headline_small`, `text`, `price`, `price_object`, `status_show`, `status_new`, `status_rent`, `status_sale`, `status_sold` FROM `objects_de` WHERE `status_new` = '1'" ;
     }
    elseif ( 
    $_SESSION [ 'lang' ] == "en" )
    {
        
    mysql_query ( "SET NAMES 'utf8'" $db );
        
    mysql_query ( "SET CHARACTER SET 'utf8'" $db );
         
    $abfrage  "SELECT `id`, `headline`, `headline_small`, `text`, `price`, `price_object`, `status_show`, `status_new`, `status_rent`, `status_sale`, `status_sold` FROM `objects_en` WHERE `status_new` = '1'" ;
    }
    elseif ( 
    $_SESSION [ 'lang' ] == "es" )
    {
        
    mysql_query ( "SET NAMES 'utf8'" $db );
        
    mysql_query ( "SET CHARACTER SET 'utf8'" $db );
         
    $abfrage  "SELECT `id`, `headline`, `headline_small`, `text`, `price`, `price_object`, `status_show`, `status_new`, `status_rent`, `status_sale`, `status_sold` FROM `objects_es` WHERE `status_new` = '1'" ;
    }
    elseif ( 
    $_SESSION [ 'lang' ] == "ru" )
    {
        
    mysql_query ( "SET NAMES 'utf8'" $db );
        
    mysql_query ( "SET CHARACTER SET 'utf8'" $db );
        
    $abfrage  "SELECT `id`, `headline`, `headline_small`, `text`, `price`, `price_object`, `status_show`, `status_new`, `status_rent`, `status_sale`, `status_sold` FROM `objects_ru` WHERE `status_new` = '1'" ;
    }
    elseif ( 
    $_SESSION [ 'lang' ] == "pl" )
    {
        
    mysql_query ( "SET NAMES 'utf8'" $db );
        
    mysql_query ( "SET CHARACTER SET 'utf8'" $db );
         
    $abfrage  "SELECT `id`, `headline`, `headline_small`, `text`, `price`, `price_object`, `status_show`, `status_new`, `status_rent`, `status_sale`, `status_sold` FROM `objects_pl` WHERE `status_new` = '1'" ;
    }
        
    $result  mysql_query ( $abfrage $db ) or die( mysql_error ());
        
    $row  mysql_fetch_array ( $result );
        
        
    $id  = [ 'id' ];
        
    $headline  = [ 'headline' ];
        
    $headline_small  = [ 'headline_small' ];
        
    $text  = [ 'text' ];
        
    $price  = [ 'price' ];
        
    $price_object  = [ 'price_object' ];
        
    $status_show  = [ 'status_show' ];
        
    $status_new  = [ 'status_new' ];
        
    $status_rent  = [ 'status_rent' ];
        
    $status_sale  = [ 'status_sale' ];
        
    $status_sold  = [ 'status_sold' ];
    {
    ?>
        <p class="title01"><a onClick="window.open('images/apartments/villa3.jpg')"><img src="images/apartments/villa3.jpg" width="153" height="135" alt="" border="0" hspace="10" align="left"></a><?  echo  $headline ?></p>
    <div style="position:relative;">
      <div style="width:200px; height:50px; position:absolute; left: 98px; right: 40px; top: -24px;"><span class="title01"><a onclick="window.open('images/apartments/villa3.jpg')"><a onclick="window.open('images/apartments/villa3.jpg')"><img src="images/sold.gif" border="0" /></a></a></span></div>
      <div style="width:200px; height:200px; position:absolute; left: 320px; right: 320px;"></div>
    </div>

    <p><?php  echo  $text ?></p>
    <p>&nbsp;</p>
    <p><a href="rojales.php" target="_top"><?php  echo  $mehr ?></a></p>
    <p><b><?php  echo  $price ?>: &euro; 295.000 </b></p>
    <p><img src="images/hr01.gif" width="467" height="6" alt="" border="0"></p>
    <p class="title01"><a onClick="window.open('images/Objekt7/bild01.jpg')"><img src="images/Objekt7/bild01.jpg" alt="" width="146" height="146" hspace="10" border="0" align="right"></a><?php  echo  $headline ?></p>
    <p><?php  echo  $text ?></p>
    <p><a href="unique.php" target="_top"><?php  echo  $mehr ?></a></p>
    <p><strong><?php  echo  $price ?>: &euro; 595.000 </strong></p>
    <?php
    }
    ?>
    Ich möchte gerne über die Schleife dass er mir jedes mal die entsprechenden Werte aus der DB ausgibt, wenn status_new halt 1 ist.
    Wenn Satus 0, dann eben nichts.

    Wäre super wenn mir da mal jemand auf die Sprünge Helfen würde.

    //Dw4rf
     
  2. 6. April 2009
    AW: & [MySQL] while + MySQL = weisse Seite

    PHP:
        $row  mysql_fetch_array ( $result );
        
        
    $id  = [ 'id' ];
        
    $headline  = [ 'headline' ];
        
    $headline_small  = [ 'headline_small' ];
        
    $text  = [ 'text' ];
        
    $price  = [ 'price' ];
        
    $price_object  = [ 'price_object' ];
        
    $status_show  = [ 'status_show' ];
        
    $status_new  = [ 'status_new' ];
        
    $status_rent  = [ 'status_rent' ];
        
    $status_sale  = [ 'status_sale' ];
        
    $status_sold  = [ 'status_sold' ]; 
    Machen zu:
    PHP:
         while( $row  mysql_fetch_array ( $result )) {
        
        
    $id  $row [ 'id' ];
        
    $headline  $row [ 'headline' ];
        
    $headline_small  $row [ 'headline_small' ];
        
    $text  $row [ 'text' ];
        
    $price  $row [ 'price' ];
        
    $price_object  $row [ 'price_object' ];
        
    $status_show  $row [ 'status_show' ];
        
    $status_new  $row [ 'status_new' ];
        
    $status_rent  $row [ 'status_rent' ];
        
    $status_sale  $row [ 'status_sale' ];
        
    $status_sold  $row [ 'status_sold' ]; 
    }
    2 Fehler:
    1. Du sagst doch schon in der Überschrift was von While.. denn verwende es doch einfach in deinem Code
    2. du musst nicht $id = ['wasd']
    sondern $id = $row['wasd']

    Macht Error doch ma auf:
    error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
    Dann kommen auch undeklarierte Variablen usw zum vorschein..

    MfG
     
  3. 6. April 2009
    AW: & [MySQL] while + MySQL = weisse Seite

    Ach sorry, ich hab das while in dem Code vergessen. Hatte voll die zuvor gespeicherte Version im "Cache".

    Danke bzg. der Fehlersuch Hilfe. BW geht schonmal raus.

    So nun die letzte Sache dazu aber noch, mache ich es, ist die Seite nicht mehr weiss. Was schonmal gut ist, aber er gibt mir nichts aus

    PHP:
    <? php
    while( $row  mysql_fetch_array ( $result )); {
        
        
    $id  $row [ 'id' ];
        
    $headline  $row [ 'headline' ];
        
    $headline_small  $row [ 'headline_small' ];
        
    $text  $row [ 'text' ];
        
    $price  $row [ 'price' ];
        
    $price_object  $row [ 'price_object' ];
        
    $status_show  $row [ 'status_show' ];
        
    $status_new  $row [ 'status_new' ];
        
    $status_rent  $row [ 'status_rent' ];
        
    $status_sale  $row [ 'status_sale' ];
        
    $status_sold  $row [ 'status_sold' ]; 
     
    ?>
        <p class="title01"><a onClick="window.open('images/apartments/villa3.jpg')"><img src="images/apartments/villa3.jpg" width="153" height="135" alt="" border="0" hspace="10" align="left"></a><?  echo  $headline ?></p>
    <div style="position:relative;">
      <div style="width:200px; height:50px; position:absolute; left: 98px; right: 40px; top: -24px;"><span class="title01"><a onclick="window.open('images/apartments/villa3.jpg')"><a onclick="window.open('images/apartments/villa3.jpg')"><img src="images/sold.gif" border="0" /></a></a></span></div>
      <div style="width:200px; height:200px; position:absolute; left: 320px; right: 320px;"></div>
    </div>

    <p><?php  echo  $text ?></p>
    <p>&nbsp;</p>
    <p><a href="rojales.php" target="_top"><?php  echo  $mehr ?></a></p>
    <p><b><?php  echo  $price ?>: &euro; 295.000 </b></p>
    <p><img src="images/hr01.gif" width="467" height="6" alt="" border="0"></p>
    <p class="title01"><a onClick="window.open('images/Objekt7/bild01.jpg')"><img src="images/Objekt7/bild01.jpg" alt="" width="146" height="146" hspace="10" border="0" align="right"></a><?php  echo  $headline ?></p>
    <p><?php  echo  $text ?></p>
    <p><a href="unique.php" target="_top"><?php  echo  $mehr ?></a></p>
    <p><strong><?php  echo  $price ?>: &euro; 595.000 </strong></p>
    <?php
    }
    ?>

    Das Statemant ist aber richtig.

    //Dw4rf
     
  4. 7. April 2009
    AW: & [MySQL] while + MySQL = weisse Seite

    Nimm mal das Semikolon nach der Bedingung von der While-Schleife weg, dann sollte es gehen.
     
  5. 7. April 2009
    AW: & [MySQL] while + MySQL = weisse Seite

    Jop, dann tut es
    Danke BW haste.

    Ok, wo hat dann meine while Schleife den Fehler?
    Denn es werden nicht verschiedene Sachenaus der Db angezeigt, sondern nur die gleichen.

    Es soll ja überall wo status = 1 ist angezeigt werden.
    So gibt es mir aber nur den ersten Eintrag, aber nicht den 2. der auch status = 1 hat....
     
  6. 7. April 2009
    AW: & [MySQL] while + MySQL = weisse Seite

    mysql_query("SET NAMES 'utf8'", $db);
    mysql_query("SET CHARACTER SET 'utf8'", $db);

    kommt doch überall vor, nimms einfach aus den else if teilen raus
    dann hast du nur noch $abfrage = blabla in den ifs
    und kannst dadrauf bspweise nen switch machen

    und musst nich immer das ganze qry nehmen kannst auch nur die tabelle dann verändern

    $table = 'options_ru'; // -> daraus machste n switch^^
    mysql_query("SELECT all,that,stuff FROM `{$table}` WHERE status_new=1");
     
  7. 7. April 2009
    AW: & [MySQL] while + MySQL = weisse Seite

    Und wie bekomme ich es dann hin dass er mir immer verschiedene Datensätze aus der DB ausgibt und nicht immer den gleichen?
    Denn irgendwie klappt es mit meiner Schleife leider nicht.

    //Dw4rf
     
  8. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.