Problème de boutons radio

databene
Invité n'ayant pas de compte PHPfrance

05 févr. 2012, 19:16

Bonjour,
J'ai créé un formulaire avec 3 champs de texte et (c'est là que ça coince...) 2 boutons radio.
Le résultat du formulaire est envoyé sur une base de données dans les champs prenom, nom et email. Tout ça fontionne très bien.
Plutôt que de vous livrer le fruit de mes essais, je suis revenu à la partie "qui marche" pour éviter (surement) moult corrections à mon code!

C'est surement tout bête : je veux ajouter 2 boutons radio qui communiquent avec un champ nommé premium dans ma base de données envoyant la réponse "oui" ou "non"

Pour l'instant je suis arrivé à les faire communiquer correctement avec la bdd, seulement avec un message "indefined index" à tous les coups, vu que l'un des bouton est forcément "pas coché". Je vous jure que j'ai écumé les sites, les forums, essayé de comprendre les fonction isset et empty, mais j'ai atteint mon seuil d'incompétence on dirait...
Une âme généreuse qui me mâcherait le travail (demie-honte) en m'expliquant le pourquoi du comment (histoire que j'en ressorte plus malin) garantirait la pérennité de ma santé mentale
Un grand grand merci.
David.

le formulaire :
<form action="../Demo/demo.php" method="post" />
<p>prenom : <input type="text" name="prenom" /></p>
<p>nom : <input type="text" name="nom" /></p>
<p>email : <input type="text" name="email" /></p>
(place des boutons radio)
<input type="submit" />
<input type="reset" />
</form>
et le script php :
<?php

define ('DB_NAME', '...');
define ('DB_USER', '...');
define ('DB_PASSWORD', '...');
define ('DB_HOST', '...');

$link = mysql_connect (DB_HOST, DB_USER, DB_PASSWORD);

if (!$link) {
die('Could not connect: ' . mysql_error());
}

$db_selected = mysql_select_db(DB_NAME, $link);

if (!$db_selected) {
die('Can\'t use ' . DB_NAME . ': ' . mysql_error());
}

$value = $_POST['prenom'];
$value2 = $_POST['nom'];
$value3 = $_POST['email'];

$sql = "INSERT INTO mailing_list (prenom, nom, email) VALUES ('$value', '$value2', '$value3')" or die(mysql_error());

if (!mysql_query($sql)) {
die('Error: ' . mysql_error());
}

mysql_close();
?>
Modifié en dernier par zeus le 14 févr. 2012, 10:03, modifié 1 fois.
Raison : Mise en forme message + modification titre

ViPHP
xTG
ViPHP | 7331 Messages

05 févr. 2012, 21:34

Avec l'attribut selected de la balise input tu peux faire en sorte qu'un bouton soit de base sélectionné.
Ensuite on joue sur l'attribut value pour faire la différence entre l'un ou l'autre.
Et vu qu'un est de base sélectionné tu n'auras pas de problème d'index non présent.

databene
Invité n'ayant pas de compte PHPfrance

07 févr. 2012, 01:59

Merci pour ton message. Problème reglé! :)