IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Problème update formulaire


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Décembre 2003
    Messages : 107
    Points : 51
    Points
    51
    Par défaut Problème update formulaire
    bonjour,

    j'ai fait un formulaire d'ajout avec validation des champs pas de problème

    voilà un extrait qui fonctionne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    function isprofilVide($profil) { return empty($profil); }
    if( isprofilVide($profil) ) $msg.="le champ profil de contact est vide !<br />";
    <label>Profil de contact*</label><input type="text" name="profil" class="form3" size="40" value="<? if (!empty($_POST["profil"])) {echo stripslashes(htmlentities(trim($_POST["profil"],ENT_QUOTES))); } ?>"><br />
    mais lors de la mise à jour je n'arrive pas à faire le script du formulaire car je voudrais que lorsque la page s'ouvre les champs soients remplis avec les données venant de la base, mais que si la personne modifie on puisse vérifier.

    Exemple : type de profil : toto la personne efface et clic sur envoyer, le champs est vide donc message d'erreur ! etc pour les autres champs

    merci de votre aide

  2. #2
    Membre éclairé Avatar de Yobs
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    675
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2004
    Messages : 675
    Points : 846
    Points
    846
    Par défaut
    Ok si j'ai bien compris tu souhaite afficher un formulaire contenant les données de ta base.

    Pour afficher les données de ta base, tu fais une requete sql pour récupérer ces données, tu les lie à un tableau et tu place ces valeurs dans l'attribut value de ton input ou autre pour d'autres balises.

    exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo '<input type="text" name="nom" value="'.$tab_resultat_sql['val1'].'"/>'."\n";
    Dans tes fonctions je te conseille d'éviter d'insérer ton code html pour ton formulaire. Fais tes tests sur les champs et renvoie q'une valeur $erreur en cas de champs vide.

    exemple:
    <?php
    function isChampVide($champs, $nom_du_champs) {
    // $champs => le champs pour le test
    // $nom_du_champs => son nom

    &#160;&#160;&#160;&#160;&#160;&#160;
    if (empty($champs)) {
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
    erreur&#91;$nom_du_champs] = "le champs $nom_du_champs est vide. veuillez le remplir";
    &#160;&#160;&#160;&#160;&#160;&#160;}
    }
    ?>
    Colorez votre code PHP sur les forums grâce à Developpez.com

    Bien sur tu peux adapter ce code et ajouter un style css ou autre selon ton besoin.
    Chaque problème a une solution, mais il est plus facile de répondre si le problème est correctement renseignés

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Décembre 2003
    Messages : 107
    Points : 51
    Points
    51
    Par défaut
    oui mais dans le cas d'un update, la personne clic sur envoyer, comment gérer le script dans les champs ????

    voici mon code pour l'ajout dans la base (sauf profil de contact), mais pour un update on récupère les données dans la base, lors du clic sur envoyer on vérifie le formulaire dans le cas ou la personne efface le champ 1, il est vide ! donc je vois pas comment gérer cette histoire...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <form method="post" action="<? echo $_SERVER['PHP_SELF']; ?>?nat=<? echo $nat; ?>&lang=<? echo $lang; ?>&r=<? echo $r; ?>">
     <label>Profil de contact*</label><input type="text" name="profil" class="form3" size="40" value="<? echo $row_rslistemail["typeprofil"];  ?>"><br />
     <label>Téléphone*</label><input type="text" name="telephone" class="form3" size="20" value="<? if (!empty($_POST["telephone"])) {echo stripslashes(htmlentities(trim($_POST["telephone"],ENT_QUOTES))); } ?>"><br />
     <label>Email*</label><input type="text" name="email" class="form3" size="40" value="<? if (!empty($_POST["email"])) {echo stripslashes(htmlentities(trim($_POST["email"],ENT_QUOTES))); } ?>"><br />
     <label>Commentaire*</label><input type="text" name="commentaire" class="form3" size="40" value="<? if (!empty($_POST["commentaire"])) {echo stripslashes(htmlentities(trim($_POST["commentaire"],ENT_QUOTES))); } ?>"><br />
     <? echo "<div class=erreur>".$msg."</div>"; ?>
     <input type="image" name="envoyer" src="images/btn_tts-tickets-closed_bg.gif" alt="<? echo TXT_valider; ?>" />
     <input type="hidden" name="envoyer" value="envoyer">
     <input type="hidden" name="r">
     <input type="hidden" name="lang">
     </form>

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    59
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 59
    Points : 71
    Points
    71
    Par défaut Ouuupppss
    Hello,

    algorithmie oblige.

    Si tu veux mettre tout ton code dans le même fichier de script, il faut tester si tu es en mode POST ou en mode AFFICHAGE


    A) Suis-je en mode POST
    par exemple:
    if (isset($_REQUEST["bt_submit"]) && $_REQUEST["bt_submit"]=="modifier")){

    alors je suis en mode POST

    alors je vérifi mes valeurs
    si mes valeurs sont érronnées, mes values de mes champs de formulaire prennent la valeurs des variables du POST


    Mes valeurs sont correctes ou ont été corrigées
    Alors je les update ma table des membres

    L'update c'est bien déroulé
    ici il ya deux méthodes soit:
    Je relit mes nouvelles données dans la table

    Mes values de mes champs formulaire prenent les valeurs que je vient de lire

    et j'affiche les nouvelles données ???


    soit:
    je fait un header send vers le script d'affichage du formulaire en mode lecture
    le POST ne serat pas détecté alors passage en mode affichage.


    Si ca peut t'aider !!?

    O.FOSTIER
    Ni dieu Ni maitre

Discussions similaires

  1. Réponses: 7
    Dernier message: 19/10/2004, 16h12
  2. [STRUTS] problème de formulaire
    Par ultimax dans le forum Struts 1
    Réponses: 5
    Dernier message: 09/07/2004, 15h55
  3. Problème UPDATE
    Par Eltaz dans le forum Langage SQL
    Réponses: 7
    Dernier message: 06/07/2004, 11h37
  4. [Struts] Problème de formulaire(s) ...
    Par djoukit dans le forum Struts 1
    Réponses: 8
    Dernier message: 10/03/2004, 23h48
  5. Réponses: 12
    Dernier message: 24/09/2003, 15h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo