Page 1 sur 2 12 DernièreDernière
Résultats de 1 à 10 sur 14

Sujet : Une histoire de pop up

  1. #1
    Membre MP
    Inscrit
    août 2013
    Messages
    16

    Une histoire de pop up

    Bonjour

    J\'ai un petit problème avec une fenêtre pop up rétissante à l\'ouverture :/
    J\'aimerai, dans le cadre d\'un formulaire PHP, que les erreurs de saisie de l\'utilisateur apparaissent dans une fenêtre pop up (Adresse email non valide etc...).
    Voici mon code actuel :

    Code:
    echo \"<script language=\'Javascript\'>\";
    echo \"var w;
             function Ouvrir() {
             w=window.open(\'validation_formulaire.php3\',\'Erreurs de saisie\',\'width=200,height=200\');
          }\";
    
    ...
    
    echo \"<form action=\'javascript:ouvrir()\' name=formulaire method=\'POST\'>\";
    Pour le moment quand je valide le formulaire rien ne se passe. Surement une erreur de débutant (ce que je suis profondément ^^). Si jamais vous avez une idée ... :roll:

    (dsl pour le smiley au milieu du code, c\'est \": o\" sans espace vous l\'aurez compri ^^


    Meci d\'avance

  2. #2
    Visiteur MP
    Visiteur MP
    le \"multi-post\" est en général déconseillé,
    j\'ai commencé à répondre dans
    langages web.
    c\'est vrai que le message aurait été
    mieux uniquement ici puisque javascript.

  3. #3
    Membre MP
    Inscrit
    août 2013
    Messages
    16
    Merci d\'avoir supprimé mon post de la section java c\'était une erreur de ma part. vraiment dsl :/

    Le PHP alourdit le code je suis d\'accord mais on me demande du PHP qui génère des pages HTML c\'est a dire que je dois faire des \"echo\" du début à la fin de mon code ce qui n\'est certes pas indispensable. Pourquoi utiliser une fonction ? Parceque je n\'ai pas encore les reflexes qu\'il faut, c\'est sur il est plus pratique de mettre ca directement dans le \"form action\". Ce qui donnerai :

    Code:
    <form action=\"javascript:window.open(\'validation_formulaire.php3\');\" name=\'formulaire\' method=\'POST\'>
    A ce stade le popup s\'ouvre bien, cependant il m\'est impossible de passer les variables du formulaire par l\'url car je me retrouverai par exemple avec :

    Code:
    echo \"<form action=\"javascript:window.open(\'validation_formulaire.php3?nom=$nom\');\" name=\'formulaire\' method=\'POST\'>\";
    soit un problème de guillemets et de quotes.

    Quelqu\'un aurait-il la solution ? ^^

    Merci d\'avance

  4. #4
    Visiteur MP
    Visiteur MP
    pas obligé de faire des echo

    par exemple:afficher date serveur
    =========== méthode 1
    ?>
    <script type=\"Text/Javascript\">
    document.write(\'date serveur \' + \'<? echo date(\"d/m/Y\" ?>\');
    </script>
    ....
    ========== méthode 2
    <?
    echo \"<script type=\'Text/Javascript\'>\\r\";
    echo \"document.write(\'date serveur \" . date(\"d/m/Y\&quot . \"\');\\r\";
    echo \"</script>\\r\";
    ....
    ==========
    je préfère la méthode 1, qui à moi, me semble
    plus simple [ mais chacun ses goûts et je ne
    critique en rien ... ]

    donc revenons au post
    >?.....
    <form action=\"javascript:window.open(\"valida tion_formulaire.php3?nom=<?echo $nom;?>\" method=\"post\" ... >

    et je n\'ai pas compris le problème.
    récupérer les paramètres en javascript ?
    <form ... action=\"javascript:ex();\" method=post...>
    <input type=hidden name=prm value=\"valeur\">
    ....
    et dans la function ex
    location.search c\'est = \"?prm=valeur\"

    et je répète ma question : pourquoi l\'appel
    d\'une function javascript par un form avec
    method post, je ne vois pas l\'intéret.
    en général, ( mais généralement il est absurde
    de généraliser ) [ désolé je n\'ai pas pu me
    retenir ] form avec method post ou get c\'est
    l\'appel d\'un programme php depuis une page
    htm, avec javascript ou pas.

    @+

  5. #5
    Visiteur MP
    Visiteur MP
    je n\'ai pas été très clair,
    j\'ai embrouillé les choses non ?

    <form action=\"javascript:window.open(\"valida tion_formulaire.php3?nom=<?echo $nom;?>\" method=\"post\" ... >

    va appeler dans un pop-up, le programme
    validation_formulaire.php3 qui en php
    peut traiter $_GET[\"nom\"]

  6. #6
    Visiteur MP
    Visiteur MP
    fin du précédent :
    et en javascript
    location.search c\'est = \"?nom=valeur \"

  7. #7
    Membre MP
    Inscrit
    août 2013
    Messages
    16
    Pourquoi une fonction javascript ?
    Comme tu as pu le voir je suis pas terrible en prog encore mais je vais essayer d\'expliquer. Dans mon formulaire j\'ai une liste déroulante. Suivant l\'option choisie dans la liste déroulante certains champs du formulaire apparaissent ou disparaissent

    (document.all.item(\'f_categ\').style.display = \'none\' par exemple.

    En appelant un programme php dans le form action, je perdait cette fonctionalité de la liste déroulante c\'est a dire que de changer d\'option dans la liste ne modifiait plus les champs visibles (pourquoi ? aucune idée). J\'ai donc décider de gérer les erreurs de saisie via une fenêtre popup dont je voulai préciser la taille par souci d\'esthétisme. De ce que je sache (d\'accord je ne sais pas grand chose ^^) le javascript était la seule option pour définir la taille de la fenêtre.

    Tout ce que je veux faire à l\'arrivée c\'est une fois mon formulaire validé, qu\'une fenêtre s\'ouvre indiquant à l\'utilisateur soit les erreurs qu\'il a commises soit que les informations ont bien été enregistrées.

    Personnellement je connais a peine la différence entre une méthode POST et une méthode GET alors te dire pourquoi j\'utilise une fonction javascript (que je \"connais\" depuis moins d\'une semaine) dans une méthode POST j\'en sais fichtre rien moi ^^.

    Dans tous les cas j\'en suis à ca :

    Code:
    <form action=\"javascript:window.open(\'validation_formulaire.php3?f_categ=<? echo $f_categ; ?>\')\" name=\"formulaire\" method=\"POST\">
    et dans l\'url de la nouvelle page, la variable $f_categ apparait comme vide alors que si je fais :

    Code:
    echo $f_categ;
    <form action=\'\' name=\'formulaire\' method=\'POST\'>
    je vois la bonne valeur s\'inscrire à l\'écran après avoir validé mon formulaire.

    Félicitations de m\'avoir lu jusque là, j\'espère simplement avoir été compréhensible

    ++

  8. #8
    Visiteur MP
    Visiteur MP
    $_GET[\"$f_categ\"]
    ça ira mieux

    quand au reste, je résume ?
    _ un formulaire de saisie ou des champs
    sont visibles ou pas en fonction de certains
    choix,
    donc style.display=\"none\" ou \"inline\" daccord
    _ un pop-up pour signaler les erreurs

    alors moi [ mais mon avis ne vaut pas grand
    chose ] j\'aurais fait les contrôles en javascript
    lors de la validation du formulaire

    onsubmit=\"return(controle());\"

    dans fonction controle

    function controle()
    { contrôles ....
    if (erreur)
    { ouverture pop_up;
    et y afficher les erreurs;
    return false; }
    else { _ soit pop-up pour dire ok
    _ soit le faire dans php
    réinitialiser formulaire
    return true; } }

  9. #9
    Membre MP
    Inscrit
    août 2013
    Messages
    16
    merci d\'avoir pri la peine de me répondre une nouvelle fois mais j\'ai réussi a me dépatouiller.

    Code:
    if($submit){
      echo \"<script language=\'Javascript\'>\";
      echo \"window.open(\'validation_formulaire.php3?f_categ=\".$f_categ.\"\',\'ListeDesErreurs\',\'width=250,height=300,left=750,top=0\')\";
      echo \"</script>\";
    }
    Et ça marche :lol:
    Oui je sais ya plein de PHP qui alourdit le code mais j\'ai pas le choix c\'est imposé dans le cadre de mon stage ^^.

    Merci quand même

  10. #10
    Visiteur MP
    Visiteur MP
    ça marche tant mieux
    mais je disais
    if($submit){
    >?
    <script language=\'Javascript\'>\";
    window.open(\'validation_formulaire.php3?f_categ=\ "<? echo $f_categ;?>\",\'ListeDesErreurs\',\'width= 250,height=300,left=750,top=0\');
    </script>
    .....
    qui fait la même chose, est plus lisible qu\'avec
    les echo, à mon goût.
    @+

Page 1 sur 2 12 DernièreDernière

Informations du sujet

Utilisateur(s) parcourant ce sujet

il y a actuellement 1 utilisateur(s) parcourant ce sujet. (0 membre(s) et 1 visiteur(s))

Règles des messages

  • Vous ne pouvez pas créer de sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas importer de fichiers joints
  • Vous ne pouvez pas éditer vos messages
  •  
  • Les BB codes sont Activés
  • Les Smileys sont Activés
  • Le BB code [IMG] est Activé
  • Le code [VIDEO] est Activé
  • Le code HTML est Désactivé
Please disable Adblock!