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 :

mélanger du js et du php


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Homme Profil pro
    Technophile Web
    Inscrit en
    Mai 2007
    Messages
    930
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Technophile Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2007
    Messages : 930
    Points : 467
    Points
    467
    Par défaut mélanger du js et du php
    Bonjour,

    Je voudrais faire un truc, certes très "crade" mais très pratique.
    Enfait voila , j'ai un script qui appel une fonction pour détruire un champ de ma base de donnée.
    Cette destruction de champs doit bien entenu être confirmée avant.
    PHP ne peut, en toute logique, créer de boites de dialogue.
    Donc je m'oriente vers javascript, mais voila il s'avère que le php prend la main sur le javascript.
    Je fais donc un confirm en javasript. Dans lequel j'apell ma fonction php, mais voila le PHP est appelé en premier.
    Voici mon code
    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
    if(isset($_GET))
    	{
    		if(isset($_GET['id']) && $_GET['id']!="" && isset($_GET['action']) && $_GET['action']=="delete")
    		{  ?>
    			<script type="text/javascript">
    			var ok = confirm("Are you sure you want to delete user number <?=$_GET['id']?>");
    			alert(ok);
    			if(ok)
    			{
    				<?php $user->delete_account($_GET['id']); // it seem to erase before javascript confirm ?>
    			}
    			document.location.href="<?=$_SERVER['HTTP_REFERER']?>";
    			</script> <?
    		}
    	}
    auriez vous une solution ?

  2. #2
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Points : 5 673
    Points
    5 673
    Par défaut
    Bonjour,

    tu devrais mettre une fonction comme celle-ci dans la page d'affichage :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <script type="text/javascript">
    function DeleteTable(){
       if(window.confirm('Voulez-vous vraiment supprimer cette table ?')){
       document.location.replace('ton_script_de_delete.php');
       }
    }
    </script>
    Avec un bouton image comme ceci (par exemple):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="delete.gif" width="24" height="24" border="0" class="img-middle" alt="Supprimer la table" style="cursor:pointer;" onclick="Delete()">
    et ça redirige vers la page 'ton_script_de_delete.php' qui ne fais que ça .

    (c'est un exemple, hein)

  3. #3
    Membre actif Avatar de chtipitou
    Profil pro
    Étudiant
    Inscrit en
    Mars 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2006
    Messages : 175
    Points : 214
    Points
    214
    Par défaut
    bonjour sliderman,

    garde a l'esprit que php est execute cote serveur et javascript cote client.
    ton serveur ne vas pas arreter son traitement php quand il va voir du js


    Citation Envoyé par sliderman Voir le message

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if(isset($_GET))
    	{
    		if(isset($_GET['id']) && $_GET['id']!="" && isset($_GET['action']) && $_GET['action']=="delete")
    		{  
    			$user->delete_account($_GET['id']); // it seem to erase before javascript confirm
     
    		}
    	}
    la ou tu as ton lien pour supprimer tu met
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="lien vers ton php" onclick="return (confirm('Are you sure you want to delete user number id'));">supprimer</a>

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2008
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 28
    Points : 22
    Points
    22
    Par défaut
    C'est normal, tu peux pas intégrer du js au milieu du php, comme ça.
    js est comme du html, c'est coté client, le php va pas faire une pause durant sont exécution pour attendre ta réponse.

    Il faut faire un lien, avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="window.prompt("Are you sure you want to delete user number <?=$_GET['id']?>");window.location.replace("<?=$_SERVER['HTTP_REFERER']?>");"

  5. #5
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    Par défaut
    salut,
    Citation Envoyé par Stolker
    le php va pas faire une pause durant sont exécution pour attendre ta réponse.
    , Tu dis le contraire...

    Tout est dit ici
    Citation Envoyé par chtipitou
    garde a l'esprit que php est execute cote serveur et javascript cote client. ton serveur ne vas pas arreter son traitement php quand il va voir du js

  6. #6
    Membre confirmé
    Homme Profil pro
    Technophile Web
    Inscrit en
    Mai 2007
    Messages
    930
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Technophile Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2007
    Messages : 930
    Points : 467
    Points
    467
    Par défaut
    enfait l'objectif était de faire en sorte que cela fonction avec et sans js d'activé
    js à mon sens n'existe que pour apporter un plus (en terme d'efficacité et d'interractivité), mais n'est pas un langage indispensable dans le sens où on doit pouvoir s'en passer

  7. #7
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    Par défaut
    en effet, js n'est pas indispensable mais de plus en plus important avec l'essor actuel du web!
    Citation Envoyé par sliderman
    js à mon sens n'existe que pour apporter un plus (en terme d'efficacité et d'interactivité)
    y a pas que ça, js apporte également du dynamisme en déchargeant le serveur de certaines tâches rendant ainsi le trafic plus souple, sans compter de modules js tel que ajax qui sont quand à eux indispensable à certain site.

    Citation Envoyé par sliderman
    enfait l'objectif était de faire en sorte que cela fonction avec et sans js d'activé
    tu as la balise

Discussions similaires

  1. Mélanger du php avec du javascript: besoin de votre aide !
    Par gangrenn dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 03/07/2010, 20h46
  2. Mélanger PHP HTML et BBcode
    Par bloodstar dans le forum Langage
    Réponses: 4
    Dernier message: 07/06/2009, 18h06
  3. Réponses: 0
    Dernier message: 01/06/2009, 17h03
  4. [Php/MySql] Mélanger 2 tables dans une requète !
    Par skylman45 dans le forum Requêtes
    Réponses: 3
    Dernier message: 29/10/2007, 16h22
  5. [PHP-JS] mélanger php et javascript
    Par chti_juanito dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 12/05/2007, 13h38

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