Script de recherche ( 4 colonnes par ligne maximum )

Petit nouveau ! | 1 Messages

19 nov. 2007, 19:49

Voilà, je suis débutant en php ( j'apprends grâce à des scripts, des tutoriels, des pages d'aides... )

Et grâce à tout ça, j'ai réussi à faire un petit quelque chose.

Mais pour l'instant, je bloque sur ma page recherche. ( Recherche d'items dans une base de donnée et affiche d'image et liens ).

J'ai réussi à formuler quelque chose avec un peu d'aide sur plusieurs sites... mais je n'arrive toujours pas à bien faire fonctionner... Je veux que tout ceci s'affiche avec 4 colonnes par ligne maximum ( donc 4 images par ligne ) mais le problème c'est que sur la première ligne, il n'y a que deux images d'affiché... alors que sur le reste tout est ok...
$host="****";
$username="****";
$password="****";
$db_name="****";
$tbl_name="****"; 
 $search=$_POST["search"];
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$result = mysql_query("SELECT * FROM $tbl_name WHERE name LIKE '%$search%' Order by id"  );

$compteur ="1";
echo '<form method="POST" action="members.php?page=search">
<table align="center" width="300" border="0" cellpadding="2" cellspacing="0"><tr>
<td align="center"><input type="text" name="search" size=25 maxlength=25></td>
<td align="left"><input type="Submit" name="Submit" value="Search!"></td>
</tr></table></form> <table align="center" width="450" bgcolor="#F2F8F2"><tr>'; 
 
 while($info3 = @mysql_fetch_array( $result )) 
 {
  $compteur = $compteur + 1;
  if ( $compteur % 3 != 0 ) {

   echo '<td align="center"> <img src="http://images.mrtiki.com/items/'.$info3['img'].'"> <br><a href="members.php?page=item&id='.$info3['id'].'">'.$info3['name'].'</a></td>'; 

  }
  
  else {
   echo '</tr><tr><td align="center">
   <img src="http://images.mrtiki.com/items/'.$info3['img'].'"><br><a href="index.php?page=item&id='.$info3['id'].'">'.$info3['name'].'</a> </td>';
  }


  }
 echo "</tr></table>";
Avez-vous des idées sur le comment réparer ? Où bien une autre façon de faire ?

J'aimerais beaucoup obtenir de l'aide ! Merci beaucoup !

( Et je le répète, je suis débutant ^^ )

Eléphant du PHP | 445 Messages

19 nov. 2007, 21:25

C'est normal.

1. Commence avec un compteur a 0
2. Incremente apres le test
3. Avec un modulo 3 tu as 0,1,2 (donc 3 images par ligne) donc prends un modulo 4

Edit : $compteur est une variable de tpye numérique donc enleve les les double quote (")