Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1302 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/MYSQL] Updater la valeur des radio dans une base [Résolu]

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP/MYSQL] Updater la valeur des radio dans une base [Résolu]

n°2095455
RabzorGT
│RabzorGT®│ - Linux'zgood
Posté le 16-08-2011 à 14:48:15  profilanswer
 

[:banguy]  
 
Je galère comme pas possible pour mettre à jour la valeur (status) d'un radio.
J'arrive à insérer sa valeur selon s'il est coché ou pas mais j'ai du mal à récupéré cette valeur quand je veux éditer mes enregistrement par exemple.
 
Pour insérer aucune problème :
<input type="radio"  name="mon_radio" value="oui">Oui  
<input type="radio"  name="mon_radio" value="non">Non
puis un INSERT matable ect ..  
 
J'arrive également à récupérer les valeurs de mes radio (ici oui ou non) dans un champs texte sans problème par contre ce qui m'interesse c'est de retrouver ces même radio coché selon comment je les ai enregistré.
 
Quelqu'un aurait une idée comment faire ? j'ai saigné google j'arrive pas à adapter le code que je trouve dans les recherche  [:rabzorgt:1]


Message édité par RabzorGT le 23-08-2011 à 07:11:00

---------------
[VDS] Zalman, CG, HDD, P4 3.2Ghz, Switch .. - [FeedBack] [8800GTX]
mood
Publicité
Posté le 16-08-2011 à 14:48:15  profilanswer
 

n°2095467
Tirkyth
Posté le 16-08-2011 à 15:02:04  profilanswer
 

Le principe est d'ajouter un attribut au bouton radio qui est coché. Par exemple, en admettant qu'une variable $radioValue contienne la valeur que tu as inséré en base de données :

Code :
  1. <input type="radio"  name="mon_radio" value="oui" <?php if ($radioValue === 'oui'): ?>checked="checked"<?php endif; ?>>Oui  
  2. <input type="radio"  name="mon_radio" value="non" <?php if ($radioValue === 'non'): ?>checked="checked"<?php endif; ?>>Non


---------------
Mon Feedback !
n°2095486
RabzorGT
│RabzorGT®│ - Linux'zgood
Posté le 16-08-2011 à 15:58:08  profilanswer
 

Franchement magnifique ! je te remercie j'ai fait exactement la même chose mais sans les endif tu pourrais me dire à quoi sert le endif ?


---------------
[VDS] Zalman, CG, HDD, P4 3.2Ghz, Switch .. - [FeedBack] [8800GTX]
n°2095581
Tirkyth
Posté le 17-08-2011 à 09:58:00  profilanswer
 

En fait, moi j'ai pour habitude :
- Quand je suis dans un fichier PHP complet, par exemple une classe, d'utiliser la syntaxe normale.

Code :
  1. if ($test) {
  2.  
  3. }


- Quand je suis dans un fichier de template (c'est à dire affichage d'html mélangé avec du PHP), j'utilise la syntaxe alternative, qui ne contient pas d'accolades.

Code :
  1. if ($test):
  2.  
  3. endif;


L'accolade ouvrante est remplacée par ':', et l'accolade fermante est remplacée par un 'endif;' afin que le parser sache ou s'arrête ton bloc de code executé quand le test est vrai.
 
Plus d'informations ici : http://php.net/manual/fr/control-s [...] syntax.php


---------------
Mon Feedback !
n°2095586
RabzorGT
│RabzorGT®│ - Linux'zgood
Posté le 17-08-2011 à 10:08:45  profilanswer
 

Tout simplement ! merci à toi encore.

 

Une dernière chose,

 

