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 :

javascript dans du php?


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 20
    Points : 11
    Points
    11
    Par défaut javascript dans du php?
    Salut,
    J'aimerai savoir s'il était possible du javascript dans du code php?
    Au fait j'ai un formulaire avec des cases à cocher permettant de supprimer des champs en cliquant sur un bouton (pas un lien).
    Je l'ai fais uniquement en php et çà marche.
    J'aimerai maintenant avant suppression demander une confirmation. Je ne veux pas passer par une page intermédiaire mais avec une fenêtre.
    Je repose ma question, est-ce que je peux ajouter un code js dans mon php pour le faire? Et comment? Ou bien je serai obligé de tout faire en fs.
    Le code php
    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
    24
    25
     
    <?php
      $supp = isset($_POST["supp"])? $_POST["supp"] : '';
      $err_supp='';
      //echo  "ok";
      if(isset($_POST["supprimer"])) {
        $controle=true;
    	echo  "ok";
    	if($supp=='') {
    		$err_supp = "Aucun champ n'a été séléctionné.";
    		$controle=false;
    	  }	
    	if ($controle) {
    		include("connexion.php");
    		foreach ($_POST['supp'] as $id) 
    		 {
    		   $requete="delete from participants where id_participants=". intval($id);
    		   $execution=mysql_query($requete)or die(mysql_error());
    		 } 
     
     
    		} 
     
      }
    ?>
    Le bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <td><input type="checkbox" name="supp[]" value="<?php echo $participant["id_participants"]; ?>"></td>

  2. #2
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Voici ce que j'ai essayé de faire en ajoutant du js
    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
    24
    25
    26
    27
    28
    29
    30
    31
     
    <?php
      $supp = isset($_POST["supp"])? $_POST["supp"] : '';
      $err_supp='';
      //echo  "ok";
      if(isset($_POST["supprimer"])) {
        $controle=true;
    	echo  "ok";
    	if($supp=='') {
    		$err_supp = "Aucun champ n'a été séléctionné.";
    		$controle=false;
    	  }	
    	if ($controle) {
    		include("connexion.php");
    		echo '<SCRIPT language="JavaScript">
    		if confirm("Voulez-vous vraiment supprimer")
    		  {
    		    foreach ($_POST["supp"] as $id) 
    		     {
    		       $requete="delete from participants where id_participants=". intval($id);
    		       $execution=mysql_query($requete)or die(mysql_error());
    		     }
    			 window.location = "liste_participants.php"; 
    		  }
    		  else window.location = "liste_participants.php";
    		  
    		</SCRIPT>';
    		} 
     
      }
    ?>

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 31
    Points : 36
    Points
    36
    Par défaut
    Pour répondre à ta question, oui, tu peux écrire du code javascript dans un fichier php, et l'afficher ensuite. C'est exactement pareil que si le code javascript était placé dans un fichier .js.

    Par contre, tu ne peux pas mélanger du code javascript avec du code PHP, et c'est ce que tu fais.

    Faut que tu fasses bien le distingo entre les deux langages : l'un est un langage serveur ( php ), et l'autre un langage client.

    Donc, il faut plus que tu fasses un truc comme ça :
    sur le lien qui permet la suppression d'un champ (ou bouton ou autre, peu importe):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="#" onclick="if confirm(\"Voulez-vous vraiment supprimer\") window.location.href= \"ta_page_qui_supprime.php\"; return false;">Suprimer</a>
    Et dans ton fichier ta_page_qui_supprime.php, le code propre à la suppression.

  4. #4
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Merci pour ta réponse Elvis13.
    Excuse-moi mais je ne sais pas ou placer exactement au niveau du bouton.
    Voici ce que j'ai fais.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <td><input type="checkbox" name="supp[]" value="<?php echo $participant["id_participants"]; ?>"><a href="#" onclick="if confirm(\"Voulez-vous vraiment supprimer\") window.location.href= \"liste_participants.php\"; return false;">Supprimer</a></td>
    Mais il affiche des liens sous les cases. Ca ce n'est pas un problème j'ai enlevé Supprimer entre les balises.
    Avec un seul bouton, je supprime 1 ou plusieurs cases cachées.
    ,c'est bon mais Je n'ai toujours pas la fenêtre de confirmation.
    Et le code php chargé de la suppression se trouve sur la même page que le formulaire (liste_participants.php)

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Désole je n'avais pas mis le code au bon endroit. Je l'avais mis dans le input du checkbox et non dans le bouton. Mais il n'y a pas de changement, toujours pas de fenêtre.

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 31
    Points : 36
    Points
    36
    Par défaut
    En fait, le onclick="....", tu dois le mettre dans la balise de ton bouton. Je l'avais mis dans une balise <a> pour l'exemple

    Quand ce sera fait, regarde si, lorsque tu cliques sur ton bouton, une erreur javascript se déclenche. Si oui, essaie de la comprendre et de faire ce qu'il faut, sinon, poste l'erreur et le code source de ton bouton.

    A +

  7. #7
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Je me suis un peu approché de la solution.
    Dans mon fichier php liste_participants.php, j'ai le code de suppression des chanps
    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
    24
    25
     
    <?php
      $supp = isset($_POST["supp"])? $_POST["supp"] : '';
      $err_supp='';
      //echo  "ok";
      if(isset($_POST["supprimer"])) {
        $controle=true;
    	echo  "ok";
    	if($supp=='') {
    		$err_supp = "Aucun champ n'a été séléctionné.";
    		$controle=false;
    	  }	
    	if ($controle) {
    		include("connexion.php");
    		foreach ($_POST['supp'] as $id) 
    		 {
    		   $requete="delete from participants where id_participants=". intval($id);
    		   $execution=mysql_query($requete)or die(mysql_error());
    		 } 
     
    		echo '<SCRIPT language="JavaScript">window.location = "liste_participants.php"</SCRIPT>';
    		} 
     
      }
    ?>
    et le code js
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    function ControleSupp()
    { 
     
      return confirm("Voulez-vous supprimer?");  
    }
    l'en-tête du formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <form id="form1" name="formulaire" method="post" action="liste_participants.php" onSubmit="ControleSupp()">
    et le code du bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input  type="submit" name="supprimer"  value="Supprimer">
    si je ne coche aucune case (j'ai 4 cases)et que je click sur le bouton la fenêtre se lance avec le message "vous-vous supprimer.". Comme le js j'exécute avant le code php, j'aimerai ramené le contrôle effectué sur les cases (si cochées ou pas) dans le code js. J'ai donc modifie mon code js comme ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <SCRIPT language="JavaScript">
     
    function ControleSupp()
    { 
      if (document.formulaire.supp.checked==false)
       {
    	 alert('Vous devez cocher au moins une case');
       }
       else 
        return confirm("Voulez-vous supprimer?");  
    }
     
    </script>
    Le problème que j'ai maintenant est que j'ai nommé mes checkbox " supp[]". Si je laisse comme çà le js ne s'exécute pas le php oui. Si je mes simplement name="supp", le js s'exécute mais la requête de suppression ne s'exécute plus.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Warning: Invalid argument supplied for foreach() in e:\program files\easyphp1-8\www\rtn\liste_participants.php on line 14

Discussions similaires

  1. [PHP-JS] boite de dialogue JavaScript dans du PHP
    Par momo49800 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 13/06/2006, 10h57
  2. Utiliser variable Javascript dans du PHP
    Par phpaide dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 23/05/2006, 15h14
  3. [PHP-JS] du javaScript dans du php ?
    Par Tempotpo dans le forum Langage
    Réponses: 7
    Dernier message: 03/04/2006, 17h34
  4. [debutant] [PHP-JS] Comment faire appel a du javaScript dans du php
    Par Tempotpo dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 03/04/2006, 16h19
  5. [PHP-JS] Comment insérer du javascript dans mon php
    Par tioseb dans le forum Langage
    Réponses: 1
    Dernier message: 16/02/2006, 17h04

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