Pb d'affichage de "radio" différents selon $data
Posté : 16 août 2012, 10:47
Bonjour
J'ai un souci et donc, encore une fois, besoin du regard d'un pro pour me débloquer. Merci d'avance pour votre aide.
Je voudrais que le formulaire de modification du profil des membres inscrits sur mon site soit prérempli avec les dernières informations que le membre a enregistré sur la bdd. J'y arrive déjà avec tous les champs
... sauf un !
Ce champs est de type "radio" (c'est le seul de tout le formulaire ! ceci explique cela !)
Voici le code que j'ai tenté :
( ! ) SCREAM: Error suppression ignored for
( ! ) Parse error: syntax error, unexpected '$data' (T_VARIABLE), expecting '(' in C:\wamp\www\mon_siteV6 d\tech\formulaire_profil_complet.php on line 47
La ligne 47 étant celle-ci
Je suspecte un problème de syntaxe d à l'incrustation du langage html (input) dans un code php (if ...else) mais je ne sais pas comment concilier les 2...
Merci d'avance pour votre aide (et désolée pour la longueur du message! )
J'ai un souci et donc, encore une fois, besoin du regard d'un pro pour me débloquer. Merci d'avance pour votre aide.
Je voudrais que le formulaire de modification du profil des membres inscrits sur mon site soit prérempli avec les dernières informations que le membre a enregistré sur la bdd. J'y arrive déjà avec tous les champs
Ce champs est de type "radio" (c'est le seul de tout le formulaire ! ceci explique cela !)
Voici le code que j'ai tenté :
<p> <!--modification du champs "sexe" A MODIFIER (résoudre le problème du préremplissage (<=> checked mais en fonction des données préenregistrés) -->
<?php
//cas 1 : le membre a coché 'je suis un homme' lors de son inscription, donc la valeur de $data['sexe'] = 'un homme'. Je veux affiché le formulaire du choix du sexe avec la case "homme" précochée.
if $data['sexe'] = 'un homme' {
<input type="radio" name="sexe" value="un homme" id="homme"
checked="checked" /> <label for="homme">un homme</label>
<input type="radio" name="sexe" value="une femme" id="femme" /> <label
for="femmme">une femme</label>;}
//cas 2 : le membre a coché 'je suis une femme' lors de son inscription, donc la valeur de $data['sexe'] = 'une femme'. Je veux affiché le formulaire du choix du sexe avec la case "femme" précochée.
else {
<input type="radio" name="sexe" value="un homme" id="homme"
/> <label for="homme">un homme</label>
<input type="radio" name="sexe" value="une femme" id="femme" checked="checked" /> <label
for="femmme">une femme</label>}
?>
<br /><br /></p>
Ce code est extrait de cette page (du moins la partie qui nous interesse ici !)<h2>Modification du profil</h2>
<form method="post" action="formulaire_profil_complet_traitement.php">
<?php //recupération des données déjà enregistrées //
//récupération des données dans la base pour les afficher dans le tableau
// connexion à la base
$db = mysql_connect('localhost', 'root', '') or die('Erreur de connexion '.mysql_error());
// sélection de la base
mysql_select_db('gv2',$db) or die('Erreur de selection '.mysql_error());
// preparation de la requete
$sql = ('SELECT * FROM membres WHERE pseudo="'.$_SESSION['login'].'"');
// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
// on récupère le résultat sous forme d'un tableau
$data = mysql_fetch_array($req);
?>
<!-- formulaire pré-rempli prêt pour modif -->
<form>
<p> <!--modification du champs "sexe" A MODIFIER (résoudre le problème du préremplissage (<=> checked mais en fonction des données préenregistrés) -->
<?php
//cas 1 : le membre a coché 'je suis un homme' lors de son inscription, donc la valeur de $data['sexe'] = 'un homme'. Je veux affiché le formulaire du choix du sexe avec la case "homme" précochée.
if $data['sexe'] = 'un homme' {
<input type="radio" name="sexe" value="un homme" id="homme"
checked="checked" /> <label for="homme">un homme</label>
<input type="radio" name="sexe" value="une femme" id="femme" /> <label
for="femmme">une femme</label>;}
//cas 2 : le membre a coché 'je suis une femme' lors de son inscription, donc la valeur de $data['sexe'] = 'une femme'. Je veux affiché le formulaire du choix du sexe avec la case "femme" précochée.
else {
<input type="radio" name="sexe" value="un homme" id="homme"
/> <label for="homme">un homme</label>
<input type="radio" name="sexe" value="une femme" id="femme" checked="checked" /> <label
for="femmme">une femme</label>}
?>
<br /><br /></p>
<p> <!-- modification du champs "nom" -->
<label for="nom">Votre nom</label> : <input type="text" name="nom" id="nom" value="<?php echo $data['nom']; ?>" /></p>
<p> <!-- modification du champs "prenom" -->
<label for="prenom">Votre prénom</label> : <input type="text" name="prenom" id="prenom" value="<?php echo $data['prenom']; ?>" /></p>
<p> <!-- modification du champs "passions" -->
Vos passions : <textarea name="passions" id="passions" > <?php echo $data['passions']; ?></textarea></p>
<p> <!-- modification du champs "localisation" -->
<label for="localisation">Localisation</label> : <input type="text" name="localisation" id="localisation" value="<?php echo $data['localisation']; ?>" /></p>
<p> <!-- modification du champs "date_naissance" -->
<label for="date_naissance">Votre date de naissance</label> : <input type="date" name="date_naissance" id="date_naissance" value="<?php echo $data['date_naissance']; ?>" /></p>
<p> <!-- modification du champs "email" et de son option 'confidentiel' associé -->
<label for="email">Votre email</label> : <input type="text" name="email" id="email" value="<?php echo $data['email']; ?>" />
<!-- option 'option confidentiel" avec préremplissage par défaut sur "oui" -->
Voulez-vous cacher votre email aux autres membres ?
<input type="radio" name="confidentiel_email" value="oui" id="oui" checked="checked" /> <label for="oui">Oui</label>
<input type="radio" name="confidentiel_email" value="non" id="non" /> <label for="non">Non</label></p>
<p> <!-- modification du champs "site" -->
<label for="site">Votre site</label> : <input type="text" name="sie" id="site" value="<?php echo $data['site']; ?>" /></p>
<p> <!-- modification du champs "adresse" -->
<label for="adresse">Votre adresse postale</label> : <input type="text" name="adresse" id="adresse" value="<?php echo $data['adresse']; ?>" /></p>
<p> <!-- modification du champs "code_postal" -->
<label for="code_postal">Votre code postal</label> : <input type="INT" name="code_postal" id="code_postal" value="<?php echo $data['code_postal']; ?>" /></p>
<p> <!-- modification du champs "pays" -->
<label for="pays">Votre pays</label> : <input type="text" name="pays" id="pays" value="<?php echo $data['pays']; ?>" /></p>
<p> <!-- modification du champs "signature" -->
<label for="signature">Votre signature</label> : <input type="textarea" name="signature" id="signature" value="<?php echo $data['signature']; ?>" /></p>
<br /><br />
<p><!-- validation du formulaire-->
<input type="submit" value="Envoyer" /></p>
</form>
Moi ça me paraissait logique mais apparemment ma logique ne plait pas à mon pc puisque il me vire toute ma page de formulaire pour me mettre un message d'erreur qui est : ( ! ) SCREAM: Error suppression ignored for
( ! ) Parse error: syntax error, unexpected '$data' (T_VARIABLE), expecting '(' in C:\wamp\www\mon_siteV6 d\tech\formulaire_profil_complet.php on line 47
La ligne 47 étant celle-ci
if $data['sexe'] = 'un homme' { ... Je suspecte un problème de syntaxe d à l'incrustation du langage html (input) dans un code php (if ...else) mais je ne sais pas comment concilier les 2...
Merci d'avance pour votre aide (et désolée pour la longueur du message! )