Par defaut aucune case n'est coché et c'est ce que je veux, quand j'envoie mon formulaire ca va mais si j'essaye d'éditer l'enregistrement j'ai une erreur comme quoi ma var (radioValue) est vide ce qui est normal, j'ai essayé de contourner le problème avec un champs hidden je n'ai plus d'erreur mais du coup mes 2 cases "oui" et "non" ne récupèrent jamais la valeurs qu'elles ont dans la base .. une idée pour forcer l'enregistrement de la variable même si elle est vide  ? :(


Message édité par RabzorGT le 17-08-2011 à 10:11:31

---------------
[VDS] Zalman, CG, HDD, P4 3.2Ghz, Switch .. - [FeedBack] [8800GTX]
n°2095640
Tirkyth
Posté le 17-08-2011 à 14:02:25  profilanswer
 

Est-ce que tu peux m'indiquer précisément l'erreur qui apparait s'il te plait ? J'ai du mal à saisir si c'est une erreur qui vient de PHP ou de ta base de données d'après ce que tu viens de me dire.


---------------
Mon Feedback !
n°2095658
RabzorGT
│RabzorGT®│ - Linux'zgood
Posté le 17-08-2011 à 14:55:43  profilanswer
 

Dans le code ci dessous les 2 radio sont non coché par défaut, quand je valide mon formulaire ca stock une valeur vide dans la base, jusque là ok. via une autre page j'édite cet enregistrement et là quand je valide la modification j'ai une erreur php

 

Notice: Undefined index: declarationcmdb in C:\Program Files\EasyPHP\www\modification3.php on line 52

 
Code :
  1. <input type="radio"  name="declarationcmdb" value="oui" <?php if (($result->declarationcmdb === 'oui')): ?>checked="checked"<?php endif; ?>>Oui
  2. <input type="radio"  name="declarationcmdb" value="non" <?php if (($result->declarationcmdb === 'non')): ?>checked="checked"<?php endif; ?>>Non
 

C'est ca que je voudrais éviter.

 

Pour l'instant j'ai contourné le problème en rajoutant un autre input "Non applicable" coché par défaut comme ca j'ai pas d'erreur.

 

J'aurais bien voulu m'en passer pour ne laisser que les 2 radio "oui" et "non" non cochés par défaut et sans avoir des erreur comme quoi la variable $declarationcmdb est vide.

Code :
  1. <input type="radio"  name="declarationcmdb" value="oui" <?php if (($result->declarationcmdb === 'oui')): ?>checked="checked"<?php endif; ?>>Oui
  2. <input type="radio"  name="declarationcmdb" value="non" <?php if (($result->declarationcmdb === 'non')): ?>checked="checked"<?php endif; ?>>Non
  3. <input type="radio"  name="declarationcmdb" value="nonparametre" <?php if (($result->declarationcmdb === 'nonparametre')): ?>checked="checked"<?php endif; ?> style="margin-left:14px;">Non applicable
 

J'espère que je me suis bien exprimé cette fois ci  [:rabzorgt:4]


Message édité par RabzorGT le 17-08-2011 à 14:57:20

---------------
[VDS] Zalman, CG, HDD, P4 3.2Ghz, Switch .. - [FeedBack] [8800GTX]
n°2096223
RabzorGT
│RabzorGT®│ - Linux'zgood
Posté le 19-08-2011 à 09:25:51  profilanswer
 

:sweat:


Message édité par RabzorGT le 19-08-2011 à 09:26:12

---------------
[VDS] Zalman, CG, HDD, P4 3.2Ghz, Switch .. - [FeedBack] [8800GTX]
n°2096690
Tirkyth
Posté le 22-08-2011 à 12:36:58  profilanswer
 

Ok, je comprends mieux.
 
Alors je te suggère dans ce cas :

Code :
  1. <input type="radio"  name="declarationcmdb" value="oui" <?php if (isset($result->declarationcmdb) && $result->declarationcmdb === 'oui'): ?>checked="checked"<?php endif; ?>>Oui
  2. <input type="radio"  name="declarationcmdb" value="non" <?php if (isset($result->declarationcmdb) && $result->declarationcmdb === 'non'): ?>checked="checked"<?php endif; ?>>Non


 
Ça devrait fonctionner comme ça.


---------------
Mon Feedback !
n°2096832
RabzorGT
│RabzorGT®│ - Linux'zgood
Posté le 23-08-2011 à 07:10:39  profilanswer
 

Merci à toi t'as répondu à toutes mes questions ;)
 
@++ et vive les forum !


---------------
[VDS] Zalman, CG, HDD, P4 3.2Ghz, Switch .. - [FeedBack] [8800GTX]

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/MYSQL] Updater la valeur des radio dans une base [Résolu]

 

Sujets relatifs
Démon PHP avec du fork :)Recherche développeur php / mysql
[PHP, MYSQL] Réaliser un classement avec données de plusieurs tablesFlèches du clavier et jeu flash dans site PHP
Choix d'un framework PHP en 2011[PHP] Retrouver à la page précédente les données renseignées
xsl problème de recuperation de valeurpetite question mysql_install_db
[MySQL ]Problème sur ON DUPLICATE KEY UPDATE 
Plus de sujets relatifs à : [PHP/MYSQL] Updater la valeur des radio dans une base [Résolu]


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR