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

PHP & Base de données Discussion :

Vehiculer un ID dans une URL en Modal


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Février 2014
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2014
    Messages : 145
    Par défaut Vehiculer un ID dans une URL en Modal
    Bonjour j'ai un Popup Modal, cependant je souhaiterai vehiculer un ID

    en faisant cela, le modal s'ouvre bien forcement j'ai pas d'ID
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href='#modal-evaluation' data-toggle='modal' class='btn btn-primary btn-sm'> <i class='fa fa-check' aria-hidden='true'></i> </a>
    j'ai essayé ceci l'ID est bien récupérré
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href='id_produit_client=".$information['id_produit_client']."#modal-evaluation' data-toggle='modal' class='btn btn-primary btn-sm'> <i class='fa fa-check' aria-hidden='true'></i> </a>
    Le modal ne se déclenche plus aprés plusieurs recherche a priori les modal ne peuvent par récuperer de valeur en GET

    y a t'il ne solution car refaire une page juste pour afficher un petit formulaire

    voici mon modal

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    <div class="modal fade" id="modal-evaluation">
                        <div class="modal-dialog" role="document">
                            <div class="modal-content">
                                <div class="modal-header">
                                    <h4 class="modal-title">
                                        <i class="fa fa-cloud-upload"></i> Evaluation</h4>
                                    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                                        <span aria-hidden="true">&times;</span>
                                    </button>
                                </div>
                                <div class="modal-body">
                                   <p>
     
                                    <div class="card card-block sameheight-item">                                    
                                       <form action="../clients/update-statut-theorique-pratique-client.php" method="post">							  	
     
    										<div class="row">												
    													<div class="col-sm-6">
    										<div class="form-group">
                                                <label class="control-label">Etat Théorique</label>
                                                <div>
                                                    <label>
                                                        <input class="radio squared" name="statut_theorique" value="1" checked="checked" type="radio">
                                                        <span>Reussi</span>
                                                    </label>
                                                    <label>
                                                        <input class="radio squared" name="statut_theorique" value="0" type="radio">
                                                        <span>Echec</span>
                                                    </label>
                                                </div>
                                            </div> </div>
    										<div class="col-sm-6">
    										<div class="form-group">
                                                <label class="control-label">Etat Pratique</label>
                                                <div>
                                                    <label>
                                                        <input class="radio squared" name="statut_pratique" value="1" checked="checked" type="radio">
                                                        <span>Reussi</span>
                                                    </label>
                                                    <label>
                                                        <input class="radio squared" name="statut_pratique" value="0" type="radio">
                                                        <span>Echec</span>
                                                    </label>
                                                </div>
                                            </div> </div>
     
    										</div>										
    												</div>
     
    										 <div class="form-group">
                                                <button type="submit" name="btnevaluationclient" class="btn btn-primary">Enregistrer</button>
                                            </div></div>											
                                        </form>
     
     
                            </div>							   
    							   </p>	
                                </div>                            
                            </div>
    Merci pour votre aide

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2019
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2019
    Messages : 9
    Par défaut
    Bonjour,

    Tu as la possibilité d'intégrer un peu de jquery sur ta page ?
    Si oui, tu glisses un petit attribut data-id="$information['id_produit_client']" sur ton lien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href='#modal-evaluation' data-id="$information['id_produit_client']" data-toggle='modal' class='btn btn-primary btn-sm btnModalEvaluation'> <i class='fa fa-check' aria-hidden='true'></i> </a>
    Puis tu bind un event click sur celui-ci. Tu récupères l'id et tu le glisses dans un input hidden de ton form.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <input type='hidden' name='idproduitclient' >
     
    $(document).ready(function() {
      $('.btnModalEvaluation').click(function() {
        var id = $(this).data('id');
        $('#modal-evaluation').find('input[name=idproduitclient]').val(id);
      });
    });
    à tester ...

  3. #3
    Membre confirmé
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Février 2014
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2014
    Messages : 145
    Par défaut
    Je te remercie pour ta réponse

    Voici se que j'ai effectué, mais ca marche pas
    le lien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href='#modal-evaluation' data-id=".$information['id_produit_client']." data-toggle='modal' class='btn btn-primary btn-sm'> <i class='fa fa-check' aria-hidden='true'></i> </a>
    le formulaire
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    <div class="modal fade" id="modal-evaluation">
                        <div class="modal-dialog" role="document">
                            <div class="modal-content">
                                <div class="modal-header">
                                    <h4 class="modal-title">
                                        <i class="fa fa-cloud-upload"></i> Evaluation</h4>
                                    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                                        <span aria-hidden="true">&times;</span>
                                    </button>
                                </div>
                                <div class="modal-body">
                                   <p>
     
                                    <div class="card card-block sameheight-item">                                    
                                       <form action="../clients/update-statut-theorique-pratique-client.php" method="post">                                  
     
                                            <div class="row">                                                
                                                        <div class="col-sm-6">
                                            <div class="form-group">
                                                <label class="control-label">Etat Théorique</label>
                                                <div>
                                                    <label>
                                                        <input class="radio squared" name="statut_theorique" value="1" checked="checked" type="radio">
                                                        <span>Reussi</span>
                                                    </label>
                                                    <label>
                                                        <input class="radio squared" name="statut_theorique" value="0" type="radio">
                                                        <span>Echec</span>
                                                    </label>
                                                </div>
                                            </div> </div>
                                            <div class="col-sm-6">
                                            <div class="form-group">
                                                <label class="control-label">Etat Pratique</label>
                                                <div>
                                                    <label>
                                                        <input class="radio squared" name="statut_pratique" value="1" checked="checked" type="radio">
                                                        <span>Reussi</span>
                                                    </label>
                                                    <label>
                                                        <input class="radio squared" name="statut_pratique" value="0" type="radio">
                                                        <span>Echec</span>
                                                    </label>
                                                </div>
                                                <input type='hidden' name='id_produit_client' id='id_produit_client'   value='id_produit_client'>
                                            </div> </div>
     
                                            </div>                                        
                                                    </div>
     
                                             <div class="form-group">
                                                <button type="submit" name="btnModalEvaluation" class="btn btn-primary">Enregistrer</button>
                                            </div></div>                                            
                                        </form>
     
     
                            </div>                               
                                   </p>    
                                </div>                            
                            </div>
    et ma fonction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    function mise_a_jour_statut_client_session()
    {
    $bdd = connexion_bdd();    
        $req_maj= $bdd -> prepare('UPDATE tbl_produit_client SET statut_theorique =:statut_theorique,statut_pratique =:statut_pratique WHERE id_produit_client = '.intval($_POST['id_produit_client']));
        $req_maj->execute( array(
        'statut_theorique' => $_POST['statut_theorique'],
        'statut_pratique' => $_POST['statut_pratique']
        ));    
        return TRUE;    
     
    }
    le résultat obtenu est que tous les champs change de valeur pas seulement celui avec l'ID

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2019
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2019
    Messages : 9
    Par défaut
    Est-ce que tu peux me montrer le bout de code jQuery de ta page ?

    Rien à voir mais dans ta requête SQL tu devrais aussi bind ton paramètre id_produit_client :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     $req_maj= $bdd -> prepare('UPDATE tbl_produit_client SET statut_theorique =:statut_theorique,statut_pratique =:statut_pratique WHERE id_produit_client = :id_produit_client');
        $req_maj->execute( array(
        'statut_theorique' => $_POST['statut_theorique'],
        'statut_pratique' => $_POST['statut_pratique'],
        'id_produit_client' => intval($_POST['id_produit_client'])
        ));

  5. #5
    Membre confirmé
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Février 2014
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2014
    Messages : 145
    Par défaut
    merci pour ta réponse voici mon bout de code

    j'ai essayé cela

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $(document).ready(function() {
      $('.btnModalEvaluation').click(function() {
        var id = $(this).data('id');
        $('#modal-evaluation').find('input[name=id_produit_client]').val(id);
      });
    });
    et cela

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $(document).ready(function() {
      $('.btnModalEvaluation').click(function() {
        var id = $(this).data('id_produit_client');
        $('#modal-evaluation').find('input[name=id_produit_client]').val(id);
      });
    });

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Donne-nous au moins un (bout de) code COMPLET !


    1- Si on suppose que le script de la modale N'EST PAS PRESENTE * dans le script dès le départ, alors il faut récupérer via PHP :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<a href="?id_produit_client='.$information['id_produit_client'].'#modal-evaluation" data-toggle="modal" class="btn btn-primary btn-sm"> <i class="fa fa-check" aria-hidden="true"></i> </a>';

    • ?id_produit_client=xxx : normalement, tu dois pouvoir récupérer avec $_GET['id_produit_client'].

    * (car certain scripts GÉNÈRENT la modal "à la volée", via un fichier PHP, par exemple).


    2- Si on suppose que le script de la modale EST PRESENTE dès le départ, alors il faut récupérer via JavaScript :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<a href="#modal-evaluation" data-id-produit-client="'.$information['id_produit_client'].'" data-toggle="modal" id="MON_BOUTON" class="btn btn-primary btn-sm"> <i class="fa fa-check" aria-hidden="true"></i> </a>';
    En jQuery :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $('#MON_BOUTON').on('click', function(){
       var id_produit_client = $(this).data('id-produit-client');
    });

Discussions similaires

  1. récupérer les paramètres dans une url
    Par asetti dans le forum ASP
    Réponses: 6
    Dernier message: 23/12/2005, 10h08
  2. Lancement appli à partir d'extension dans une URL dans IE
    Par Sniper94-2 dans le forum Windows
    Réponses: 3
    Dernier message: 03/11/2005, 17h55
  3. [VB.NET] Ajouter une cible dans une URL
    Par guimartbis dans le forum ASP.NET
    Réponses: 3
    Dernier message: 04/05/2005, 14h17
  4. Création affectation de parmètre dans une url
    Par bumbo500 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 30/11/2004, 16h39
  5. [ Struts ] recuperer une valeur dans une url?
    Par njac dans le forum Struts 1
    Réponses: 2
    Dernier message: 02/06/2004, 14h24

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