Aller au contenu

Problème avec les boutons radio


Sujets conseillés

Posté

Bonjour,

Je suis actuellement entrain de faire un convertisseur qui convertit les dollars en euros et inversement selon les cas où l'on choisit un bouton radio ou l'autre.

Voici mon code:

<center>

<font color="red"><h1>Convertisseur de dollard en euros</h1></font>

<form action="convert.php" method="POST">

<input type="hidden" name="action" value="resultat"><br>

<table border="0"><tr>

<td>Conversion en dollar: <input type="radio" name="conversion" value="dollar"></td>

<td>Conversion en euro: <input type="radio" name="conversion" value="euro"></td>

</tr>

<tr>

<td><input type="text" name="monnaie"></td>

<td><input type="submit" value="calcul"></td></tr>

</table>

</form>

<?php

if(isset($_POST['action']))

{

    if($_POST['conversion']=='euro')

    {

    if(empty($_POST['monnaie']))

    {

  echo '<h2> Tapez une valeur s\'il vous plait. </h2>';

    }

    else

    {

  $dol=$_POST['monnaie'];

  if($dol >0)

  {

          $convert=0.83*$dol;

      echo 'Résultat: '.$convert.' euros';

  }

  else

  {

      echo '<h2> Tapez correctement la valeur SVP </h2>';

  }

    }

    }

    else

    {

    if($_POST['conversion']=='dollar')

    {

    if(empty($_POST['monnaie']))

    {

  echo '<h2> Tapez une valeur s\'il vous plait. </h2>';

    }

    else

    {

  $dol=$_POST['monnaie'];

  $dec = (float) $_POST['monnaie'];

  if($dol >0)

  {

      $convert=$dol/0.83;

      echo 'Résultat: '.$convert.' euros';

  }

  else

  {

      echo '<h2> Tapez correctement la valeur SVP </h2>';

  }

    }

  }

  else

  {

  echo '<h2>Choisissez la monnaie SVP.</h2>';

  }

  }

}

?>

</center>

Que je sélectionne un bouton radio ou pas, que j'entre une valeur ou pas, le résultat, après soumission du formulaire, est toujours le même: les boutons radios disparaissent et il affiche le message: 'Tapez une valeur s'il vous plait'. A croire qu'il ne prend pas en compte les valeurs que j'ai tapé...

Qu'en pensez-vous? Pourriez-vous m'aidez?

Je vous remercie d'avance pour votre aide.

kattig

Posté

J'ai essayé ton code chez moi, et bien qu'il soit un peu fouillis, il fonctionne très bien.

Le seul souci qu'il pourrait y avoir, serait que la page que tu nous montres, ne soit pas 'convert.php', et que convert.php en soit une autre, au traitement incomplet; ce qui expliquerait la disparition des champs du formulaire.

Posté

Bonjour,

Je vous remercie pour votre aide :)

Cependant, le code ici présent est dans la page convert.php ... Je ne sais pas pourquoi cela ne marche pas chez moi...

Pensez-vous que cela est du à EasyPHP?

kattig

Posté

Je ne pense pas, vu que j'ai testé sous EasyPHP.

Dans ce cas, pourrais-tu donner l'intégralité du code de ta page (dans un champ CODEBOX) ?

Parce que tel qu'il est présenté, il n'y a aucun obstacle à l'affichage du formulaire, avant la gestion du code PHP.

Posté

Voici l'intégralité de mon code:


<html>
<head>
<title>Convertisseur</title>

</head>
<body bgcolor="#F5B800">

<center>
<font color="red"><h1>Convertisseur de dollard en euros</h1></font>
<form action="convert.php" method="POST">
<input type="hidden" name="action" value="resultat"><br>
<table border="0"><tr>
<td>Conversion en dollar: <input type="radio" name="conversion" value="dollar"></td>
<td>Conversion en euro: <input type="radio" name="conversion" value="euro"></td>
</tr>
<tr>
<td><input type="text" name="monnaie"></td>
<td><input type="submit" value="calcul"></td></tr>
</table>
</form>
<?php
if(isset($_POST['action']))
{
if($_POST['conversion']=='euro')
{
if(empty($_POST['monnaie']))
{
echo '<h2> Tapez une valeur s\'il vous plait. </h2>';
}
else
{
$dol=$_POST['monnaie'];
if($dol >0)
{
$convert=0.83*$dol;
echo 'Résultat: '.$convert.' euros';
}
else
{
echo '<h2> Tapez correctement la valeur SVP </h2>';
}
}
}
else
{
if($_POST['conversion']=='dollar')
{
if(empty($_POST['monnaie']))
{
echo '<h2> Tapez une valeur s\'il vous plait. </h2>';
}
else
{
$dol=$_POST['monnaie'];
$dec = (float) $_POST['monnaie'];
if($dol >0)
{
$convert=$dol/0.83;
echo 'Résultat: '.$convert.' euros';
}
else
{
echo '<h2> Tapez correctement la valeur SVP </h2>';
}
}
}
else
{
echo '<h2>Choisissez la monnaie SVP.</h2>';
}
}
}
?>

</center>

</body>
</html>

Merci encore pour votre aide [sourire].

kattig

Posté

C'est vraiement bizarre...

Je ne sais pas pourquoi cela bloque. Si cela fonctionne chez vous c'est que mon code est bon. Non?

Peut-être n'avons nous pas la même version?

Ce n'est pas grave...

Je vous remercie d'avoir bien voulu prendre un peu de votre temps pour m'aider :)

Au moins, je sais que cela fonctionne (bien que cela ne soit pas le cas chez moi).

Je vous souhaite une bonne journée captain_torche.

kattig

Posté

J'ai la version 1-8 . Pour l'instant, je ne fais que m'entrainer concernant le PHP. Ainsi, je ne fais pas de site pour l'instant... Il faut encore que je revoie plusieurs cours pour avoir des bases assez solide.

Avez-vous la même version que moi?

kattig

Posté

Et bien, je sais maintenant pourquoi cela ne fonctionne pas.

Au début, j'avais fait un convertisseur assez simple juste pour que je puisse voir si j'arrivais, ainsi, je l'avais appelée convert.php

Et lorsque j'ai fait le deuxième convertisseur qui me posait problème. J'étais complètement sûre que j'étais sur la même page..

Je viens de revérifier le nom de la page et c'est convert2.php au lieu de convert.php ...

Je peux être idiote des fois... [gênée]

Une simple erreur dans le nom...

Je suis vraiement confuse...

Merci mille fois pour votre patience afin de résoudre mon problème [sourire]

Merci.

En regardant l'heure, vous allez certainement aller déjeuner. Ainsi, je vous souhaite un bon appétit et vous remercie encore pour votre aide.

Bonne journée.

kattig

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...