JeuWeb - Crée ton jeu par navigateur
[Réglé] encore un pb de condition.... - 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é] encore un pb de condition.... (/showthread.php?tid=1087)

Pages : 1 2


[Réglé] encore un pb de condition.... - YVES - 19-04-2007

ne m'engueulez pas, par pitié, mais je viens de m'apercevoir que mon script qui fonctionnait bien ne marche plus dans 1 certain cas:
(le code volontairement épuré au plus simple qui suit fonctionne)
Code PHP :
<?php 
$sql
= "SELECT qstockvehicule, qstock1, stock1, stockvehicule FROM membres WHERE id = " . $id ."";
$res=mysql_query($sql) or die('Erreur SQL '.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($res);
if (
$data['stock1'] != $data['stockvehicule'])
{
echo
'<center><font color="red">transfert impossible, ce ne sont pas les memes ressources !</font></center><center><font color="black"><a href="affichestock1.php">retour</a></font></center>';
}
else
{
bla, bla, bla bla ble PUIS maj des tables et sessions,etc....
Mon problème, c'est qu'au début du jeu, les gens ont obligatoirement './objet/rien.gif' comme valeur pour $data['stockvehicule']....
donc, en schématisant, avec un stockvehicule= à rien(./objet/rien.gif'), le transfert de stock ne s'effectue pas vu mon script ci dessus.
j'ai essayé une bonne quinzaine de solutions mais cela revient sur la page du écho ou alors page blanche.
dernier test non concluant:
Code PHP :
<?php 
if ($data['stock1'] != $data['stockvehicule']&& $data['stockvehicule'] != $data['./objet/rien.gif'])
:toilette:

[Modération] Ajout de la mention [Réglé]


RE: encore un pb de condition.... - Roworll - 20-04-2007

Affiche le contenu de tes variables $data['stock1'] et $data['stockvehicule'] avec des Echos histoire de voir ce qu'il y a dedans.
C'est la première phase du débugage : vérifier les variables.
Par habitude, je fais un truc du genre
Code PHP :
<?php 
echo 'stock1 : '.$data['stock1'].'<br />';
echo
'stockvehicule : '.$data['stockvehicule'].'<br />';
histoire de voir a quelle variable correspond la valeur que j'affiche.


RE: encore un pb de condition.... - Plume - 20-04-2007

T'as craqué :
Citation :$data['./objet/rien.gif']
Ca ne veut tout bonnement rien dire ...


RE: encore un pb de condition.... - carlou - 20-04-2007

mouais

Code PHP :
<?php 
if ($data['stock1'] != $data['stockvehicule']&& $data['stockvehicule'] != "/objet/rien.gif")



RE: encore un pb de condition.... - Roworll - 20-04-2007

Citation :T'as craqué :
Rhaaa en effet.
Ne pas essayer de debugguer après une nuit de 4H .. jamais...


RE: encore un pb de condition.... - Plume - 20-04-2007

MDR !! Tongue


RE: encore un pb de condition.... - Plume - 20-04-2007

Mais t'arrètes oui !! Roh !! Tu le loupes pas, hein ? ^^ J'crois que je te montrerais jamais mes scripts Smile


RE: encore un pb de condition.... - YVES - 20-04-2007

if ($data['stock1'] != $data['stockvehicule']&& $data['stockvehicule'] != "/objet/rien.gif")
fonctionne mais pas dans le bon sens , cela affiche toujours
" transfert impossible, ce ne sont pas les memes ressources !"

hey, Teclis01, au lieu de m'incendier sans arret, donne moi cette soluce , au moins je progresserai et me coucherai moin con, non?
:good:


RE: encore un pb de condition.... - Plume - 21-04-2007

Tu pourrais montrer le bon code ? Parce qua dans ton premier post, y a comme qui dirait une incohéernce qui traine.

Code PHP :
<?php 
if ($data['stock1'] != $data['stockvehicule'])
{
echo
'<center><font color="red">transfert impossible, ce ne sont pas les memes ressources !</font></center><center><font color="black"><a href="affichestock1.php">retour</a></font></center>';
}
else
Puis :
Code PHP :
<?php 
if ($data['stock1'] != $data['stockvehicule']&& $data['stockvehicule'] != $data['./objet/rien.gif'])



RE: encore un pb de condition.... - YVES - 21-04-2007

voici le code complet qui fonctionne sauf que au départ du jeu, les gens ont "rien.gif" dans le stockvehicule, donc le pb est qu'au début du jeu, personne ne peut transférer un stock vers son véhicule....c'est donc dans le second if qu'il faut rajouter './objet/rien.gif' mais tout ce que j'ai testé ne va pas.
Code PHP :
<?php
session_start
();
$id = $_SESSION['id'];
include
'connexion.php';
$sql = "SELECT gestion FROM membres WHERE id = ". $id .";";
$res=mysql_query($sql) or die('Erreur SQL '.$sql.'<br>'.mysql_error());
(
$data = mysql_result($res,0,'gestion'));
if (
$data== './images/jetonrouge.gif') {
echo
'<center><font color="red">Désolé, mais VOTRE JETON EST ROUGE !</font></center>
<center><font color="black"><a href="page_membre.php">retour page membre</a></font></center>'
;
}
else {
$sql= "SELECT qstockvehicule, qstock1, stock1, stockvehicule FROM membres WHERE id = " . $id ."";
$res=mysql_query($sql) or die('Erreur SQL '.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($res);
if (
$data['stock1'] != $data['stockvehicule']) {
echo
'<center><font color="red">transfert impossible, ce ne sont pas les memes ressources !</font></center><center><font color="black"><a href="affichestock1.php">retour</a></font></center>';
}
else {
if (
$data['qstockvehicule'] < 30 && $data['stock1'] == $data['stockvehicule']) {
$rsa = "UPDATE membres SET qstockvehicule= qstockvehicule + qstock1, stockvehicule=stock1,
stock1='./objet/rien.gif', qstock1='0', exp=exp+0.1, hab=hab+0.1,
mp='Vous venez de remplir votre vehicule', gestion='./images/jetonrouge.gif' WHERE id = "
. $id ."";
$rsa = mysql_query($rsa) or die('Erreur SQL '.$rsa.'<br>'.mysql_error());
if(
$rsa) {
$_SESSION['qstockvehicule']= $data['qstockvehicule'] + $data['qstock1'];
$_SESSION['stockvehicule']= $_SESSION['stock1'];
$_SESSION['stock1']= './objet/rien.gif';
$_SESSION['qstock1']= '0';
$_SESSION['exp']= $_SESSION['exp']+0.1;
$_SESSION['hab']= $_SESSION['hab']+0.1;
$_SESSION['mp']= 'vous venez de remplir votre vehicule';
$_SESSION['gestion']= './images/jetonrouge.gif';
}
header("Location: page_membre.php");
}
}
}
if (
$data['qstockvehicule'] >= 30)
{
echo
'<center><font color="red">Votre stock est plein !</font></center><center><font color="black"><a href="affichestock1.php">retour</a></font></center>';
}
mysql_close();
?>