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

jQuery Discussion :

Suppression de données en base sur action bouton


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Par défaut Suppression de données en base sur action bouton
    Bonjour à tous,

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    while($res = $req_select->fetch())
    {
    	$nomReq = urlencode($res['NomRequete']);
    	$comm = addslashes($res['Commentaire']);
    	$dateDeb = addslashes($res['date_debut']);
    	$dateFin = addslashes($res['date_fin']);
    	list($jour,$heure)=explode(" ",$res['date_heure']);
    	echo "<tr><td style='width:40px;'><input style='width:28px;height:28px;' id='moddatereq' type='image' src='images/config_accueil.png' onClick=\"javascript:showChampsReq('$nomReq','$comm','$dateDeb','$dateFin')\"><br><input style='width:24px;height:24px' id='delreq' type='image' src='images/delete.png' onClick='javascript:supprimerRequete'></td>";
    	echo "<td>".$jour."<br/>".$heure."</td>";
    	echo "<td style='width:200px;' id = 'nomrequete".$id_ligne."' onblur=\"updateValue('".$res['NomRequete']."','NomRequete',document.getElementById('nomrequete".$id_ligne."').textContent);\">".$res['NomRequete']."</td>";				
    	echo "<td style='width:200px;' id = 'commentaire".$id_ligne."' onblur=\"updateValue('".$res['NomRequete']."','Commentaire',document.getElementById('commentaire".$id_ligne."').textContent);\">".$res['Commentaire']."</td>";
    	echo "<td style='width:100px;' id = 'date_debut".$id_ligne."' onblur=\"updateValue('".$res['NomRequete']."','date_debut',document.getElementById('date_debut".$id_ligne."').textContent;\">".$res['date_debut']."</td>";
    	echo "<td style='width:100px;' id = 'date_fin".$id_ligne."'onblur=\"updateValue('".$res['NomRequete']."','date_fin',document.getElementById('date_fin".$id_ligne."').textContent;\">".$res['date_fin']."</td>";			
    }

    Je voudrais supprimer une ligne de données en appuyant sur le bouton supprimer via une fonction javascript/jQuery si j'ai bien tout compris.

    Le problème c'est que je ne sais pas trop comment faire pour y parvenir. Avec les diverses recherches que j'ai fais voici un embryon de fonction :
    Code jQuery : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function supprimerRequete(nomReq,commentaire,dateDeb,dateFin)
    {
    	var query_delete = '';
    	$('td').each(function() {
    		query_delete +=
    	});
    	saveEqu(query_delete);
    }

    Merci d'avance pour votre aide

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    merci de lire ceci
    http://www.developpez.net/forums/d73...isation-forum/

    ton code php ne nous est d'aucune utilité ... merci de poster le code html généré.


    Sinon en ce qui concerne ton souci:
    lors du clikc il te faut faire une requête ajax vers une page php de traitement et y passant en paramètre l'id de l’élément afin de pouvoir faire ta requête mysql et tu retourne un flag témoin du déroulement du traitement
    sur le retour tu supprimes ou non la ligne du tableau selon le flag retourné
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Par défaut
    Voici la page de traitement php qui me permet de supprimer ma ligne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onClick='javascript:deleteRequete('$nomReq','$comm','$dateDeb','$dateFin','$id')'
    delete_Requete.php :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    if (!isset($_SESSION)) {
    	session_start();
    }
    include_once("../connexion.php");
    include_once("../fonctions.php");
    include_once("../config.php");
     
    $id = $_GET['id'];
    $supprReq = $bdd->exec("DELETE FROM config_Requetes WHERE idRequete='$id'");
    ?>

    Par contre, je n'ai pas bien compris l'histoire du flag et quoi faire sur le retour

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    procédons dans l'ordre ...
    hormis un code archaïque et une syntaxe fausse
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    onClick='javascript:deleteRequete('$nomReq','$comm','$dateDeb','$dateFin','$id')'
    onclick => pas de majuscule ...
    ='javascript: => un événement n'attend pas autre chose que du javascript ... (en tout cas pas une recette de crêpes suzettes)

    onClick='javascript:deleteRequete('$nomReq','$comm','$dateDeb','$dateFin','$id')' => rein que la coloration syntaxique devrait te mettre la puce à l'oreille sur la priorité de quotes

    Bref =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="deleteRequete('$nomReq','$comm','$dateDeb','$dateFin','$id')"
    voilà qui est mieux ...

    ensuite il nous manque pour te répondre la partie essentielles
    et accessoirement savoir d’où sortent les variables '$nomReq','$comm','$dateDeb','$dateFin','$id'
    elle sont en php ??? dans un chaine echo de php ??
    sinon là tu envoies du string a la fonction ...

    bref tu donne trop peu d'éléments...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Par défaut
    Dixit le premier post, on retrouve toutes les variables dans le premier bout de code. Ils sont tous dans les echo :
    Code php : 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
    32
    33
    34
    35
    36
     
    <?php 
    $req_select = $bdd->query('SELECT * FROM config_Requetes WHERE Utilisateur = "'.$_SESSION['login'].'" ORDER BY date_heure DESC') or die(print_r($bdd->errorInfo())); //sélectionne les requetes en fonction de l'utilisateur
    $rowCount = $req_select->rowCount();
     
    if ($rowCount == 0)
    {
    	echo "<p>Vous n'avez aucune requête enregistrée en base.<br> Effectuez une analyse puis sauvegardez la, elle apparaitra ensuite sur cette page.</p>";		
    }
    else 
    {?>
    	<h3>Requêtes enregistrées</h3>
    	<!-- <p><i>Vous pouvez modifier les dates de début et de fin avant d'exécuter la requête (au format : AAAA-MM-JJ HH:MM:SS).-->
    	<table style="text-align:center;" class='bordered striped'>
    	<tr><th>Actions</th><th>Date</th><th>Nom Requete</th><th>Commentaire</th><th>Date début</th><th>Date fin</th></tr>
    <?php
    	$i = 0;
    	$id_ligne = 0;
    	$sauvegarde = "";
     
    	while($res = $req_select->fetch())
    	{
    		$nomReq = urlencode($res['NomRequete']);
    		$comm = addslashes($res['Commentaire']);
    		$dateDeb = addslashes($res['date_debut']);
    		$dateFin = addslashes($res['date_fin']);
    		$id = addslashes($res['idRequete']);
    		list($jour,$heure)=explode(" ",$res['date_heure']);
    		echo "<tr><td style='width:40px;'><input style='width:28px;height:28px;' id='moddatereq' type='image' src='images/config_accueil.png' onclick=\"showChampsReq('$nomReq','$comm','$dateDeb','$dateFin')\"><br><input style='width:24px;height:24px' id='delreq' type='image' src='images/delete.png' onclick=\"deleteRequete('$nomReq','$comm','$dateDeb','$dateFin','$id')\"></td>";
    		echo "<td>".$jour."<br/>".$heure."</td>";
    		echo "<td style='width:200px;' id = 'nomrequete".$id_ligne."' onblur=\"updateValue('".$res['NomRequete']."','NomRequete',document.getElementById('nomrequete".$id_ligne."').textContent);\">".$res['NomRequete']."</td>";				
    		echo "<td style='width:200px;' id = 'commentaire".$id_ligne."' onblur=\"updateValue('".$res['NomRequete']."','Commentaire',document.getElementById('commentaire".$id_ligne."').textContent);\">".$res['Commentaire']."</td>";
    		echo "<td style='width:100px;' id = 'date_debut".$id_ligne."' onblur=\"updateValue('".$res['NomRequete']."','date_debut',document.getElementById('date_debut".$id_ligne."').textContent;\">".$res['date_debut']."</td>";
    		echo "<td style='width:100px;' id = 'date_fin".$id_ligne."'onblur=\"updateValue('".$res['NomRequete']."','date_fin',document.getElementById('date_fin".$id_ligne."').textContent;\">".$res['date_fin']."</td>";			
    	}
    }

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function deleteRequete(nomReq,commentaire,dateDeb,dateFin,id)
    {
    	var xhr = getHTTPrequest();
    	var param = "nomReq="+nomReq+"&commentaire="+commentaire+"&dateDeb="+dateDeb+"&dateFin="+dateFin+"&id="+id;
    	xhr.onreadystatechange=function()
    	{
    		if (xhr.readyState == 4 && xhr.status == 200)
    		{
    			popUp(xhr.responseText);
    		}
    	}
    	xhr.open("POST","./ajax/delete_Requete.php?"+param,true);
    	xhr.send();
    }

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    merci de lire ceci
    http://www.developpez.net/forums/d73...isation-forum/

    ton code php ne nous est d'aucune utilité ... merci de poster le code html généré.
    Merci de tenir compte de ça !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Par défaut
    J'en tiens compte mais il m'a demandé de lui afficher l'origine des variables et la fonction du coup j'ai tout affiché pour une meilleure compréhension

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Si tu regardais ton code html généré tu comprendrais (enfin je l'espère) que ta syntaxe hml est fausse ...

    de plus je ne vois toujours pas la fonction ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  9. #9
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Par défaut
    Fonction deleteRequete :

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function deleteRequete(nomReq,commentaire,dateDeb,dateFin,id)
    {
    	var xhr = getHTTPrequest();
    	var param = "nomReq="+nomReq+"&commentaire="+commentaire+"&dateDeb="+dateDeb+"&dateFin="+dateFin+"&id="+id;
    	xhr.onreadystatechange=function()
    	{
    		if (xhr.readyState == 4 && xhr.status == 200)
    		{
    			popUp(xhr.responseText);
    		}
    	}
    	xhr.open("POST","./ajax/delete_Requete.php?"+param,true);
    	xhr.send();
    }

    [edit] J'ai checker l'html généré et j'ai corrigé les soucis de synthaxe \" à la place de '

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/08/2009, 10h19
  2. Ajouter un enregistrement dans une base de donnée mysql sur click bouton
    Par gueguenk dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 23/06/2009, 15h44
  3. Réponses: 4
    Dernier message: 09/06/2007, 23h49
  4. ouverture ds frame diff sur action / bouton flash
    Par nonofritsch dans le forum Flash
    Réponses: 1
    Dernier message: 12/11/2006, 01h27

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