Récupérer des données avec un bouton et les copier dans une autre table

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Récupérer des données avec un bouton et les copier dans une autre table

Re: Récupérer des données avec un bouton et les copier dans une autre table

par Spols » 14 déc. 2020, 15:18

quand tu recupère ton id avec get ilm faut que tu récupère ensuite les données correspondante à cet ID, $of, $ra1, ... ne sont pas défini donc ta requète ne ^peut pas marcher.

en plus il lui manque une parenthèse fermante. affiche ta requète et essaye la dans php myadmin.

Re: Récupérer des données avec un bouton et les copier dans une autre table

par comardud » 14 déc. 2020, 00:01

Bonjour à tous,
j'ai pas mal modifié le code.
j'affiche toujours ma base liste et ensuite en cliquant sur chaque ligne j'ouvre un pop-up avec un bouton suivant.
ce bouton me permet de récupérer l'id de la ligne choisi et ensuite de faire un insert into dans la base accrochage sauf que ça ne fonctionne pas et je ne sais pas ou je fais l'erreur.

Code : Tout sélectionner

<!DOCTYPE html> <META HTTP-EQUIV="Refresh" CONTENT="15"> <head> <meta charset="utf-8" /> <title>PPS-FLC</title> </head> <html> <?php include "include/view/head.php"; ?> <body> <?php include "include/view/header.php"; ?> <section class="content"> <div class="location"><strong>LISTE DES OF PEINTURE au:</strong> <?php echo date('d/m/Y');?><a class="table_head3" href="liste.php"><img src="img/refresh_logo.png" class="refresh_logo"></a></div> <br> <div id="scrollauto"> <table class="table_demands"> <tbody> <?php include "include/connexiondb.php"; $requete = "SELECT * FROM liste ORDER BY date_prod"; $resultat = $mysqli -> query($requete); while ($donnees = $resultat -> fetch_assoc()) { echo "<tr style='background-color:#D7D7D7;color:black;' id=".$donnees['id'].">\n"; echo "<td>"."OF:".' '.$donnees['of']." - " . "RAL:".' '.$donnees["ral"]." - " ."OFL:".' '.$donnees["ofl"]." - " ."BESOIN PROD:".' '.$donnees["date_prod"]. "</td>\n"; // Création du pop-up d'infos pour chaque OF echo "</tr>\n"; echo "<div id=".$donnees['id']." style=position:fixed;width:80%;z-index:20;height:auto;left:12.5%;top:15%;background-color:white;-webkit-transition:all150msease-in;-webkit-transform:scale(0);-ms-transition:all150msease-in;-ms-transform:scale(0);-moz-transition:all150msease-in;-moz-transform:scale(0);transition:all150msease-in;transform:scale(0);border-radius:20px;>"; echo "<div id=pop_up>"; echo "<p class=text_demand id=text_p>OF PEINTURE</p>"; echo "<br>"; echo "<br>"; echo "<br>"; echo "<p class=cmd_info>OF : <span class=cmd_info_span2>".$donnees['of']."</span></p>"; echo "<p class=cmd_info>RAL : <span class=cmd_info_span2>".$donnees['ral']."</span></p>"; echo "<p class=cmd_info>OFL : <span class=cmd_info_span2>".$donnees['ofl']."</span></p>"; echo "<p class=cmd_info>BESOIN PROD : <span class=cmd_info_span2>".$donnees['date_prod']."</span></p>"; echo "<br>"; echo "<br>"; echo "<a href=?id=".$donnees['id']." class=button_p>Suivant</a>"; // Envoi une requête GET avec l'id de la ligne pour l'envoi (vers index_accrochage.php) } echo "</div>"; echo "</div>"; ?> </tbody> </table> <a href="index.php"><button class="button_dispo">Accueil PPS</button></a> </div> </section> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <script type="text/javascript"> jQuery(function(){ $("tr").click(function(){ window.id_ = $(this).attr('id'); $("#"+window.id_).css({ '-webkit-transition': 'all 150ms ease-in','-webkit-transform': 'scale(1)','-ms-transition': 'all 150ms ease-in', '-ms-transform': 'scale(1)','-moz-transition': 'all 150ms ease-in','-moz-transform': 'scale(1)', 'transition': 'all 150ms ease-in','transform': 'scale(1)' }); $('#hamburger_overlay').css('display', 'block'); }); }); </script> </body> </html> <?php if (isset($_GET['id'])) { // On regarde si l'utilisateur a cliqué sur le bouton 'Suivant' et envoyé une requête GET $requete1 = ("insert into accrochage ( of, ral, date_prod, ofl ) VALUES ( '$of','$ral', '$date_prod', '$ofl'"); $prepared2 = $mysqli->prepare($requete1 ); $prepared2->execute(); echo "<script>document.location.href='liste.php';</script>"; // On actualise } ?>

Re: Récupérer des données avec un bouton et les copier dans une autre table

par comardud » 12 déc. 2020, 23:20

Merci pour ta réponse, je suis débutant j'ai suivi le lien mais ça ne m'aide pas beaucoup :-)

