Probleme formulaire en php

Gauthier -  
 Alain42 -
Bonjour,

je suis en seconde année de DUT informatique. J'ai un problème avec mon convertisseur eruos!

<html><head><title> new convertisseur</title></head>
<style>
body{background:pink}
</style>
<body>
<?
if (isset($_POST['franc'])){
if(is_numeric($_POST['franc'])==1)
{ $_POST['euro']=$_POST['franc']/6.55957;
}else{ echo" entrez un chiffre";}
}else {if (isset($_POST['euro']))
{$_POST['euro']=$_POST['franc']*6.55957;
}
}


?>
<table>
<tr>
<form method="post">
<td>Francs<input type="text" name="franc"></td>
<td><input type="submit" name="commande" value="F->€"><input type="submit" name="commande" value="€->F"></td>
<td>Euros<input type="text" name="euro"></td>
</form>
</tr>
</table>
</body>
</html>


malhereusement ca ne fonctionne pas ,qui pourrait m'aider et me dire mes erreurs .J'ai un partiel lundi sur les formulaires,cookie et variable de session.Connaissez vous de bons tutoriels?
Merci d'avance Gauthier.

12 réponses

ahmedmrissa Messages postés 183 Date d'inscription   Statut Membre Dernière intervention   14
 
dans la page de formulaire t'a ecrit post ou get
0
Gauthier
 
Je veux que cela s 'affiche sur la meme page quand je clic sur le lien.Il n'y a qu'une page: celle ci
0
ahmedmrissa Messages postés 183 Date d'inscription   Statut Membre Dernière intervention   14
 
jez m'excuse si tu ne sert pas d'un base de donneé pourquoi tu n'utilise pas javascript
0
Gauthier
 
Car je dosi m'entrainer pour mon partiel en php dans lequel j'aurais ce genre d'exercice.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ahmedmrissa Messages postés 183 Date d'inscription   Statut Membre Dernière intervention   14
 
c quoi cette condition de veux dire quoi if (isset($_POST['franc'])){
0
Gauthier
 
si franc est defini
0
ahmedmrissa Messages postés 183 Date d'inscription   Statut Membre Dernière intervention   14
 
tu peux me donner l'ennocer du programme
0
Gauthier
 
Il nous a juste demander de faire un convertisseur euros francs en php dans lequel le resultat s'affiche sur la meme page
0
ahmedmrissa Messages postés 183 Date d'inscription   Statut Membre Dernière intervention   14
 
d'abord il faut etre methodique
affecte les methodes par des variables exemple
$m=$_POST['franc'];ect..
il ya les acolades
if avec une seul instruction
on met un seul acolade
0
Alain42
 
Bonsoir,

Pas mal d'erreurs dans ton script:

- il manque l'appel du script dans <form action="...."

if(is_numeric($_POST['franc'])==1) is_numeric ne renvoie pas 1 si ok mais true

donc il suffit de mettre :if(is_numeric($_POST['franc']))

je t'ai fait ça qui fonctionne chez moi avec qqs commentaires est ce que cela te convient:

nommes le convertisseur.php

<html><head><title> new convertisseur</title></head>
<style>
body{background:pink}
</style>
<body>
<?php
// initialisation des valeurs
$francs="";
$euros="";
$msg="";
$conversion=6.55957;

//le formulaire a ete poste (envoye) avec conv F-E
if(isset($_POST['conv_F-E'])) { 
	// on recupere les valeurs postees	
	$francs=$_POST['franc']; 
	 // si une valeur a ete saisie dans la case francs et qu'elle est numerique (is_numeric renvoi true si ok et pas 1
	if ($francs != "" AND is_numeric($francs)){
		$euros=round($francs/$conversion,2); // arrondi a deux chiffres apres la virgule
	}else{
		//si pas de valeur ou pas numeric on prepare le message qui sera affiche a l'interieur du formulaire
		$msg= "Veuillez entrer dans la case Francs un chiffre a convertir"; // sinon
	}
}

//le formulaire a ete poste (envoye) avec conv E-F
if(isset($_POST['conv_E-F'])){ 
	$euros=$_POST['euro'];
	if ($euros != "" AND is_numeric($euros)){
		$francs=round($euros*$conversion,2);
	}else{
		$msg= "Veuillez entrer dans la case Euros un chiffre a convertir";
	}
}
	
?>
<table>
<tr>
<form name="form1" method="post" action="convertisseur.php">
<td>Francs:<input type="text" name="franc" value="<?php echo $francs; ?>"></td>
<td><input type="submit" name="conv_F-E" value="F->€">
<input type="submit" name="conv_E-F" value="€->F"></td>
<td>Euros:<input type="text" name="euro" value="<?php echo $euros; ?>"></td>
</form>
</tr>
<tr><td colspan="3" align="center">
<!--   On affiche le message si necessaire c'est a dire si il n'est pas vide et en rouge,  colspan =3 pour avoir le meme nbr de colonne que l'autre ligne -->
<?php if($msg !=""){echo "<font color='red'>".$msg."</font>"; } ?>
</td></tr>
</table>
</body>
</html> 
0
Gauthier
 
merci alain, mon probleme est résolu.
tu pourrais peut etre me renseigner par contre sur des tutoriaux de Php en ce qui concerne les variables de sessions et les cookies?

Encore merci .
0
Alain42
 
Salut,

tant mieux si cela a pu t'aider.

Vas voir le site https://openclassrooms.com/fr/ pour tout ce qui touche au PHP et aux formulaires.

Pour les sessions:
https://phpsources.net/tutoriel-sessions.htm

pour les cookies:

http://wiki.mediabox.fr/tutoriaux/php/utiliser-les-cookies-php

@lain
0