JeuWeb - Crée ton jeu par navigateur
[Réglé]Bug script d'attaque - 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 : [Réglé]Bug script d'attaque (/showthread.php?tid=1034)



[Réglé]Bug script d'attaque - zneman - 05-04-2007

Me revoila, cette fois, j'ai un probleme avec mon script d'attaque :heuuu:
Donc voila, quand j'attaque, il me met un truc pas sympa:

Parse error: syntax error, unexpected T_VARIABLE in /mnt/143/sda/9/9/magusworld/attaque.php on line 16

ma ligne 16:

Code PHP :
<?php 
$reponse_joueur_attaque
= mysql_query("SELECT gald, tours FROM membres pseudo='".$pseudo."'")or die (mysql_error());

Mon code:

Code PHP :
<?php
//Ne pas oublier de mettre le session_start()
session_start();
if (isset(
$_SESSION['logged']) && $_SESSION['logged'] === true)
{
// fichier de connexion:
require("config.inc.php");
// connection à la BDD
mysql_connect($host, $username, $password);
mysql_select_db($bdd_name);
// Je vais chercher les sous du joueur défenseur:
$defenseur = $_GET['pseudo'];
$reponse_joueur_def = mysql_query("SELECT gald FROM membres WHERE pseudo='$defenseur'");
$gald_joueur_def = mysql_fetch_array($reponse_joueur_def)
// Je vais chercher les sous et les tours du joueur attaquant:
$reponse_joueur_attaque= mysql_query("SELECT gald, tours FROM membres pseudo='".$pseudo."'")or die (mysql_error());
$gald_joueur_attaque = mysql_fetch_array($reponse_joueur_attaque)
// je vais chercher les troupes du défenseur:
$reponse_troupes_joueur_def = mysql_query("SELECT * FROM troupes WHERE pseudo='$defenseur'");
$troupes_joueur_def = mysql_fetch_array($reponse_troupes_joueur_def)
// Je vais chercher les troupes de l'attaquant:
$reponse_troupes_joueur_attaque= mysql_query("SELECT * FROM troupes WHERE pseudo='".$pseudo."'")or die (mysql_error());
$troupes_joueur_attaque = mysql_fetch_array($reponse_troupes_joueur_attaque)

// Maintenant, je calcul l'attaque de l'attaquant:
// Je commence par l'attaque des archers:
$attaque_archers = ($troupes_joueur_attaque['archer_lege']*3)+($troupes_joueur_attaque['archer_lourd']*4)+($troupes_joueur_attaque['archer_elite']*6);
// Puis l'attaque des lanciers:
$attaque_lanciers = ($troupes_joueur_attaque['lancier_lege']*2)+($troupes_joueur_attaque['lancier_lourd']*3)+($troupes_joueur_attaque['lancier_elite']*5);
// Puis l'attaque des cavaliers:
$attaque_cavaliers = ($troupes_joueur_attaque['cavalier_lege']*2)+($troupes_joueur_attaque['cavalier_lourd']*3)+($troupes_joueur_attaque['cavalier_elite']*5);
// Enfin, le tout me donne l'attaque de l'attaquant:
$attaque_totale = $attaque_archers + $attaque_lanciers + $attaque_cavaliers;

// Maintenant, je calcul la défense du défenseur:
// Je commence par la défense des archers:
$defense_archers = ($troupes_joueur_def['archer_lege']*3)+($troupes_joueur_def['archer_lourd']*4)+($troupes_joueur_def['archer_elite']*6);
// Puis l'attaque des lanciers:
$defense_lanciers = ($troupes_joueur_def['lancier_lege']*2)+($troupes_joueur_def['lancier_lourd']*3)+($troupes_joueur_def['lancier_elite']*5);
// Puis l'attaque des cavaliers:
$defense_cavaliers = ($troupes_joueur_def['cavalier_lege']*2)+($troupes_joueur_def['cavalier_lourd']*3)+($troupes_joueur_def['cavalier_elite']*5);
// Enfin, le tout me donne l'attaque de l'attaquant:
$defense_totale = $defense_archers + $defense_lanciers + $defense_cavaliers;

// On enleve un tour a l'attaquant :P
tours_moins_un = $gald_joueur_attaque['tours'] - 1;
mysql_query("UPDATE membres SET tours= '".$tours_moins_un."' WHERE pseudo='".$pseudo."'")or die (mysql_error());

// On met la condition IF afin de voir l'issue du combat:
if ($attaque_totale>$defense_totale)
{
// On créé une fonction "galds_en_plus" qui est egale aux galds que possede le défenseur:
$galds_en_plus = $gald_joueur_def['gald'];
// On créé une fonction qui regroupes les galds de l'attaquand plus ceux qu'il viens de gagner:
$galds_total_attaquant = $galds_en_plus + $gald_joueur_attaque['gald'];
echo
'Bien jouer '.$pseudo.'!Vous gagnez et remportez '.$galds_en_plus.'';
// On ajoute les galds de l'attaquant:
mysql_query("UPDATE membres SET gald= '".$galds_total_attaquant."' WHERE pseudo='".$pseudo."'")or die (mysql_error());
// On enleve les galds du défenseur:
mysql_query("UPDATE membres SET gald=0 WHERE pseudo='$defenseur'");
}
elseif (
$attaque_totale<$defense_totale)
{
echo
'Dommage '.$pseudo.', '.$defenseur.' l\'emporte sur vous !';
}
}
else
echo
'Erreur : vous devez être connecté pour accéder à cette page !<br />
Allez <a href="index.php">ici</a> pour vous connecter.'
;
mysql_close();
?>


Je ne vois pas trop ou est l'erreur la :heuuu:


RE: Bug script d'attaque: - jo_link_noir - 05-04-2007

salut,

tu as oublier un point virgule à la fin de la ligne 14, ça vient de la l'erreur

(il en manque un aussi aux lignes 17,20,23


RE: Bug script d'attaque: - pascal - 05-04-2007

tu as oublié les ";" après les mysql_fetch_array. tu as aussi faux dans une requête SQL, il manque un WHERE.

A+

Pascal


RE: Bug script d'attaque: - Harparine - 05-04-2007

Tu as juste oublié ton WHERE avant pseudo Wink
$reponse_joueur_attaque = mysql_query("SELECT gald, tours FROM membres WHERE pseudo='" . $pseudo . "'") or die (mysql_error());

EDIT : oups, trop rapide ! J'avais même pas vu le ; manquant. Autant pour moi Wink @+


RE: Bug script d'attaque: - zneman - 05-04-2007

Mouarf l'étourdi que je suis ô_Ô
Merci bien Smile

PS: ca fonctionne desormais :p mouhouhaaaaaa :p *sors*


RE: Bug script d'attaque: - Plume - 05-04-2007

Ne pas oublier la mention `[Réglé]`.


RE: [Réglé]Bug script d'attaque - Plume - 05-04-2007

Merci de la précision, maintenant je connais la différence entre les deux & je vais pouvoir changer mes habitudes en sachant pourquoi Smile


RE: [Réglé]Bug script d'attaque - Byleth - 05-04-2007

Guuuuh?
Tu déconnes Dämen?