2012-02-13 3 views
-2

J'ai un problème avec mon code PHP. J'essaie de faire de la boutique en ligne et Im maintenant dans l'étape de la liste des produits. Mon code est si long, donc je ne montrerai qu'une partie substantielle.Erreur "demi" inconnue

$result = mysql_query("SELECT name, category, describtion, value FROM products") or die(mysql_error()); 
if(mysql_num_rows($result) % 2 == 0) 
{ 
    while($left = mysql_fetch_array($result, MYSQL_NUM) && $right = mysql_fetch_array($result, MYSQL_NUM)) 
    { 
     echo ' 
     <div class="sub_items"> 
     <div class="sub_left"> 

       <div class="sub_items_header"> 
       <h1>'.$left[0].'</h1> 
       <h2>'.$left[1].'</h2> 
       </div> 

       <div class="sub_items_image"> 
       <img src="images/'.$left[0].'.png" width="167" height="164" alt="'.$left[0].'" /> 
       </div> 

       <div class="sub_items_text"> 
        '.$left[2].' 
       </div> 

       <div class="sub_items_cartinfo"> 
        <div class="price"> 
        <h2>'.$left[3].'$</h2> 
        </div> 

        <div class="addtocart"> 
        <a href="chart.php?name='.$left[0].'"><span>Add to Cart</span></a> 
        </div> 

        <div class="clearthis">&nbsp;</div> 
       </div> 

       <div class="clearthis">&nbsp;</div> 

      </div> 
      <div class="sub_right"> 

       <div class="sub_items_header"> 
       <h1>'.$right[0].'</h1> 
       <h2>'.$right[1].'</h2> 
       </div> 

       <div class="sub_items_image"> 
       <img src="images/'.$right[0].'.png" width="175" height="170" alt="'.$right[0].'" /> 
       </div> 

       <div class="sub_items_text"> 
        '.$right[2].' 
       </div> 

       <div class="sub_items_cartinfo"> 
        <div class="price"> 
        <h2>'.$right[3].'$</h2> 
        </div> 

        <div class="addtocart"> 
        <a href="chart.php?name='.$right[0].'"><span>Add to Cart</span></a> 
        </div> 

        <div class="clearthis">&nbsp;</div> 
       </div> 

       <div class="clearthis">&nbsp;</div> 

      </div> 

      <!-- End of Right Sub Item --> 

      <div class="clearthis">&nbsp;</div> 

     </div> 
     <div class="h_divider">&nbsp;</div> 
      '; 
    } 

Dans le cycle while, j'écoute des données. Les données sont séparées à gauche et à droite div. Je ne reçois aucun message d'erreur, mais j'ai une mauvaise sortie. Regardez. ...

Le côté gauche ne se charge pas, mais oui. Pourquoi? Quelqu'un s'il vous plaît aidez-moi.

Répondre

3

= a une priorité plus élevée que AND; utilisez AND au lieu de & & ou mettez entre parenthèses les affectations.

Au lieu de

$left = mysql_fetch_array($result, MYSQL_NUM) && $right = mysql_fetch_array($result, MYSQL_NUM) 

soit

$left = mysql_fetch_array($result, MYSQL_NUM) AND $right = mysql_fetch_array($result, MYSQL_NUM) 

ou

($left = mysql_fetch_array($result, MYSQL_NUM)) && ($right = mysql_fetch_array($result, MYSQL_NUM)) 
+0

Thre ne est pas problème dans les images! Il y a un problème dans les données qui ne se charge pas. Regardez. Dans la première moitié, il n'y a pas de texte et de titre, mais dans la gauche il est. – user35443

+0

Eh bien, peut-être que les valeurs dans la base de données sont réellement vides? En outre, un de vos cols est nommé "description" au lieu de "description"? Peut-il être une faute de frappe? – ustun

+0

Si elles étaient vides, je ne pourrais pas le mettre ici. – user35443