comment faire pour disposer d'images différentes ?
Commence par isoler <table> et </table> Puis fait un compteur ($cpt par ex.) et teste la valeur de $cpt modulo 3: SI $cpt est un multiple de 3, il faut envoyer </tr><tr>, sauf au tout début ($cpt ==0)
Merci d'avance pour vos indications de rien
Jean Marc
jeancito a écrit:
Bonjour à tous !
Je souhaiterais afficher les images d'un repertoire
sur 3 rangées et 3 colonnes.
comment faire pour disposer d'images différentes ?
Commence par isoler <table> et </table>
Puis fait un compteur ($cpt par ex.) et teste la valeur de $cpt modulo
3: SI $cpt est un multiple de 3, il faut envoyer </tr><tr>, sauf au tout
début ($cpt ==0)
comment faire pour disposer d'images différentes ?
Commence par isoler <table> et </table> Puis fait un compteur ($cpt par ex.) et teste la valeur de $cpt modulo 3: SI $cpt est un multiple de 3, il faut envoyer </tr><tr>, sauf au tout début ($cpt ==0)
Merci d'avance pour vos indications de rien
Jean Marc
Blackdrone
Je me souvient avoir fait un script pour un tableau de n colone et n ligne (tableau carré) ou chaque image etait recuperée dans une table Mysql en fonction de ses coordonnées par rapport a une map de 200x200 cases...
Si ca t'interesse je le posterais ce soir.
Je me souvient avoir fait un script pour un tableau de n colone et n
ligne (tableau carré) ou chaque image etait recuperée dans une table
Mysql en fonction de ses coordonnées par rapport a une map de 200x200
cases...
Je me souvient avoir fait un script pour un tableau de n colone et n ligne (tableau carré) ou chaque image etait recuperée dans une table Mysql en fonction de ses coordonnées par rapport a une map de 200x200 cases...
Si ca t'interesse je le posterais ce soir.
jeancito
Merci beaucoup pour ta proposition que j'accepte avec plaisir !
Jean Marc
"Blackdrone" a écrit dans le message de news:
Je me souvient avoir fait un script pour un tableau de n colone et n ligne (tableau carré) ou chaque image etait recuperée dans une table Mysql en fonction de ses coordonnées par rapport a une map de 200x200 cases...
Si ca t'interesse je le posterais ce soir.
Merci beaucoup pour ta proposition que j'accepte avec plaisir !
Jean Marc
"Blackdrone" <blackdrone@gmail.com> a écrit dans le message de news:
1137061300.544542.86770@z14g2000cwz.googlegroups.com...
Je me souvient avoir fait un script pour un tableau de n colone et n
ligne (tableau carré) ou chaque image etait recuperée dans une table
Mysql en fonction de ses coordonnées par rapport a une map de 200x200
cases...
Merci beaucoup pour ta proposition que j'accepte avec plaisir !
Jean Marc
"Blackdrone" a écrit dans le message de news:
Je me souvient avoir fait un script pour un tableau de n colone et n ligne (tableau carré) ou chaque image etait recuperée dans une table Mysql en fonction de ses coordonnées par rapport a une map de 200x200 cases...
Si ca t'interesse je le posterais ce soir.
Blackdrone
Désolé, je t'ai un peu 'oublié' je poste ca ce soir ou a midi.
(je vais essayer de nettoyer/raccorucir le code aussi ou l'expliquer.)
Désolé, je t'ai un peu 'oublié' je poste ca ce soir ou a midi.
(je vais essayer de nettoyer/raccorucir le code aussi ou l'expliquer.)
Désolé, je t'ai un peu 'oublié' je poste ca ce soir ou a midi.
(je vais essayer de nettoyer/raccorucir le code aussi ou l'expliquer.)
Blackdrone
Desolé, je n'ai pas pu recuper la base de donnée, un crash de mon HDD la detruite... Sniff... Pour cette portion de code, tu ne devrais pas avoir besoin de la bdd c'est pas trop compliqué.
Alors ce script sevrait a afficher une carte de perceptionxperception , representant le champ de vision d'un personnage. C'etait dans le cadre d'un jeu de role en ligne avec une vue un peu a la zelda. En fait cette table de $perc x $perc est une 'fenetre' affichant une map bien plus grande. Le jeu n'est resté qu'un projet, ma base de donnée (et ttes mes belles sauvegardes .sql) ayant étées detruite. apres ca perte de motivation, pas envie de refaire ce qui avait deja été fait.
Si ya des trucs que tu comprends pas, demande :)
@ plus
(je ne bosse pas du tout dans le monde de l'info, desolé si c'est tres mal pensé/ecrit)
<?
function grille($mat){ include("include/style.php") ;
//ca c'etait pour pouvoir visionner les pages en local
//recuperation des carracteristiques du personnage .
$carracs = calcar($mat) ; //on charge la reponse d'une requete sql dans un tableau '$mat etant le matricule (l'id) du joueur une fois identifié' $perception = $carracs['perception'] ; //on recupere sa valeur de perception (determinante pour la largeur du tableau)
// recuperation de la position du personnage et du nom de sa map ; $sql = "SELECT * FROM map WHERE type = 'joueur' and mat = '$mat'"; $req = mysql_query($sql); $rep = mysql_fetch_object($req);
$posx = $rep->x ; $posy = $rep->y ; $posz = $rep->z ; $map = $rep->ville ; //plusieurs map etaient stockée sur la meme table (ca servait aussi a definir si le perso etait dans un batiment)
$sql_perso = "SELECT * FROM joueur_stats WHERE mat = '$mat'" ; $req_perso = mysql_query($sql_perso) ; $rep_perso = mysql_fetch_object($req_perso) ;
if($map == 'pandemonium'){ // quand le perso etait mort (Hp negatif) il etait a pandemonium :D echo "Vous etes mort. <br>n" ; echo "<a href='respawn.php'>Respawn... </a><br>n" ; // donc on le renvoayit vers une page reincarnation (jsuis pas un salop) exit ; }
//echo "position de la case en haut a gauche :<br>X =".$casex."<br>Y =".$casey."<br>n" ; //debugging
//scan ! $permax = 2 * $perception + 1 ;
//scan en Y ! for($a=0 ;$a<$permax ;$a++){ //on liste les objets qui serait par terre pour pouvoir les afficher
for($b=0 ;$b<$permax ;$b++){ //scan en X ! $sqlscan = "SELECT * FROM map WHERE x = '$a' AND y = '$b' AND ville '$rep->ville'"; $reqscan = mysql_query($sqlscan);
while($repscan = mysql_fetch_array($reqscan)) { //listage de tous les item par case .
echo $repscan['act'] ;
} } }
//tracage du champs de vision c'est la que ca doit pouvoir t'aider echo "<table border=0 echo bgcolor=#C0C0C0 cellspacing=0>n"; //je commence le tableau
for($a=0 ;$a<$permax ;$a++){ //Je commence les boucle pour les lignes : <tr></tr> echo " <tr>n";
for($b=0 ;$b<$permax ;$b++){ //scan en Y ! //Je commence les boucle pour les colonnes : <td></td>
$x = $casex + $b ; $y = $casey - $a ;
$numvehic0 = 0 ; $sqlcase1 = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'vehic' AND visible = '1' AND ville = '$rep->ville'"; $reqcase1 = mysql_query($sqlcase1); $numvehic1 = mysql_affected_rows() ; if( isset($numvehic1) ){$numvehic0 = mysql_affected_rows() ; } //je liste les vehicule
$numbat0 = 0 ; $sqlcase2 = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'bat' AND visible = '1' AND ville = '$rep->ville'"; $reqcase2 = mysql_query($sqlcase2); $numbat2 = mysql_affected_rows() ; //je liste les batiments
$numobj0 = 0 ; $sqlobj2 = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'objet' AND visible = '1' AND ville = '$rep->ville'"; $reqobj2 = mysql_query($sqlobj2); $numobj2 = mysql_affected_rows() ;
$sqlcase = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'joueur' AND ville = '$rep->ville'"; $reqcase = mysql_query($sqlcase); $numperso = mysql_affected_rows() ; $count = 0 ; while($rep_pers = mysql_fetch_array($reqcase) ){ $ql = "SELECT * FROM joueur_stats WHERE mat = '$rep_pers[mat]'" ; $eq = mysql_query($ql) ; $ep = mysql_fetch_object($eq) ;
echo "<td widthU heightU ; background=".$local."/images/bg/x".$x."y".$y.".gif title='".$numperso." Personnages "; // la je commence a ecrire vraiment du html (je recupere l'image dans un repertoire : le nom de l'image est sa coordonnée)
if($numvehic0 > 0) {
echo $numvehic0." Vehicules" ; // }
echo "' ><center>";
if ($numperso>0 && $numvehic0 == '0'){ echo "<b><font size=-3 color=#FF0000 face='".$font_grille_perso."'><a href='".$local."info_pers_case.php?x="; //j'ecris un lien allant vers une page de detail sur le personnage visible
if ($numvehic0 > 0 ){ echo "<a href='".$local."info_pers_case.php?x=".$x."&y=".$y."' onclick='w()' target='info' >"; echo "<img src='"; $sqlcar = "SELECT * FROM map WHERE x = '$x' AND y = '$y' and type 'vehic' AND ville = '$rep->ville' "; // on s'en branle pr l'instant .
echo $local."images/caisses/caisse1.JPG" ; echo "'></a></font><center>"; //si un vehicule est present, je l'affiche en image par dessus le background
Desolé, je n'ai pas pu recuper la base de donnée, un crash de mon HDD
la detruite... Sniff...
Pour cette portion de code, tu ne devrais pas avoir besoin de la bdd
c'est pas trop compliqué.
Alors ce script sevrait a afficher une carte de perceptionxperception ,
representant le champ de vision d'un personnage.
C'etait dans le cadre d'un jeu de role en ligne avec une vue un peu a
la zelda.
En fait cette table de $perc x $perc est une 'fenetre' affichant une
map bien plus grande.
Le jeu n'est resté qu'un projet, ma base de donnée (et ttes mes
belles sauvegardes .sql) ayant étées detruite. apres ca perte de
motivation, pas envie de refaire ce qui avait deja été fait.
Si ya des trucs que tu comprends pas, demande :)
@ plus
(je ne bosse pas du tout dans le monde de l'info, desolé si c'est tres
mal pensé/ecrit)
<?
function grille($mat){
include("include/style.php") ;
//ca c'etait pour pouvoir visionner les pages en local
//recuperation des carracteristiques du personnage .
$carracs = calcar($mat) ; //on charge la reponse d'une requete sql dans
un tableau '$mat etant le matricule (l'id) du joueur une fois
identifié'
$perception = $carracs['perception'] ; //on recupere sa valeur de
perception (determinante pour la largeur du tableau)
// recuperation de la position du personnage et du nom de sa map ;
$sql = "SELECT * FROM map WHERE type = 'joueur' and mat = '$mat'";
$req = mysql_query($sql);
$rep = mysql_fetch_object($req);
$posx = $rep->x ;
$posy = $rep->y ;
$posz = $rep->z ;
$map = $rep->ville ; //plusieurs map etaient stockée sur la meme
table (ca servait aussi a definir si le perso etait dans un batiment)
$sql_perso = "SELECT * FROM joueur_stats WHERE mat = '$mat'" ;
$req_perso = mysql_query($sql_perso) ;
$rep_perso = mysql_fetch_object($req_perso) ;
if($map == 'pandemonium'){ // quand le perso etait mort (Hp
negatif) il etait a pandemonium :D
echo "Vous etes mort. <br>n" ;
echo "<a href='respawn.php'>Respawn... </a><br>n" ; // donc on le
renvoayit vers une page reincarnation (jsuis pas un salop)
exit ;
}
//echo "position de la case en haut a gauche :<br>X =".$casex."<br>Y
=".$casey."<br>n" ; //debugging
//scan !
$permax = 2 * $perception + 1 ;
//scan en Y !
for($a=0 ;$a<$permax ;$a++){ //on liste les objets qui serait par
terre pour pouvoir les afficher
for($b=0 ;$b<$permax ;$b++){ //scan en X !
$sqlscan = "SELECT * FROM map WHERE x = '$a' AND y = '$b' AND ville '$rep->ville'";
$reqscan = mysql_query($sqlscan);
while($repscan = mysql_fetch_array($reqscan)) { //listage de tous
les item par case .
echo $repscan['act'] ;
}
}
}
//tracage du champs de vision c'est la que ca doit pouvoir t'aider
echo "<table border=0 echo bgcolor=#C0C0C0 cellspacing=0>n"; //je
commence le tableau
for($a=0 ;$a<$permax ;$a++){ //Je commence les boucle pour les lignes
: <tr></tr>
echo " <tr>n";
for($b=0 ;$b<$permax ;$b++){ //scan en Y ! //Je commence les boucle
pour les colonnes : <td></td>
$x = $casex + $b ;
$y = $casey - $a ;
$numvehic0 = 0 ;
$sqlcase1 = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'vehic' AND visible = '1' AND ville = '$rep->ville'";
$reqcase1 = mysql_query($sqlcase1);
$numvehic1 = mysql_affected_rows() ;
if( isset($numvehic1) ){$numvehic0 = mysql_affected_rows() ; } //je
liste les vehicule
$numbat0 = 0 ;
$sqlcase2 = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'bat' AND visible = '1' AND ville = '$rep->ville'";
$reqcase2 = mysql_query($sqlcase2);
$numbat2 = mysql_affected_rows() ; //je liste les batiments
$numobj0 = 0 ;
$sqlobj2 = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'objet' AND visible = '1' AND ville = '$rep->ville'";
$reqobj2 = mysql_query($sqlobj2);
$numobj2 = mysql_affected_rows() ;
$sqlcase = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'joueur' AND ville = '$rep->ville'";
$reqcase = mysql_query($sqlcase);
$numperso = mysql_affected_rows() ;
$count = 0 ;
while($rep_pers = mysql_fetch_array($reqcase) ){
$ql = "SELECT * FROM joueur_stats WHERE mat = '$rep_pers[mat]'" ;
$eq = mysql_query($ql) ;
$ep = mysql_fetch_object($eq) ;
echo "<td widthU heightU ;
background=".$local."/images/bg/x".$x."y".$y.".gif title='".$numperso."
Personnages "; // la je commence a ecrire vraiment du html (je recupere
l'image dans un repertoire : le nom de l'image est sa coordonnée)
if($numvehic0 > 0) {
echo $numvehic0." Vehicules" ; //
}
echo "' ><center>";
if ($numperso>0 && $numvehic0 == '0'){
echo "<b><font size=-3 color=#FF0000 face='".$font_grille_perso."'><a
href='".$local."info_pers_case.php?x="; //j'ecris un lien allant vers
une page de detail sur le personnage visible
if ($numvehic0 > 0 ){
echo "<a href='".$local."info_pers_case.php?x=".$x."&y=".$y."'
onclick='w()' target='info' >";
echo "<img src='";
$sqlcar = "SELECT * FROM map WHERE x = '$x' AND y = '$y' and type 'vehic' AND ville = '$rep->ville' ";
// on s'en branle pr l'instant .
echo $local."images/caisses/caisse1.JPG" ;
echo "'></a></font><center>"; //si un vehicule est present, je
l'affiche en image par dessus le background
Desolé, je n'ai pas pu recuper la base de donnée, un crash de mon HDD la detruite... Sniff... Pour cette portion de code, tu ne devrais pas avoir besoin de la bdd c'est pas trop compliqué.
Alors ce script sevrait a afficher une carte de perceptionxperception , representant le champ de vision d'un personnage. C'etait dans le cadre d'un jeu de role en ligne avec une vue un peu a la zelda. En fait cette table de $perc x $perc est une 'fenetre' affichant une map bien plus grande. Le jeu n'est resté qu'un projet, ma base de donnée (et ttes mes belles sauvegardes .sql) ayant étées detruite. apres ca perte de motivation, pas envie de refaire ce qui avait deja été fait.
Si ya des trucs que tu comprends pas, demande :)
@ plus
(je ne bosse pas du tout dans le monde de l'info, desolé si c'est tres mal pensé/ecrit)
<?
function grille($mat){ include("include/style.php") ;
//ca c'etait pour pouvoir visionner les pages en local
//recuperation des carracteristiques du personnage .
$carracs = calcar($mat) ; //on charge la reponse d'une requete sql dans un tableau '$mat etant le matricule (l'id) du joueur une fois identifié' $perception = $carracs['perception'] ; //on recupere sa valeur de perception (determinante pour la largeur du tableau)
// recuperation de la position du personnage et du nom de sa map ; $sql = "SELECT * FROM map WHERE type = 'joueur' and mat = '$mat'"; $req = mysql_query($sql); $rep = mysql_fetch_object($req);
$posx = $rep->x ; $posy = $rep->y ; $posz = $rep->z ; $map = $rep->ville ; //plusieurs map etaient stockée sur la meme table (ca servait aussi a definir si le perso etait dans un batiment)
$sql_perso = "SELECT * FROM joueur_stats WHERE mat = '$mat'" ; $req_perso = mysql_query($sql_perso) ; $rep_perso = mysql_fetch_object($req_perso) ;
if($map == 'pandemonium'){ // quand le perso etait mort (Hp negatif) il etait a pandemonium :D echo "Vous etes mort. <br>n" ; echo "<a href='respawn.php'>Respawn... </a><br>n" ; // donc on le renvoayit vers une page reincarnation (jsuis pas un salop) exit ; }
//echo "position de la case en haut a gauche :<br>X =".$casex."<br>Y =".$casey."<br>n" ; //debugging
//scan ! $permax = 2 * $perception + 1 ;
//scan en Y ! for($a=0 ;$a<$permax ;$a++){ //on liste les objets qui serait par terre pour pouvoir les afficher
for($b=0 ;$b<$permax ;$b++){ //scan en X ! $sqlscan = "SELECT * FROM map WHERE x = '$a' AND y = '$b' AND ville '$rep->ville'"; $reqscan = mysql_query($sqlscan);
while($repscan = mysql_fetch_array($reqscan)) { //listage de tous les item par case .
echo $repscan['act'] ;
} } }
//tracage du champs de vision c'est la que ca doit pouvoir t'aider echo "<table border=0 echo bgcolor=#C0C0C0 cellspacing=0>n"; //je commence le tableau
for($a=0 ;$a<$permax ;$a++){ //Je commence les boucle pour les lignes : <tr></tr> echo " <tr>n";
for($b=0 ;$b<$permax ;$b++){ //scan en Y ! //Je commence les boucle pour les colonnes : <td></td>
$x = $casex + $b ; $y = $casey - $a ;
$numvehic0 = 0 ; $sqlcase1 = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'vehic' AND visible = '1' AND ville = '$rep->ville'"; $reqcase1 = mysql_query($sqlcase1); $numvehic1 = mysql_affected_rows() ; if( isset($numvehic1) ){$numvehic0 = mysql_affected_rows() ; } //je liste les vehicule
$numbat0 = 0 ; $sqlcase2 = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'bat' AND visible = '1' AND ville = '$rep->ville'"; $reqcase2 = mysql_query($sqlcase2); $numbat2 = mysql_affected_rows() ; //je liste les batiments
$numobj0 = 0 ; $sqlobj2 = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'objet' AND visible = '1' AND ville = '$rep->ville'"; $reqobj2 = mysql_query($sqlobj2); $numobj2 = mysql_affected_rows() ;
$sqlcase = "SELECT * FROM map WHERE x='$x' AND y = '$y' AND type 'joueur' AND ville = '$rep->ville'"; $reqcase = mysql_query($sqlcase); $numperso = mysql_affected_rows() ; $count = 0 ; while($rep_pers = mysql_fetch_array($reqcase) ){ $ql = "SELECT * FROM joueur_stats WHERE mat = '$rep_pers[mat]'" ; $eq = mysql_query($ql) ; $ep = mysql_fetch_object($eq) ;
echo "<td widthU heightU ; background=".$local."/images/bg/x".$x."y".$y.".gif title='".$numperso." Personnages "; // la je commence a ecrire vraiment du html (je recupere l'image dans un repertoire : le nom de l'image est sa coordonnée)
if($numvehic0 > 0) {
echo $numvehic0." Vehicules" ; // }
echo "' ><center>";
if ($numperso>0 && $numvehic0 == '0'){ echo "<b><font size=-3 color=#FF0000 face='".$font_grille_perso."'><a href='".$local."info_pers_case.php?x="; //j'ecris un lien allant vers une page de detail sur le personnage visible
if ($numvehic0 > 0 ){ echo "<a href='".$local."info_pers_case.php?x=".$x."&y=".$y."' onclick='w()' target='info' >"; echo "<img src='"; $sqlcar = "SELECT * FROM map WHERE x = '$x' AND y = '$y' and type 'vehic' AND ville = '$rep->ville' "; // on s'en branle pr l'instant .
echo $local."images/caisses/caisse1.JPG" ; echo "'></a></font><center>"; //si un vehicule est present, je l'affiche en image par dessus le background
Le plus simple est d'incrémenter un compteur dans la boucle qui liste toutes les images et si le compteur arrive à 3 il est remis à 0 et on affiche "</tr><tr>" en plus, sinon on affiche juste "<td>$valeur</td>" En gros :
echo "<table><tr>"; $i = 0; while($list = readdir($repertoire)) { echo "<td>$list</td>"; // j'affiche ma cellule $i++; // je passe à la colonne suivante if($i > 2) // si je suis en fin de ligne { // je reviens à la ligne $i = 0; echo "</tr><tr>"; } } echo "</tr></table>";
Le plus simple est d'incrémenter un compteur dans la boucle qui liste
toutes les images et si le compteur arrive à 3 il est remis à 0 et on
affiche "</tr><tr>" en plus, sinon on affiche juste "<td>$valeur</td>"
En gros :
echo "<table><tr>";
$i = 0;
while($list = readdir($repertoire))
{
echo "<td>$list</td>"; // j'affiche ma cellule
$i++; // je passe à la colonne suivante
if($i > 2) // si je suis en fin de ligne
{
// je reviens à la ligne
$i = 0;
echo "</tr><tr>";
}
}
echo "</tr></table>";
Le plus simple est d'incrémenter un compteur dans la boucle qui liste toutes les images et si le compteur arrive à 3 il est remis à 0 et on affiche "</tr><tr>" en plus, sinon on affiche juste "<td>$valeur</td>" En gros :
echo "<table><tr>"; $i = 0; while($list = readdir($repertoire)) { echo "<td>$list</td>"; // j'affiche ma cellule $i++; // je passe à la colonne suivante if($i > 2) // si je suis en fin de ligne { // je reviens à la ligne $i = 0; echo "</tr><tr>"; } } echo "</tr></table>";