Aller au contenu

Antho03

Actif
  • Compteur de contenus

    25
  • Inscrit(e) le

  • Dernière visite

Réputation sur la communauté

0 Neutre

Pour me contacter

  • Mon Site
    http://anthony.landes.free.fr
  1. Salut, Merci pour ta réponse ! J'intégrerai la solution que tu me proposes et je reviendrai pour te dire si c'est bon ou pas.
  2. Bonjour à tous, J'ai créé un formulaire d'inscription comprenant des cases à cocher. Je souhaiterai intégrer des sessions pour récupérer les infos entrées par l'utilisateur si ce dernier doit revenir sur le formulaire suite à l'insertion de mauvaises données. Pour les champs textes et radio il n'y a aucun soucis, cependant je bute sur les cases à cocher. Voilà mon code : <input type="checkbox" name="projets_vises[]" id="projets_vises[]" value="créations d'entreprises" /> Création d'entreprises<br /> <input type="checkbox" name="projets_vises[]" id="projets_vises[]" value="Projet innovants / fort potentiel" /> Projet innovants / fort potentiel<br /> <input type="checkbox" name="projets_vises[]" id="projets_vises[]" value="Transmission / reprise dentreprise" /> Transmission / reprise dentreprise<br /> <input type="checkbox" name="projets_vises[]" id="projets_vises[]" value="Economie sociale et solidaire" /> Economie sociale et solidaire<br /> <input type="checkbox" name="projets_vises[]" id="projets_vises[]" value="Projet coopératif (création ou reprise dentreprise)" /> Projet coopératif (création ou reprise dentreprise) Dans ma page de traitement : $_SESSION['projets_vises'] = implode(",", $_POST['projets_vises']); Pour info, je pensais utilisais le même bout de code que pour mes radio : <?php if($_SESSION['type_organisme']=='Association') {echo 'checked="checked"';}?> Mais si je fais ça pour mes cases à cocher, le nombre de tests à faire va être sans fin. Auriez-vous un bout de code à me proposer ou pouvez-vous me guider ? Merci d'avance
  3. Antho03

    problème "if - else"

    J'ai utilisé ton code et escapé les données. Tout est nikel. Merci beaucoup pour ta contribution.
  4. Antho03

    problème "if - else"

    J'ai modifié mon code suite à vos conseils : if ($nl == "oui") { mysql_query("insert into spip_nl (id, Nom, Prenom, email) values('', '".$nom."', '".$prenom."', '".$email."')"); mail($cible, $objet, $contenu, $headers); echo '<p style="padding:5px 0 8px 5px;">'.$message_envoye1.'</p>'."\n"; } else if ($nl != "oui") { mail($cible, $objet, $contenu, $headers); echo '<p style="padding:5px 0 8px 5px;">'.$message_envoye2.'</p>'."\n"; } else { echo '<p style="padding:5px 0 8px 5px;">'.$message_non_envoye.'</p>'."\n\n\n"; } } else { // une des 3 variables (ou plus) est vide ... echo '<p style="padding-left:5px; color:#BF0D0D">'.$message_formulaire_invalide.'</p>'."\n"; $err_formulaire = true; }; }; et tout fonctionne comme je veux. Merci beaucoup pour votre aide !
  5. Antho03

    problème "if - else"

    J'y pensais à ça, mais il est impossible d'imbriquer plusieurs "else" dans un seul "if" ?
  6. Antho03

    problème "if - else"

    Bonjour à tous, Je demande votre aide car j'ai un petit soucis de codage : mon code : if (mail($cible, $objet, $contenu, $headers) && ($nl == "oui")) { mysql_query("insert into spip_nl (id, Nom, Prenom, email) values('', '".$nom."', '".$prenom."', '".$email."')"); echo '<p style="padding:8px 0 8px 5px;">'.$message_envoye1.'</p>'."\n"; } else { echo '<p style="padding:8px 0 8px 5px;">'.$message_envoye2.'</p>'."\n"; } else { echo '<p>'.$message_non_envoye.'</p>'."\n\n\n"; } } else { // une des 3 variables (ou plus) est vide ... echo '<p style="padding-left:5px;">'.$message_formulaire_invalide.'</p>'."\n"; $err_formulaire = true; }; }; Quand je mets ces lignes dans mon code, l'erreur suivante est retournée : Parse error: parse error, unexpected T_ELSE in D:... : eval()'d code on line 153 La ligne 153 correspond à la ligne où se situe mon second "else". Si j'enlève cet "else", le code est bon. Je suis sur que ce n'est pas grand chose mais n'étant pas spécialiste du PHP, je bloque. Merci pour vos lumières.
  7. Ok. Pour remplir mes champs, je fais une requête qui va chercher l'info dans la BDD et affiche la variable dans le "value". Mon code : //requête récupérant la raison sociale de l'entreprise $raisonsoc = mysql_query("SELECT raison_sociale FROM annuaire WHERE id='$ident'"); et dans le formulaire : <?php while($resultat = mysql_fetch_row($raisonsoc)) { echo '<input style="font-family:calibri; font-size:14px;" type="text" name="Zraison_soc" value="' . $resultat[0] .'" />'; } ?> Voilà, c'est plus en JS mais si ça peut aider quelqu'un...
  8. Bonjour, J'ai créé un formulaire que je souhaite remplir dynamiquement avec des infos présentes en BDD. Pour cela, je fais une requete qui va chercher l'info dans la BDD et affiche la variable dans le "value". Mon code : //requête récupérant la raison sociale de l'entreprise $raisonsoc = mysql_query("SELECT raison_sociale FROM annuaire WHERE id='$ident'"); et dans le formulaire : <?php while($resultat = mysql_fetch_row($raisonsoc)) { echo '<input style="font-family:calibri; font-size:14px;" type="text" name="Zraison_soc" value="' . $resultat[0] .'" />'; } ?> Pour les champs texte, je n'ai pas de soucis. Cependant je bloque sur les listes déroulantes. J'ai un code particulier pour les variables de session : <? $liste_dep = array("", "Ariège (09)", "Aveyron (12)", "Haute-Garonne (31)", "Gers (32)", "Lot (46)", "Hautes-Pyrénées (65)", "Tarn (81)", "Tarn-et-Garonne (82)"); echo' <select style="color: #000; font-size:14px; font-family: calibri;" name="Zdepartement" id="dep">'; foreach ($liste_dep as $value=>$label) { if ($label == $_SESSION['form']['Zdepartement']) { $selected = ' selected="selected"'; } else { $selected = ''; } echo '<option' . $selected . ' value="' . $label . '">' . $label . '</option>'; } echo '</select>'; ?> Je ne sais pas comment il faut placer le code pour que le département sélectionné soit celui présent dans ma BDD. Merci d'avance
  9. Merci pour ta réponse. Ca ne fonctionne pas. J'ai trouvé cependant un autre moyen pour réaliser ce que je souhaite. Par ailleurs, la question pourrait être intéressante pour d'autres personnes. Dois-je mettre le sujet en "résolu" ? Merci
  10. Bonjour, J'ai réalisé un formulaire de saisie. Je souhaiterai pré-remplir des champs input type="text". Mon formulaire : <input id="rs" style="font-family:calibri; font-size:14px;" type="text" name="Zraison_soc" /> J'ai essayé avec ce code : document.getElementById("rs").elements["Zraison_soc"].value = 'test1'; mais ça ne marche pas. D'où vient le problème selon vous et/ou avez une autre piste à m'indiquer ? Merci
  11. C'était bien ça. Merci beaucoup camillejg !! Merci à Jacques aussi pour ses précisions.
  12. Bonjour, J'ai créé un formulaire avec entre autres des boutons radios et des textarea. Quand l'utilisateur à fait une erreur, je lui indique dans ma page de traitement dans laquelle j'ai placé un lien qui lui permet de revenir sur la page du formulaire. Je récupère les valeurs de mes différents champs (text, select) avec des variables de sessions sans pb. Je bloque seulement sur les radio et textarea. mon formulaire : <?php session_start(); ?> ... <form name=...> ... <input type="radio" name="Zgroupe" value="oui" <?php if($_POST['Zgroupe']=='oui') {echo 'checked="checked"';}?>/>oui <input type="radio" name="Zgroupe" value="non" <?php if($_POST['Zgroupe']=='non') {echo 'checked="checked"';}?>/>non <textarea name="Zautres_entre_groupe" cols="24" rows="5" value="<?php echo $_POST['Zautres_entre_groupe'] ;?>"></textarea> ... </form> ma page de traitement : <?php session_start(); ... $_SESSION['Zgroupe'] = $_POST['Zgroupe']; $_SESSION['Zautres_entre_groupe'] = $_POST['Zautres_entre_groupe']; ... ?> Mes valeurs ne sont pas récupérées avec ces bouts de code. J'ai écumé plusieurs forums disant que ce type de code fonctionne mais pas chez moi :??: Où je fais erreur ? Il ne me reste qu'à faire fonctionner ces 2 fonctions pour terminer mon formulaire... Merci pour votre aide
  13. Bonjour, je vous explique mon problème. J'ai créé un formulaire en intégrant des listes dynamiques liées. Ces listes sont constituées en appelant le contenu de 2 tables ("région" et "département" ) de ma BDD. La 2ème liste s'affiche en fonction du choix fait dans la 1ère. Je récupère les variables des listes et insère le contenu dans une 3ème table "annuaire" dans ma BDD. Jusque là, tout est ok. Voici le code de mon formulaire : <?php /* Requête SQL de récupération des données de la première liste */ $sql = "SELECT `id_region` AS idr, `region` ". "FROM `region` ". "ORDER BY `id_region`;"; /* Connexion et exécution de la requête */ $connexion = mysql_connect($serveur, $admin, $mdp); if($connexion != false) { $choixbase = mysql_select_db($base, $connexion); $recherche = mysql_query($sql, $connexion); /* Création du tableau PHP des valeurs récupérées */ $regions = array(); /* Index du département par tableau régional */ $id = 0; while($ligne = mysql_fetch_assoc($recherche)) { $regions[$ligne['idr']] = $ligne['region']; } ?> <form name="form" action="action.php" method="post" style="color: #333; font-size:14px;"> <table width="650" border="0" cellspacing="3"> <tr class="bleu"> <td> Région : <select name="Zregion" id="region" onChange="getSecteur1(this.value);"> <option value="vide">- - - Choisissez une région - - -</option> <?php /* Construction de la première liste : on se sert du tableau PHP */ foreach($regions as $nr => $nom) { ?> <option value="<?php echo($nr); ?>"><?php echo($nom); ?></option> <?php } ?> </select> <!-- on met un bloc avec un id ou va s'insérer le code de la seconde liste déroulande --> <span id="blocDepartements">Départements</span><br /> <? $rq="Select region from region where (id_region = '".$nr."')"; ?> </td></tr></table> </form> la liste département est générée par un fichier PHP (et un fichier JS également) : <?php /** * Code qui sera aeeplé par un objet XHR et qui * retournera la liste déroulante des départements * correspondant à la région sélectionnée. */ /* Paramètres de connexion */ $serveur = "localhost"; $admin = "*****"; $mdp = "*****"; $base = "*****"; /* On récupère l'identifiant de la région choisie. */ $idr = isset($_GET['idr']) ? $_GET['idr'] : false; /* Si on a une région, on procède à la requête */ if(false !== $idr) { /* Cération de la requête pour avoir les départements de cette région */ $sql2 = "SELECT `id_departement`, `departement`". " FROM `departement`". " WHERE `id_region` = ". $idr ."". " ORDER BY `id_departement`;"; $connexion = mysql_connect($serveur, $admin, $mdp); mysql_select_db($base, $connexion); $rech_dept = mysql_query($sql2, $connexion); /* Un petit compteur pour les départements */ $nd = 0; /* On crée deux tableaux pour les numéros et les noms des départements */ $code_dept = array(); $nom_dept = array(); /* On va mettre les numéros et noms des départements dans les deux tableaux */ while(false != ($ligne_dept = mysql_fetch_assoc($rech_dept))) { $code_dept[] = $ligne_dept['id_departement']; $nom_dept[] = $ligne_dept['departement']; $nd++; } /* Maintenant on peut construire la liste déroulante */ $liste = ""; $liste .= '<select name="Zdepartement" id="departement">'."\n"; for($d = 0; $d < $nd; $d++) { $liste .= ' <option value="'. $code_dept[$d] .'">'. htmlentities($nom_dept[$d]) .'</option>'."\n"; } $liste .= '</select>'."\n"; /* Un petit coup de balai */ mysql_free_result($rech_dept); /* Affichage de la liste déroulante */ echo($liste); } /* Sinon on retourne un message d'erreur */ else { echo("<p>Une erreur s'est produite. La région sélectionnée comporte une donnée invalide.</p>\n" ); } ?> Mon problème est le suivant : en récupérant les valeurs "Zregion" et "Zdepartement" dans les listes, ce sont les id qui sont enregistrés dans ma table et non pas les noms des départements et régions. La question que je me pose et sur laquelle je demande votre aide est : comment faire pour enregistrer les noms à la place des id ? J'ai pensé à une requête du genre : $rq="Select region from region where (id_region = '".$nr."')"; qui permettrait de changer l'id en nom mais 1: je ne suis pas sur qu'elle soit correcte et 2: je ne sais pas où la placer. Merci pour votre aide
  14. Il manquait en effet tout simplement l'appel des variables..., par exemple : $Zsecteur1 = htmlentities($_POST['Zsecteur1']); Merci Jacques
  15. Bonjour à tous, J'ai créé un formulaire d'inscription sur mon site et souhaite insérer les valeurs sélectionnées de ce dernier dans ma BDD. voici le code de mon formulaire : <form name="form" action="action.php" method="post"> <fieldset style="border: 3px double #333399"> <legend>Secteur d'activité</legend> <!-- Secteur 1 --> Secteur d'activité 1 : <select name="Zsecteur1" onChange="getSecteur1(this.value);"> <option value="vide">- - - Choisissez un secteur - - -</option> <?php /* Construction de la première liste : on se sert du tableau PHP */ foreach($regions as $nr => $nom) { ?> <option value="<?php echo($nr); ?>"><?php echo($nom); ?></option> <?php } ?> </select> <span id="blocDepartements">Sous-secteur</span><br /> <!-- Secteur 2 --> Secteur d'activité 2 : <select name="Zsecteur2" onChange="getSecteur2(this.value);"> <option value="vide">- - - Choisissez un secteur - - -</option> <?php /* Construction de la première liste : on se sert du tableau PHP */ foreach($regions as $nr => $nom) { ?> <option value="<?php echo($nr); ?>"><?php echo($nom); ?></option> <?php } ?> </select> <span id="blocDepartements2">Sous-secteur</span><br /> Adresse : <input type="text" name="Zadresse"> <input type="submit" name="ok" id="ok" value="Envoyer" /> </fieldset> </form> Ce formulaire est composé de 2 menus déroulants, appelant eux-mêmes un second menu déroulant en fonction du choix effectué dans le premier (AJAX) et d'un champ texte. voilà ensuite le fichier "action.php" : <?php echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n"); /* Variables de connexion */ $serveur = "localhost"; $admin = "******"; $mdp = "******"; $base = "******"; //connexion à la base _AT_mysql_connect($serveur, $admin, $mdp) or die("Impossible de se connecter au serveur de bases de données.".mysql_error()); //sélection de la base _AT_mysql_select_db($base) or die("Impossible de se connecter à la base de données.".mysql_error()); /* Enregistrement du formulaire dans la BDD */ $annuaire = mysql_query("insert into spip_annuaire (secteur1,secteur2,sous_secteur1,sous_secteur2,adresse) values('".$Zsecteur1."','".$Zsecteur2."','".$Zsous_secteur1."','".$Zsous_secteur2."','".$Zadresse."')"); echo $annuaire; ?> Ma requête est effectuée correctement (test avec des alert) et insère une ligne dans ma table mais avec des champs vides. J'ai testé ma requête directement dans PHP My Admin, elle fonctionne correctement. J'ai mis la valeur "adresse" en dur dans ma requête dans action.php, elle apparait bien dans la BDD. "echo $annuaire;" m'affiche systématiquement "1" Le problème vient donc à mon avis de la récupération des variables du formulaire et là...je bloque complétement. Pour info, la récupération des variables "sous_secteur1" et "sous_secteur2" est générée grâce à un autre fichier php. Merci pour votre aide
×
×
  • Créer...