php
  • mysql
  • arrays
  • smarty
  • 2011-07-22 5 views 1 likes 
    1

    J'ai mon code php comme ceci:Smarty MYSQL Tableau assoc id

    $products = mysql_query("SELECT p.* FROM products AS p " 
             ."INNER JOIN products_cat_link AS cpl ON cpl.Product_ID = p.id " 
             ."WHERE cpl.Category_ID = '$forcat' " 
             ."ORDER BY p.id"); 
    
    $products_row = array(); 
    $products_images = array(); 
    
        while($prow = mysql_fetch_assoc($products)) { 
          if (isset($prow['id'])) { 
            $product['info'] = $prow; 
           $images = mysql_query("SELECT * FROM products_images WHERE `Product_id` = '$prow[id]' ORDER BY id"); 
           while($irow = mysql_fetch_assoc($images)) { 
            $images_result[] = $irow; 
           } 
            $product['images'] = $images_result; 
            $products_images[] = $product; 
          } 
          $product = ''; 
          $images_result = ''; 
        } 
    $smarty->assign('products_images',$products_images); 
    

    Cela fait un tableau comme celui-ci

    Array ( 
        [info] => array (
         [id] = 1 
         [name] = abc 
        ) 
        [images] => array (
         [Products_Image_Thumb] = 1a.jpg 
         [Products_Image_Big] = 1b.jpg 
        ) 
    ) 
    

    Mais je ne peux pas obtenir les informations d'images avec Smarty:

    {foreach from=$products_images key=cols item=image name=images} 
    {if $cols % 4 == 0}<div>{/if} 
    <a href="images/products/big/{$image.images.Products_Image_Big}"> 
    <img src="images/products/thumb/{$image.images.Products_Image_Thumb}" alt="Click to Enlarge" title="Click to Enlarge" width="87" height="65" style="margin:3px;" /></a> 
    {if $cols % 4 == 3}</div>{/if} 
    {if $smarty.foreach.images.last}</div>{/if} 
    {/foreach} 
    

    Merci pour toute aide!

    Répondre

    2

    D'après le commentaire de ma réponse précédente, cela devrait fonctionner. Cependant, il n'a pas été testé et je n'ai pas utilisé Smarty depuis un moment.

    {foreach from=$products_images key=cols item=product name=products} 
        {if $cols % 4 == 0}<div>{/if} 
        {foreach from=$product.images item=image name=images} 
         <a href="images/products/big/{$image.Products_Image_Big}"> 
         <img src="images/products/thumb/{$image.Products_Image_Thumb}" alt="Click to Enlarge" title="Click to Enlarge" width="87" height="65" style="margin:3px;" /></a> 
        {/foreach} 
        {if $cols % 4 == 3}</div>{/if} 
        {if $smarty.foreach.products.last}</div>{/if} 
    {/foreach} 
    
    +0

    Gallery_Image_Big et Gallery_Image_Thumb sont les vraies clés ... Je ne fais que des exemples – Sickaaron

    +0

    Désolé, suis-je droit à deviner que les images ne sont pas affichées et que vous les voulez ou est-ce une autre question? Je ne suis pas sûr de ce que vous entendez par * Je ne peux pas obtenir les informations sur les images avec smarty *. –

    +0

    ya les images ne sont pas diffusées, rien imprime dans la {$ image.images.Gallery_Image_Big} – Sickaaron

    Questions connexes