Probléme avec une variable
kev693
-
kev693 -
kev693 -
Bonjour,
j'ai comme un soucis avec une variable voici mon code :
<?php
$_POST['trois'] = $_POST['attaque']/$_POST['deux'] ;
if ( isset($_POST['attaque']) && isset($_POST['deux']) && is_int($_POST['attaque']) && is_int($_POST['deux'])) {
echo 'attaque final: '.$_POST['trois'].'<br>'."\n";
}
else {
echo 'vous n\'avez pas rentré un chiffres !!! ' ;
}
?>
maintenant le probléme que j'ai c'est que quand j'essaye la page sa passe directement a else et si je met +1-1
a la suite de $_POST['trois'] = $_POST['attaque']/$_POST['deux'] +1-1; voila comme ceci la je ne passe pas a else mais par contre si ej rentre a il me donnera un chiffre et je ne sais pas comment faire si vous pouver m'aider merci d'avance ^^.
j'ai comme un soucis avec une variable voici mon code :
<?php
$_POST['trois'] = $_POST['attaque']/$_POST['deux'] ;
if ( isset($_POST['attaque']) && isset($_POST['deux']) && is_int($_POST['attaque']) && is_int($_POST['deux'])) {
echo 'attaque final: '.$_POST['trois'].'<br>'."\n";
}
else {
echo 'vous n\'avez pas rentré un chiffres !!! ' ;
}
?>
maintenant le probléme que j'ai c'est que quand j'essaye la page sa passe directement a else et si je met +1-1
a la suite de $_POST['trois'] = $_POST['attaque']/$_POST['deux'] +1-1; voila comme ceci la je ne passe pas a else mais par contre si ej rentre a il me donnera un chiffre et je ne sais pas comment faire si vous pouver m'aider merci d'avance ^^.
Configuration: Indeterminable Indeterminable
4 réponses
-
Ton code n'est pas très logique, tu te sers de $_POST['attaque'] et $_POST['deux'] et ensuite tu vérifies que ces variables existent.
Après les valeurs postées par POST ne peuvent pas être de type entier, pour cette raison que tu rentres dans ton else.
Pour vérifier qu'une variable est un nombre, sers toi de ctype_digit(). -
en faite j'ai pas préciser toute ma page mais juste avant je fait sa :
<div class="form" >
<form method="post" action="">
<p>
<label for="attaque">un:</label>
<input type="text" name="attaque" id="attaque" />
</p>*
<p>
<label for="deux">deux:</label>
<input type="text" name="deux" id="deux" />
</p>
<p> <input type="submit" value="essayer" />
</p>
</form></div>
<div class="repform" >
est les deux variable sont a l'interieur d'un form ^^ et je viens d'essayer avec ctype_digit mais il m'annonce cette erreur si je le force sur else en rentrant des lettres
Warning: Division by zero in C:\wamp\www\essai jeu\new essai.php on line 25
merci de votre aide .( je debute ) -
De cette façon.
if( isset($_POST['attaque'], $_POST['deux']) ) { if( ctype_digit($_POST['attaque']) && ctype_digit($_POST['deux']) ) { if( $_POST['attaque'] != 0 ) { echo 'attaque final: '. ($_POST['attaque']/$_POST['deux']) . '<br>'."\n"; } else echo 'L\'attaque ne peut valoir 0'; } else echo 'vous n\'avez pas rentré un chiffres !!! ' ; } -
Merci avec un grand M vraiment trop fort ^^ . j'apprend tout seul avec des livres et internet alors j'ai un peu de mal des fois et encore merci .