Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][AJAX][PHP]Okno Modalne Bootstrap - Wysyłanie danych do okna modalnego
Forum PHP.pl > Forum > Przedszkole
timeo
Hejka Witajcie.

Mam wyskakujące okno modalne po kliknięciu przycisku (bootstrap). Jednak problem tkwi w tym, że chciałbym aby w tym oknie pojawiła się zawartość pobrana z bazy MYSQL, która porównywana byłaby z numerem ticketu pobranym przez przyciśnięciu buttona. No i tutaj robi się problem, bo niestety nie wiem jak to zrobić. To window.open (JS) wysyłałem za pomocą linka, a tutaj niestety nie wiem. Poniżej co wymóźdżyłem ale nie działa.

Przycisk
  1. <form method="POST" action=""><input type="hidden" id="ticket1" value="<?php $row['ticket']; ?>">
  2. <button type="button" onClick="this.form.submit()" class="n" data-toggle="modal" data-target="#myModal">
  3. <?php echo $status; ?> Zmień Status
  4. </button> </form>

Okienko modalne
  1.  
  2. <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
  3. <div class="modal-dialog" role="document">
  4. <div class="modal-content">
  5. <div class="modal-header">
  6. <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  7. <h4 class="modal-title" id="myModalLabel"> </h4>
  8. </div>
  9. <div class="modal-body">
  10.  
  11. <div id="calosccentralnie">
  12.  
  13. <form method="POST" action="">
  14. <?php
  15. if (isset($_POST['ticket']) ){
  16. $ticket = $_POST['ticket'];
  17. $stmt = $db->prepare('SELECT * FROM mobidoktor WHERE ticket = :ticket');
  18. $stmt->bindValue(':ticket', $ticket, PDO::PARAM_INT);
  19. $stmt->execute();
  20. $row4 = $stmt->fetch();?>
  21.  
  22.  
  23. <h2>Zakończ naprawę</h2>
  24. <div id="columnaportal2g">
  25. <div id="columnaportal2g1"><?php echo '#'.'<B>'.$row4['ticket'].'</B>'; ?></div>
  26. <div id="columnaportal2g2"><b>Telefon: </b><?php echo $row4['model3']. " ".$row4['brand2']. " ". $row4['Kolor'];?></div>
  27. <div id="columnaportal2g3"><b>Imei: </b><?php echo $row4['imei']; ?></div>
  28. <div id="columnaportal2g4"><b>Klient: </b><?php echo $row4['klient']; ?></div>
  29. </div>
  30. <hr style="width: 95%; ">
  31.  
  32.  
  33. <?php
  34. $cena = $db->prepare("SELECT * FROM ticketnaprawa WHERE ticket = :ticket ");
  35. $cena->bindValue(':ticket', $_GET['ticket'], PDO::PARAM_INT);
  36. $cena->execute();
  37. foreach($cena as $koszty){
  38. ?>
  39.  
  40.  
  41. <div id="columnaportal2g">
  42.  
  43. <div id="columnaportal2g18"><input type="checkbox" value="<?php echo $koszty['czesc']; ?>" name="czesc[]"><?php echo $koszty['czesc'] ?></div>
  44. <input type="hidden" name="id[]" value="<?php echo $koszty['id']; ?>">
  45. <div id="columnaportal2g18">Kolor: <?php echo $koszty['kolor'];?></div>
  46.  
  47. <div id="columnaportal2g17">Ilość <input type="number" min="1" max="10" name="ilosc[]" value="<?php echo $koszty['ilosc'];?>" autocomplete="off" class="l"></div>
  48. <div id="columnaportal2g17">Netto<input type="number" step="0.01" name="netto[]" value="<?php echo $koszty['ilosc'];?>" autocomplete="off" class="l"></div>
  49. <div id="columnaportal2g17">Brutto<input type="number" name="cenaczesci[]" step=0.01 value="<?php echo $koszty['cena'];?>" autocomplete="off" class="l"></div>
  50. <div id="columnaportal2g17">Wymiana<input type="number" name="cenawymiany[]" value="<?php echo $koszty['ilosc'];?>" autocomplete="off" class="l"></div>
  51.  
  52.  
  53.  
  54. </div>
  55.  
  56.  
  57.  
  58. <?php
  59. }
  60. }
  61.  
  62. ?>
  63. <input type="hidden" name="ticketa" id="ticket" value="<?php echo $ticket; ?>" class="a">
  64. <br><input type="hidden" name="status" id="status" value="Zamknięte" required="required">
  65. <input type="submit" id="add" name="add" value="Zakończ Serwis i Wyślij Towar ">
  66. </form>
  67. <?php
  68.  
  69. if(isset($_POST['ticketa'])){
  70. foreach($_POST['id'] as $id=>$value){
  71.  
  72.  
  73.  
  74. $kosztnaprawy = $db->prepare("UPDATE ticketnaprawa SET ilosc = :ilosc, cenaczesci = :cenaczesci, cenawymiany = :cenawymiany, netto =:netto where id=:id");
  75. $kosztnaprawy ->bindValue(':ilosc', $_POST['ilosc'][$id], PDO::PARAM_INT);
  76. $kosztnaprawy ->bindValue(':id', $_POST['id'][$id], PDO::PARAM_INT);
  77. $kosztnaprawy ->bindValue(':cenaczesci', $_POST['cenaczesci'][$id], PDO::PARAM_INT);
  78. $kosztnaprawy ->bindValue(':cenawymiany', $_POST['cenawymiany'][$id], PDO::PARAM_INT);
  79. $kosztnaprawy ->bindValue(':netto', $_POST['netto'][$id], PDO::PARAM_INT);
  80.  
  81. $data = date("Y-m-d H:i:s");
  82. $czas = date('Y-m-d H:i:s', strtotime('+ 6 hours'));
  83. $przyjecie = $db -> prepare("UPDATE mobidoktor SET Oddanie = :oddanie, Status= :status WHERE `ticket` = :ticket");
  84. $przyjecie -> bindValue(':ticket', $_POST['ticketa'], PDO::PARAM_STR);
  85. $przyjecie -> bindValue(':oddanie',$czas, PDO::PARAM_STR);
  86. $przyjecie -> bindValue(':status', $_POST['status'], PDO::PARAM_STR);
  87.  
  88. $zmianastatusu = $db->prepare("INSERT INTO zmianastatusow SET ticket = :ticket, data = :data, status = :status " );
  89. $zmianastatusu ->bindValue(':ticket', $_POST['ticketa'], PDO::PARAM_INT);
  90. $zmianastatusu ->bindValue(':status', $_POST['status'], PDO::PARAM_STR);
  91. $zmianastatusu ->bindValue(':data', $czas, PDO::PARAM_INT);
  92. $zmianastatusu ->execute();
  93. $kosztnaprawy ->execute();
  94. $przyjecie ->execute();
  95. }
  96.  
  97.  
  98.  
  99.  
  100. echo '<h2>'.'Dane zaktualizowane - Status Zmieniono na Wysłano'.'</h2>'; ?>
  101.  
  102.  
  103. <?php } ?>
  104. </div>
Kishin
Najprościej będzie to zrobić używając Ajaxa, przy otwieraniu modala pobierasz sobie jakie dane chcesz i wrzucasz je do modala poprzez JS
timeo
Dzięki - pozostaje mi nauka AJAX i innych. Ciekaw jestem jak długo mi to pójdzie smile.gif
Niree
https://openenergymonitor.org/emon/node/107

Tutaj masz prosty skrypt, dokładne taki jak chcesz.
http://www.w3schools.com/php/php_ajax_database.asp

A tutaj masz z <select>, wszystko gotowe na tacy podane.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.