Accueil > Forum > > > > Mon premier script et je bloque...
Mon premier script et je bloque...
vendredi 15 septembre 2006 à 17:10:07 |
Mon premier script et je bloque...

Andjety
|
Bonjour et merci d'avance pour ceux qui m'aideront je vais essayer d'expliquer simplement mon souci, je souhaite réaliser en php/mysql un jeu inspiré wargame en tour par tour. première étape je veux afficher une grille (échiquier) de 24x24 cases et dans certaines cases, je souhaite afficher l'image de la pièce qui y figure tel que l'indique une table dans ma bdd dans cette table en bref, j'ai : id_unit x_unit pour sa ligne y_unit pour sa colonne voilà ma toile de base et volà mon script php pour afficher la grille déjà : <?php echo '<table border="1" width="600" cellpadding="0" cellspacing="0" align="center" background="bg_battlefield.gif">',"\n"; echo '<tr>',"\n"; echo '<th scope="col"> </th>',"\n"; for($y=1;$y<=24;$y++) { echo '<th scope="col">'.$y.'</th>',"\n"; } echo '</tr>',"\n"; for($x=1;$x<=24;$x++) { echo '<tr>',"\n"; echo '<th scope="row">'.$x.'</th>',"\n"; for($y=1;$y<=24;$y++) { echo '<td height="25" width="25" align="center"> </td>',"\n"; } echo '</tr>',"\n"; } echo '</table>',"\n"; ?> là tout va bien j'ai une jolie grille qui s'affiche, maintenant je voudrais faire un test du genre : if $x == $x_unit and $y == $y_unit then echo "<img src... >"; sauf que dès que j'insère cette condition (syntaxée correctement pas comme ci-dessus) quelque soit l'endroit où je la mets ça colle pas bien avec la boucle qui génère la grille quelqu'un aurait-il une idée pour ce truc qui doit être tout simple mais qui me bloque, pour un premier essai j'ai l'air malin merci ;-)
|
|
vendredi 15 septembre 2006 à 17:56:00 |
Re : Mon premier script et je bloque...

franco_se
|
si tu n'a qu'une seule piece a afficher, c'est simple, a la place de # echo '<td height="25" width="25" align="center"> </td>',"\n"; tu met # echo '<td height="25" width="25" align="center">'; # if ($x == $x_unit and $y == $y_unit) echo "<img src... >"; # echo '</td>',"\n";
mais si c'est tout l'echiquer a afficher, là c'est legerement different. tu doit ceer un tableau du type $tableau = array( $id_unit => $x_unit . ',' . $y_unit) ; ainsi la piece d'id = 5 et de coordonnée x=3, y=2 apparaitera dans le tableau sous la forme 5 => "3,2"
pour creer, il suffit d'utiliser la table de ta base où se trouvent ces données, et une boucle while
puis il faut verifier si, lors de la creation de la grille, une piece s'y trouve. Pour ça, remplace # echo '<td height="25" width="25" align="center"> </td>',"\n"; par # echo '<td height="25" width="25" align="center">';
# if (in_array($x.",".$y, $tableau)) echo "<img src... >";
# echo '</td>',"\n";
si tu veux l'id de la pièce associé a ces coordonnées, c'est grace à
$id = array_search($x.",".$y, $tableau);
attention, j'ai codé ça sans tester .....
|
|
samedi 16 septembre 2006 à 10:27:57 |
Re : Mon premier script et je bloque...

Andjety
|
merci, ça parait tellement simple une fois le bon truc ciblé ;-)
cependant ça ne marche pas aurais-je fait une erreur dans mon code :
<?php //connexion base de données require "inc_connect.php";
// requête SQL pour sélectionner battle_unit $sql = 'SELECT id_unit,x_unit,y_unit FROM battle_units';
// envoi la requête $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
// boucle pour chaque enregistrement while($data = mysql_fetch_assoc($req)) { // on crée le tableau des coordonnées des unités $tableau = array( $id_unit => $x_unit . ',' . $y_unit) ; }
// on ferme la connexion à mysql mysql_close();
echo '<table border="1" width="600" cellpadding="0" cellspacing="0" align="center" background="bg_battlefield.gif">',"\n"; echo '<tr>',"\n"; echo '<th scope="col"> </th>',"\n"; for($y=1;$y<=24;$y++) { echo '<th scope="col">'.$y.'</th>',"\n"; } echo '</tr>',"\n"; for($x=1;$x<=24;$x++) { echo '<tr>',"\n"; echo '<th scope="row">'.$x.'</th>',"\n"; for($y=1;$y<=24;$y++) { echo '<td height="25" width="25" align="center">'; if (in_array($x.",".$y, $tableau)) echo '<img src="images/gardes_cite.gif" />'; else echo ' '; echo '</td>',"\n"; } echo '</tr>',"\n"; } echo '</table>',"\n"; ?>
|
|
samedi 16 septembre 2006 à 12:25:41 |
Re : Mon premier script et je bloque...

