jene vois pas ou est le pb de condition?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : jene vois pas ou est le pb de condition?

par YVES » 21 mai 2007, 16:33

voilà une astuce? qui fonctionne!
$surcharge= "SELECT qstockvehicule ".
       "FROM membres  ".
       "WHERE id = ". $id .";"; 
$res=mysql_query($surcharge) or die('Erreur SQL '.$surcharge.'<br>'.mysql_error());
($data = mysql_result($res,0,'qstockvehicule'));
if ($data>30)
{
header("Location: alertedepsurcharge.htm");
}
etc..etc..etc....

par mere-teresa » 21 mai 2007, 15:48

var_dump($data);
//te permet de voir si $data est > ou < à 30

par YVES » 21 mai 2007, 14:19

l'echo n'affiche rien, la condition n'est tjrs pas prise en compte :?
Ce qui est curieux, c'est que je viens de m'apercevoir que j'ai au moins 5 autres scripts fonctionnant sur le meme principe et qui zappent la première condition!

par Ultim4T0m » 21 mai 2007, 07:30

Fais peut-être un echo de $date['qstockvehicule'] pour voir ce qui t'est retourné.

par YVES » 20 mai 2007, 22:59

désolé, mais meme avec ['qstockvehicule']
la condition n'est pas prise en compte :cry:

par momox » 20 mai 2007, 00:40

Le problème n'est pas au niveau de la requête en elle même...
Tu veux vérifier que qstockvehicule n'est pas supérieur a 30.
Quand tu fais $data = mysql_fetch_assoc($res);, tu récuperes un tableau du premier résultat renvoyé par la requete et le pointeur interne se déplace sur le résultat suivant si il y a.
Donc avec $data tu as le premier résultat de ta requete, le tout dans un tableau.
Donc c'est plutôt $data['qstockvehicule'] qui contient la valeur numérique qstockvehicule et non $data ;)

par YVES » 20 mai 2007, 00:06

Quand je dis que cela ne marche pas, c'est le premier select qui n'est pas pris en compte
$sql = "SELECT qstockvehicule ".............

le script passe à travers au lieu de rediriger vers la page "alertedepsurcharge.htm"

that's all :wink:

par Sékiltoyai » 19 mai 2007, 23:31

:shock:
Je crois que tu n'as pas compris là. Nous donner plus de code ne nous aidera pas à régler le problème. Mais, quand tu dis "ca marche pas", c'est quand même super générique. Si tu ne nous donnes aucune erreur, aucune précision sur ce qui ne marche pas, je vois mal comment on peut t'aider.

Et puis le truc je viens, je poste une ligne, un code, et puis basta, je trouve ca un peu irrespectueux, enfin bon, peux être me trompe-je...

par YVES » 19 mai 2007, 22:23

<?php
session_start();
$id = $_SESSION['id'];
include 'connexion.php';
$sql = "SELECT qstockvehicule ".
       "FROM membres  ".
       "WHERE id = ". $id .""; 
$res=mysql_query($sql) or die('Erreur SQL '.$sql.'<br>'.mysql_error());
    $data = mysql_fetch_assoc($res);
if($data['qstockvehicule'] >30)
       {
header ("Location: alertedepsurcharge.htm");
}
else if (isset($_POST['DIR']))
   {
switch ($_POST['DIR']){
    case "N":
        $dirx = $posx;
    $diry = $posy-1;
$sql = "UPDATE membres SET posx=posx, posy=posy-1, ptdep=ptdep-1, vie=vie-0.5, uvehicule=uvehicule+0.5  WHERE id = ". $id .";"; 
    mysql_query($sql) or die('Erreur SQL '.$sql.'<br>'.mysql_error());
    $_SESSION['ptdep']=$_SESSION['ptdep']-1;
	$_SESSION['posx']=$_SESSION['posx'];
	$_SESSION['posy']=$_SESSION['posy']-1;
    $_SESSION['vie']=$_SESSION['vie']-0.5;
	$_SESSION['uvehicule']=$_SESSION['uvehicule']+0.5;
        header("Location: locaperso.php");
   break;
    case "S":
        $dirx = $posx;
    $diry = $posy+1;
$sq2 = "UPDATE membres SET posx=posx, posy=posy+1, ptdep=ptdep-1, vie=vie-0.5, uvehicule=uvehicule+0.5  WHERE id = ". $id .";"; 
    mysql_query($sq2) or die('Erreur SQL '.$sq2.'<br>'.mysql_error());
    $_SESSION['ptdep']=$_SESSION['ptdep']-1;
	$_SESSION['posx']=$_SESSION['posx'];
	$_SESSION['posy']=$_SESSION['posy']+1;
    $_SESSION['vie']=$_SESSION['vie']-0.5;
	$_SESSION['uvehicule']=$_SESSION['uvehicule']+0.5;
        header("Location: locaperso.php");
   break;
    case "E":
        $dirx = $posx+1;
    $diry = $posy;
$sq3 = "UPDATE membres SET posx=posx+1, posy=posy, ptdep=ptdep-1, vie=vie-0.5, uvehicule=uvehicule+0.5   WHERE id = ". $id .";"; 
    mysql_query($sq3) or die('Erreur SQL '.$sq3.'<br>'.mysql_error());
    $_SESSION['ptdep']=$_SESSION['ptdep']-1;
	$_SESSION['posx']=$_SESSION['posx']+1;
	$_SESSION['posy']=$_SESSION['posy'];
    $_SESSION['vie']=$_SESSION['vie']-0.5;
	$_SESSION['uvehicule']=$_SESSION['uvehicule']+0.5;
        header("Location: locaperso.php");
   break;
    case "O":
        $dirx = $posx-1;
    $diry = $posy;
$sq4 = "UPDATE membres SET posx=posx-1, posy=posy, ptdep=ptdep-1, vie=vie-0.5, uvehicule=uvehicule+0.5   WHERE id = ". $id .";"; 
    mysql_query($sq4) or die('Erreur SQL '.$sq4.'<br>'.mysql_error());
    $_SESSION['ptdep']=$_SESSION['ptdep']-1;
	$_SESSION['posx']=$_SESSION['posx']-1;
	$_SESSION['posy']=$_SESSION['posy'];
    $_SESSION['vie']=$_SESSION['vie']-0.5;
	$_SESSION['uvehicule']=$_SESSION['uvehicule']+0.5;
        header("Location: locaperso.php");
   break;
  }
	header("Location: affichemap.php");
 }
mysql_close();
?>

par Sékiltoyai » 19 mai 2007, 19:50

Parce que...

Ecoute, si tu crois qu'on est devin, ou bien alors qu'on a envie de chercher longtemps quelquechose qui nous serait apparu tout de suite comme une évidence si on avait un peu plus d'explications, tu te trompes.

Donc, si tu veux qu'on t'aide, il va falloir en dire un peu plus...

jene vois pas ou est le pb de condition?

par YVES » 19 mai 2007, 19:43

Bonjour,
ce bout de script ne fonctionne pas, pourquoi?
<?php
session_start();
$id = $_SESSION['id'];
include 'connexion.php';
$sql = "SELECT qstockvehicule ".
       "FROM membres  ".
       "WHERE id = ". $id .";"; 
$res=mysql_query($sql) or die('Erreur SQL '.$sql.'<br>'.mysql_error());
    $data = mysql_fetch_assoc($res);
if($data>30) 
       {
header ("Location: alertedepsurcharge.htm");
}