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 :

[PHP-JS] Ouvrir un popup avec php


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut [PHP-JS] Ouvrir un popup avec php
    Bonjour tout le monde,
    je suis débutant en php, je travaille actuelllemnt sur une application mon problème est le suivant:
    - dans une page php j'ai un formulaire qui contient des zones de texte et une liste (select) remplie depuis la table ville dans la BDD et
    - a côté de la liste j'ai un bouton ajouter qui permet à l'utilisateur d'ajouter une nouvelle ville dans la BDD en affichant une fenêtre popup qui contient une zone de texte et un bouton enregistrer.
    mon problème c que au moment où je valide la nouvelle ville et je retourne sur ma page initiale, tous les zones de texte dèjà remplis sont vide, et je voudrais mettre a jour la liste pour que la nouvelle ville figure parmi les autres ville.
    N.B : sur le bouton ajouter de la 1ère page php j'appele la fenêtre popup par l'événement Onclick de cette manière :
    <code>
    onClick="window.open('ajouter_ville.php, 'Ajouter_ville', width=250,height=150,scrollbars=0').focus();
    </code>
    Et merci d'avance pour votre aide

  2. #2
    Membre expérimenté Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Points : 1 311
    Points
    1 311
    Par défaut
    salut,
    ta page principale n'est pas rafraichit donc, la liste ne contient pas la dernière ville qui vient d'être saisie dans le popup.
    Dans ce cas tu peux avoir une fonction javascript qui rafraichit la page principale.
    Où alors, une autre solution, une fonction javascript qui récupère le contenu de ta liste et ajoute la ville dernièrement saisi (avec innerHTML).

  3. #3
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    merci julien pour ta réponse,
    mais pas bien saisie pour la fonction innerHTML, en revanche j'ai trouvé une autre solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo("<script language='javascript'>window.opener.location=page_principale.php?nom_liste=<?php echo $nouvelle_ville;?>';</script>");
    mais le vrai problème qui me bloque c le faite de resaisir tous les valeur des zones de texte au moment de la fermeture de la popup tous les champs de la page principale sont initialisé, y'a pas une méthode pour soit garder ces champs soit de les enregistrés dans des variables que l'on puisse récupérer par la suite,
    et merci encore

  4. #4
    Membre expérimenté Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Points : 1 311
    Points
    1 311
    Par défaut
    salut,
    d'après ce que tu me dis, je reviens sur la fonction innerHTML qui pourra t'aider.
    voici ci dessous une petit fonction exemple que tu exécutes sur le popup et qui compléte la liste de la page principale.
    biensur il faudra l'adapter à ta page. N'hésite pas si tu as des questions pour cela.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function refreshPage(newValue){
    	// pointe vers le champ à completer
    	var w = window.opener.document.getElementById('select');
    	// met le contenu du champ dans la variable "content"
    	var content = w.innerHTML;
    	// rajoute la nouvelle valeur au contenu déjà existant
    	content += '<option value="' + newValue + '">' + newValue + '</option>';
    	// place tout le contenu dans le champ
    	w.innerHTML = content;	
    }

  5. #5
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    salut julien,
    merci pour la réponse, j'ai tester cette fonction mais le pb c que la liste est vidé dés que je retourne sur la page principale, pour ne pas compliqué les choses voici mon exemple de test avec la fonction que vous m'avez donner:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    // page principale
    <form name="monform">
    <select name="select">
    <option value="rabat">rabat</option>
    <option value="paris">paris</option>
    <option value="berlin">berlin</option></select>
    <input type="button" value="new" onClick="window.open('popup.php','ajouter_ville','width=200,height=200')">
    </form>
     
    //page popup
    <script language="javascript">
    function refreshPage(newValue){
    	var w = window.opener.document.getElementById('select');
    	var content = w.innerHTML;
    	content += '<option value="' + newValue + '">' + newValue + '</option>';
    	w.innerHTML = content;
    }
    </script>
    <form name="form">
    ville <input type="text" name="ville">
    <input type="button" value="ok" onClick="refreshPage(form.ville.value);self.close();">
    </form>
    j'ai une autre question un peu hors sujet: comment je peux ajouter un avatar a mon portrait comme le tien j'ai essayer mais il m'affiche le msg "echec d'upload du fichier" malgré que ma photo est de taille< 10 ko & dimensions<100x100 px et j'ai ajouter l'url complet.
    et merci 100 fois

  6. #6
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut ajouter un avatar
    aprés une recherche dans le forum j'ai trouvé cette réponse:
    Il faut être membre du club (avoir plus de 50 messages) pour avoir accès aux avatars.
    donc apparement c'est ca le pb j'ai actuellement 4 msg donc il me reste 46 pour avoir droit a mon avatar.
    daccord c compris.

  7. #7
    Membre expérimenté Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Points : 1 311
    Points
    1 311
    Par défaut
    concernant la fonction :
    je mets en gras ce que j'ai changé dans ton code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    // page principale
    <form name="monform">
    <select name="select" id="select">
    <option value="rabat">rabat</option>
    <option value="paris">paris</option>
    <option value="berlin">berlin</option></select>
    <input type="button" value="new" onClick="window.open('popup.php','ajouter_ville','width=200,height=200')">
    </form>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    // page popup
    <form name="form">
    ville <input type="text" name="ville" onblur="refreshPage(this.value)">
    <input type="button" value="ok" onClick="self.close();">
    </form>
    ça marche pour moi.
    dit moi si tu as encore des soucis je t'envoies mes fichiers html.

  8. #8
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    bonjour,
    merci pour la réponse, j'ai effectuer les modifications que vous m'avez signalé mais j'ai tjs le même pb: onblur lorsqu'on execute la fonction refreshPage la list de la page principale devient vide je ne sait pas où est le pb exactement.
    j'ai Win XP SP2 est ce que la barre feu qui bloque qlqe choses??
    et mes deux page en php j'utilise easy php 1.8.
    tanks.

  9. #9
    Membre expérimenté Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Points : 1 311
    Points
    1 311
    Par défaut
    salut,
    je ne pense pas que cela vienne de ta configuration mais sait-on jamais !
    je mets mes fichiers en pièces jointe. Tu les mets dans le même repertoire et tu me dis ce que ça donne.

    tu peux aussi ajouter des alertes pour suivre tes variables. par exemple (voir en gras):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <script language="javascript">
    function refreshPage(newValue){
    	var w = window.opener.document.getElementById('select');
    	var content = w.innerHTML;
    	content += '<option value="' + newValue + '">' + newValue + '</option>';
    	alert("content = " + content)
    	w.innerHTML = content;
    }
    </script>

  10. #10
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    salut,
    et merci une iniemme fois.
    j'ai testé les fichiers et aussi ca ne marche pas , mais j'ai essayé avec Mozilla FireFox et ca marche trés bien mais avec internet c tjs le même pb liste vide
    a propos j'utilise IE 7 je pense qu'il ya un pb avec cette nouvelle versin d'IE a ce niveau.
    sous quel navigateur vous avez tester cet exemple ?
    Merci.

  11. #11
    Membre confirmé Avatar de mathieugamin
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 572
    Points : 627
    Points
    627
    Par défaut
    essaie IE 6, c'est le plus répandu

  12. #12
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    merci je suiverai votre conseil, malheuresement j'ai bien aimé IE 7 surtout son coté graphique et les tabs mais apparement IE 6 garde toujours don charme
    donc "il ne faut jamais changer une equipe qui gagne"

  13. #13
    Membre confirmé Avatar de mathieugamin
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 572
    Points : 627
    Points
    627
    Par défaut
    ben en fait ça serait bien que tout le monde change pour Firefox ou un autre navigateur respectueux des standards Web
    Mais là, y'a encore du boulot...

  14. #14
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    ta raison merci pour le conseil.
    pour IE 7 il y'a bcp de choses a réctifier pour le moment FF2 et le meilleure

  15. #15
    Membre expérimenté Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Points : 1 311
    Points
    1 311
    Par défaut
    c'est vrai que j'utilise aussi FF et j'avais pas pensé à tester sous IE...
    le souci c'est que tes utilisateurs utiliseront peut être IE7, donc faut trouver une autre solution... j'essaie d'y réfléchir

  16. #16
    Membre confirmé Avatar de mathieugamin
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 572
    Points : 627
    Points
    627
    Par défaut
    ça devient d'ailleurs terrible les navigateurs de Microsoft.
    Maintenant il faut pas moins de 4 CSS différents pour une page ! (IE5, IE6, IE7, IE Mac)
    Alors qu'un seul devrait fonctionner...
    Quelle tristesse !

  17. #17
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    salut,
    oui vous avez raison mais pour le moment je vais me contenté d'utiliser IE 6 car il est le plus repondu et le plus utilisé actuellemnt en plus il faut toujours garder un 2ème navigateur aussi pour effectuer les tests et aussi pour voir la # entre les 2 nvigateurs. pour moi je préfére FF.

    jusqu'a ce que IE 7 prend la place de son précedent navigateur je continuerai d'utiliser IE 6 car on peut pas avoir les 2 version au même temps donc il faut faire un choix pour moi jusqu'a présent j'ai tester IE 7 et je l'ai trouvé fantastique mais dés que j'ai ce pb de rafraichissement j'ai décidé de retourner a ma vielle version 6.
    donc quel est votre jugement ?

  18. #18
    Membre confirmé Avatar de mathieugamin
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 572
    Points : 627
    Points
    627
    Par défaut
    C'est une bonne idée pour servir le plus grand nombre de personnes, mais il faudra bien réussir à faire le travail pour IE6, IE7 et FF...

    Regarde sur internet car je crois qu'il existe une extension de FF qui permet de visualiser une page comme si c'était IE6... dans ce cas tu pourrais garder IE7 sur ta machine et faire les tests pour IE6 et FF...
    Jette un coup d'oeil là : extensions.geckozone.org/Firefox/

  19. #19
    Membre confirmé Avatar de mathieugamin
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 572
    Points : 627
    Points
    627
    Par défaut
    L'extension s'appelle IETab .
    Mais malheureusement, cette extension utilise la version de ton IE.

    Elle ne fait que l'ouvrir dans Firefox...

    Désolé, c'était un faux espoir...

    Les pages ouvertes grâce à IE Tab, bien que dans l'interface de Firefox, sont ouvertes avec Internet Explorer. En fait, il s'agit ni plus ni moins que l'insertion d'une fenêtre d'Internet Explorer dans Firefox. Cela signifie que vous avez l'intégralité du moteur de rendu de Microsoft, avec tout ce qui va avec : bugs, failles de sécurité... Cela veut également dire que le navigateur s'identifiera comme IE, exécutera le JavaScript et les ActiveX avec le moteur d'IE. Bref, c'est IE que vous avez sous les yeux. Ne croyez pas au Père Noël ;-)

  20. #20
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    bonjour,
    daccord je vais essayer comme même de faire fonctionner ça sur IE 7 .
    Mais j'arrive pas a trouver exactement la source du pb, peut importe merci pour l'aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ouvrir un screen avec PHP
    Par sebjsp38080 dans le forum Administration système
    Réponses: 0
    Dernier message: 20/06/2009, 20h42
  2. [PHP-JS] Ouvrir des fenêtres popup avec php
    Par bodysplash007 dans le forum Langage
    Réponses: 23
    Dernier message: 21/02/2007, 11h52
  3. [PHP-JS] problème de javascript avec php
    Par ph_anrys dans le forum Langage
    Réponses: 9
    Dernier message: 02/03/2006, 10h34
  4. ouvrir une popup avec php
    Par Defrancesco dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 15/10/2005, 10h34

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