franco_se
|
pour la requete sql, essaye ceci :
// requête SQL pour sélectionner battle_unit // envoi la requête $req = mysql_query("SELECT id_unit, x_unit, y_unit FROM battle_units") or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$tableau = array(); while($data = mysql_fetch_array($req)) { $tableau[$data['id_unit']] = $data['x_unit'] . ',' . data['y_unit'] ; }
|
|
samedi 16 septembre 2006 à 12:25:52 |
Re : Mon premier script et je bloque...

franco_se
|
Réponse acceptée !
pour la requete sql, essaye ceci :
// requête SQL pour sélectionner battle_unit // envoi la requête $req = mysql_query("SELECT id_unit, x_unit, y_unit FROM battle_units") or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$tableau = array(); while($data = mysql_fetch_array($req)) { $tableau[$data['id_unit']] = $data['x_unit'] . ',' . $data['y_unit'] ; }
|
|
samedi 16 septembre 2006 à 13:40:53 |
Re : Mon premier script et je bloque...

Andjety
|
encore merci effectivement c'était ça le souci
|
|
Cette discussion est classée dans : script, echo, premier, unit, bloque
Répondre à ce message
Sujets en rapport avec ce message
Un bug dans le script, quelqu'un voit la reponse? [ par benbax ]
Voila le script : $dt=include("compteurDT.cpt"); //Contient le nombre x$msn=include("compteurMSN.cpt"); //Contient le nombre x$vnc=include("co
UNE BOUCLE infernal HELP ME!!! [ par hoodlum ]
Le problemes c ke o 2eme passage par pasage a l'url le script arrete d'etre executé a partir de la ou g mis le pointillé car le while n'est pas execut
Optimiser un script [ par kd ]
Bonjour à tous, pour afficher les champs de 3 tables (dont une intermédiaire : écrit), je fais une boucle imbriquée. J'ai essayé d'autres requêtes mai
condtion if [ par youyou26 ]
bonjour j'ai un petit problème avec un bout de script $djour= substr ($Dte, 0, 2); $dmois= substr($Dte, 3, 2); $dannee= substr($Dte, 6, 4); echo "";
Problème avec la fonction echo [ par Sinouplen ]
Bonjour,J'aimerais avoir un petit renseignement à propos de la fonction echo.J'aimerais faire unecho "secure() ?>" et que ça ne coupe pas l'execution
Du HTML dans un script PHP [ par linkid ]
Bonjour,voilà, depuis quelque temps, je me suis mit a faire un livre d'or en php et je suis en train de l'affinner... Mais pour cela, j'ai besoin de m
Erreur script identification [ par DJ_BoOmEr ]
Bonjour a tous, je suis débutant en programtion, et j'ai essayer de faire un script d'ident tout bête. Mais lorsque j'éxécute le script il me met :Pa
pb avec history.back() et firefox [ par kun00538 ]
bonjour a tousvoila je debut en php, je vient de faire un script de soumission de formulaire avec controle de l'existance du login,dans ie netscape su
Affichage de pièces sur un échiquier [ par Andjety ]
Bonjour, on m'a bien aidé la dernière fois alors je reviens vers vous pour mon projet de jeu de bataille (échiquier en quelque sorte) et mes difficult
appeler un script shell dans php [ par salim81 ]
Bonjour; j'ai un script shell qui me retourne le pourcentage de la memoire utilisé.mon probleme c'est que dans un script php comment recuperer ce pou
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|