JeuWeb - Crée ton jeu par navigateur
Aide pour mon script d'attaque[REGLE] - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Aide pour mon script d'attaque[REGLE] (/showthread.php?tid=1075)



Aide pour mon script d'attaque[REGLE] - Kassak - 14-04-2007

Bonjour à vous, alors j'ia un problème pour mon script d'attaque, je n'arrive pas a dire a mysql d'enlever les pv a la personne que j'ai attaqué..

Ma detection des persos sur la map se fait de la maniere suivante :

Code PHP :
<?php 
for ($x=$posx;$x<=$posx;$x++) {
for (
$y=$posy;$y<=$posy;$y++) {

$sq = mysql_query('SELECT pseudo,avatar_joueur, vieMax, vie FROM membre WHERE posx='.$x.' AND posy='.$y.' AND pseudo<>"'.$_SESSION['pseudo'].'" ORDER BY posx DESC,posy DESC') or die(mysql_error());
$numenr = mysql_num_rows($sq); //nombre d'enregitrement revnoyés par la requete

echo '<table border="1" bgcolor="#dabe92"><tr>';

$cpt = 0; // le compteur

while ($data = mysql_fetch_array($sq)) {

$cpt++;

if (
$cpt == 5) {
echo
'</tr><tr>'; // on ouvre une nouvelle ligne
$cpt = 1;
}

Je fais une boucle qui affiche dans un tableau, toutes les personnes dont la position x et y sont égales aux miennes..
Ca marche bien, j'ai ainsi sous la mappe, divers tableau, 1 pour chaque personne rencontré.
Apres dans ce tableau j'y ai mis diverses options ( je ne vais vous mettre en code que le lien attaquer, vous y verrez plus clair)

Code PHP :
<?php 
echo '<td><img src="image/menu.png">'.$data['pseudo'].'';?> <br />
<?php
echo'<a href="attaque.php" class="menuperso" ><img src="image/attaque.gif"></a></td>';
}

echo
'</tr></table>';


Voila, ainsi j'ia pour chaque personne un lien attaquer, qui m'envoie vers la page attaque.php..

Et dans cette page, je voudrais que le joueur choisi, lors de l'attaque, perdre X Pv a chaque clique...mais je n'arrive pas a "dire" ca, pouvez vous m'aider?

Pour voir un peu plus clair : http://kassak-projects.fr.nf/Site/accueil.php
login : testure
Mdp testure


Merci, si vous avez besoin de plus de code dites moi merci^^

Ps: le contenu de la page attaque.php est très legé, juste la mise a jour des Pv de la victime, et hop une redirection


RE: Aide pour mon script d'attaque - icien - 14-04-2007

il y a 3 solutions:
-passer l'id de l'adversaire en utilisant les sessions.
-utiliser un formulaire qui envoi l'id ($data['pseudo']) de l'adversaire à ta page attaque.php.
-passer l'id de l'adversaire en 'Get': <a href="attaque.php?idadv=<?php =$data['pseudo'];?>" class="menuperso" >

bien sur pour toutes les solutions il faut sur la page attaque.php tester la valeur reçue (existence, présence dans la zone,...)


RE: Aide pour mon script d'attaque - Kassak - 14-04-2007

Je pense essayer avec le GEt, ca me parait simpa^^

mais tu l'a bien écrit, je n'ai plus qu'a faire un copié collé? Je n'ai jamais utilisé ca, et encore moins avec une variable php dedant


RE: Aide pour mon script d'attaque - Kassak - 14-04-2007

Moi qui pensait que j'allais mettre deux mois a faire mon script d'attaque, je l'ai fait en deux minutes(h)

Merci pour m'avoir fait penser au GEt, il est fort utile, est tres simple d'utilisation^^

Merci beaucoup!


RE: Aide pour mon script d'attaque[REGLE] - icien - 15-04-2007

le problème avec le get c'est la sécurité. Il faut bien testé les valeurs reçues, j'insiste par ce que c'est une chose vraiment facile a contourner: sans controle, il suffirai a un joueur sans scrupule de mettre dans la barre d'adresse l'adresse http://kassak-projects.fr.nf/Site/attaque.php?idadv='pseudo_voulu' pour attaquer n'importe qui sur la carte.


RE: Aide pour mon script d'attaque[REGLE] - Byleth - 15-04-2007

Oui, POST est à mon avis plus indiqué mais si tu utilises GET, surtout n'oubli pas de vérifier que le joueur se trouve bien à côté...


RE: Aide pour mon script d'attaque[REGLE] - Kassak - 15-04-2007

Pour reussir a "joué avec la barre d'adresse, il faut conaitre le nom de la page ( attaque.php, soin.php etc...) je pourrais mettre des noms compliqué, et il faut aussi connaitre la variable GET ( ici advsersaire), et cu que dans mes fichier attaque, soin etc..il y a une redirection direct vers la page carte.php, on ne vois pas l'adresse s'afficher, et puis ce n'est pas trop mon problème la de verifier si o peut tricher ou pas^^

Edit : que je suis bête^^, on peut trouver le nom de la page facilement, en bas de la page mais aussi en clique droit Oo, il y a un moyen de ne pas montrer la variable get dans l'adresse?


RE: Aide pour mon script d'attaque[REGLE] - Mysterarts - 15-04-2007

Si tu fait en GET, alors sa passe forcément par l'adresse... Justement, POST permet de ne pas passer par l'adresse...
Sache de tout manière que POST et GET sont "crackable" sans trop de difficulté, néanmoins, je te conseil aussi de passer par POST...


RE: Aide pour mon script d'attaque[REGLE] - Kassak - 15-04-2007

Mais je n'ai qu'a executer le script attaque seulement si le joueur attaqué est sur la case, meme si un joueur utilise la barre d'adresse pour tenter de tricher, ca ne marchera pas, et qui plus est, vu que je susi un gros sadic, si il tente d'attaquer quelqu'un qui 'est pas sur sa case, donc qu'il a triché, je lui enleve des paCool

Ca devrait marcher non?Moi ca m'est égale s'ils utilisent la barre d'adresse pour tapper des gens qui sont sur leur case, si cela les amuse!


RE: Aide pour mon script d'attaque[REGLE] - Michu - 16-04-2007

A mon avis, toi tu t'en fiche peut être, mais attend toi à recevoir des mails de plaintes assez souvent si quelqu'un s'amuse à faire ca...