Re: Récupérer des données avec un bouton et les copier dans une autre table

par or 1 » 12 déc. 2020, 23:04

le javascript est éxécuté par le navigateur.
le php est exécuté par le serveur.

il faut donc qu'un click sur un bouton ou un lien (qui a donc lieu dans le navigateur d'où javascript) déclenche l'appel d'un script php qui va faire le nécessaire dans la bdd.
une manière simple de faire cet appel en javascript d'un fichier php, c'est :
https://api.jquery.com/jquery.get/

le script php peut faire une requete du genre :
insert into accrochage (...) select ... from liste where id = ...

Récupérer des données avec un bouton et les copier dans une autre table

par comardud » 12 déc. 2020, 22:53

Bonjour à tous,

je fais une nouvelle fois appel aux spécialistes car je suis bloqué :(

J'ai une base contenant plusieurs tables,
avec le code suivant j'affiche sur une page index tout ce que contient ma table "liste" sous forme de tableau avec un bouton par ligne affichée:

Code : Tout sélectionner

<!DOCTYPE html> <META HTTP-EQUIV="Refresh" CONTENT="10"> <html> <head> <meta charset="utf-8" /> <title>PPS-FLC</title> </head> <?php include "include/view/head.php"; ?> <body> <?php include "include/view/header.php"; ?> <br /> <div align="center"> <h2>LISTE DES OF <FONT size="3pt">au: <?php echo date('d/m/Y');?></FONT></h2> </div> <div id="scrollauto"> <section class="preparation"> <?php include "include/connexiondb.php"; ?> <?php $requete = "SELECT * FROM liste ORDER BY date_prod ";?> <table align="center"> <tr> <?php $resultat = $mysqli -> query($requete); while ($donnees = $resultat -> fetch_assoc()) { ?> <td> <?php /*echo "id: "; echo '<strong>'. $donnees['id'] .'</strong>'; echo '&nbsp&nbsp-&nbsp&nbsp';*/ echo "OF: "; echo $donnees['of'] ; echo '&nbsp&nbsp-&nbsp&nbsp'; echo "RAL: "; echo $donnees['ral'] ; echo '&nbsp&nbsp-&nbsp&nbsp'; echo "OFL: "; echo $donnees['ofl']; echo '&nbsp&nbsp-&nbsp&nbsp'; echo "BESOIN PROD: "; echo $donnees['date_prod'] ; ?> <script type="text/javascript"> function suivant() { <?php $req = $db->prepare("INSERT INTO accrochage (of,ral,ofl,date_prod) VALUES ('$of','$ral','$ofl','$date_prod')"); $req -> execute ; ?> } </script> <form> <input type="submit" name="envoyer" value="Suivant" class="button_p" onclick="suivant();"> </form> </td> </tr> <?php } $mysqli->close(); ?> </table> </section> <div align="center"> <a href="index.php"><button class="_button">Accueil PPS</button></a> </div> </div> </body> </html>
je souhaiterais qu'a chaque clic sur un bouton la ligne correspondante soit copiée dans une autre table et que cette ligne soit ensuite supprimée de la table d'origine.
J'ai tenté un "onclick" sur le bouton qui appelle une fonction "insert into" mais ça ne fonctionne pas, je lis énormément de tuto ici ou ailleurs mais je ne comprends pas ce que je fais mal ou ce que je ne fais pas.
Merci de votre aide :-)