Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Opcja "checkbox" wyciąganie danych
Forum PHP.pl > Forum > Przedszkole
lukasz_m3
Witam,

Potrzebuje kodu który prześle mi dane wszystkich zaznaczonych pól.

żeby wszystko było jasne pokazuje kody.

Kod do wyświetlania danych z bazy :

  1. $archiwum_skup = mysql_query("SELECT * FROM skup WHERE data='$data' ORDER BY id DESC LIMIT 30 ")
  2. or die('Błąd bazy danych, nie można odczytać danych.');
  3.  
  4. if(mysql_num_rows($archiwum_skup) > 0) {
  5. /* jeżeli wynik jest pozytywny, to wyświetlamy dane */
  6.  
  7. echo "<table border=\"0\" cellspacing=\"0\" cellpadding=\"6\" width=\"100%\" ><tr>";
  8. echo "<td bgcolor=\"74bfea\"><strong>Id</strong></td>";
  9. echo "<td bgcolor=\"74bfea\"><strong>Data</strong></td>";
  10. echo "<td bgcolor=\"74bfea\"><strong>Imie Nazwisko/Firma</strong></td>";
  11. echo "<td bgcolor=\"74bfea\"><strong>Nazwa produktu</strong></td>";
  12. echo "<td bgcolor=\"74bfea\"><strong>Ilość</strong></td>";
  13. echo "<td bgcolor=\"74bfea\"><strong>Stawka</strong></td>";
  14. echo "<td bgcolor=\"74bfea\"><strong>Wartość</strong></td>";
  15. echo "<td bgcolor=\"74bfea\"><strong>Dodał</strong></td>";
  16. echo "<td bgcolor=\"74bfea\"><strong>Godzina</strong></td>";
  17. echo "<td bgcolor=\"74bfea\"><strong>Opcje</strong></td>";
  18. echo "</tr>";
  19. while($r = mysql_fetch_assoc($archiwum_skup)) {
  20. echo "<td style=\"border: 1px solid #74bfea;\"><input type=\"checkbox\" name=\"id\" value={$r['id']}/></td>";
  21. echo "<td style=\"border: 1px solid #74bfea;\">".$r['data']."</td>";
  22. echo "<td style=\"border: 1px solid #74bfea;\">".$r['imie']."</td>";
  23. echo "<td style=\"border: 1px solid #74bfea;\">".$r['nazwa_produktu']."</td>";
  24. echo "<td style=\"border: 1px solid #74bfea;\"><center><font color=\#43f53e\">".($r['ilosc'])."</td>";
  25. echo "<td style=\"border: 1px solid #74bfea;\"><center><font color=\"#6498f6\">".number_format($r['stawka'],2,","," ")." zł</td>";
  26. echo "<td style=\"border: 1px solid #74bfea;\"> <center><font color=\"red\">".number_format($r['wartosc'],2,","," ")." zł</font></center></td>";
  27. echo "<td style=\"border: 1px solid #74bfea;\">".$r['dodany_przez']."</td>";
  28. echo "<td style=\"border: 1px solid #74bfea;\"><center>".$r['czas']."</centre> </td>";
  29. echo "<td style=\"border: 1px solid #74bfea;\">
  30. <a href=\"skup_delete.php?a=del&amp;id={$r['id']}&amp;wartosc={$r['wartosc']}&amp;ilosc={$r['ilosc']}&amp;nazwa_przedmiotu={$r['nazwa_produktu']}\"><img src=\"images\delete.png\" />Usuń</a>
  31. <a href=\"skup_edit.php?a=edit&amp;id={$r['id']}&amp;ilosc1={$r['ilosc']}&amp;\"><img src=\"images\save.png\" />Edytuj</a>
  32. <a href=\"skup_kw.php?a=kw&amp;id={$r['id']}&amp;&amp;imie={$r['imie']}&amp;nazwa_produktu={$r['nazwa_produktu']}&amp;ilosc={$r['ilosc']}&amp;stawka={$r['stawka']}&amp;wartosc={$r['wartosc']}&amp;dodany_przez={$r['dodany_przez']}&amp;data={$r['data']}&amp;\" target=\"_blank\"><img src=\"images\kw.png\" />KW</a>
  33. </td>";
  34. echo "</tr>";
  35. }
  36. echo "</table>";
  37. }
  38. else
  39.  
  40. echo('<br>Brak danych do wyświetlenia.');
  41.  
  42. echo "<a href=\"skup_view.php\" />Pokaż całe archiwum</a>";


http://www47.zippyshare.com/v/91774512/file.html - tak wygląda


Jak przesłać te dane do opcji "KW"

  1. /* GENEROWANIE KW */
  2.  
  3. $a = trim($_REQUEST['a']);
  4. $id = trim($_GET['id']);
  5. $imie = trim($_GET['imie']);
  6. $nazwa_produktu = trim($_GET['nazwa_produktu']);
  7. $ilosc = trim($_GET['ilosc']);
  8. $stawka = trim($_GET['stawka']);
  9. $wartosc = trim($_GET['wartosc']);
  10. $dodany_przez = trim($_GET['dodany_przez']);
  11. $data = trim($_GET['data']);
  12.  
  13.  
  14. echo "<table border=\"1px solid\" , cols width=\"60%\" , cellspacing=\"0\" , cellpadding=\"5\">
  15. <tr>
  16. <td><center><br><b>POTWIERDZENIE SKUPU KW</b><br>z dnia ".$data."<br></center></td>
  17. <tr>
  18. <td>Imię Nazwisko : ".$imie." </td>
  19. <tr>
  20. <td>Produkt : ".$nazwa_produktu." </td>
  21. <tr>
  22. <td>Ilość : ".$ilosc." kg </td>
  23. <tr>
  24. <td>Stawka : ".$stawka." zł </td>
  25. <tr>
  26. <td><b>Wypłata : ".$wartosc." zł</b></td>
  27. <tr>
  28. <td>Podpis : <br><center><font color = \"gray\">Pracownik biurowy<br>".$dodany_przez." </center></font><br></td>
  29. </tr>
  30. <br>
  31. <br>
  32. ";
  33. echo "<table border=\"1px solid\" , cols width=\"60%\" , cellspacing=\"0\" , cellpadding=\"5\">
  34. <br>
  35. <br>
  36. <br>
  37. <tr>
  38. <td><center><br><b>POTWIERDZENIE SKUPU KW</b><br>z dnia ".$data."<br></center></td>
  39. <tr>
  40. <td>Imię Nazwisko : ".$imie." </td>
  41. <tr>
  42. <td>Produkt : ".$nazwa_produktu."</td>
  43. <tr>
  44. <td>Ilość : ".$ilosc." kg </td>
  45. <tr>
  46. <td>Stawka : ".$stawka." zł </td>
  47. <tr>
  48. <td><b>Wypłata : ".$wartosc." zł </b> </td>
  49. <tr>
  50. <td>Podpis : <br><center><font color = \"gray\">Pracownik biurowy<br>".$dodany_przez." </center></font><br></td>
  51. </tr>";
  52.  
  53. /* GENEROWANIE KW - KONIEC */
  54.  
  55. ?>


Jeśli podałem za mało danych proszę napisać.
Turson
Żeby sprawdzić, które checkboxy są zaznaczone, muszą mieć one to samo name, ale muszą być tablicą, czyli np. name="id[]"
Potem tylko pętlą przelatujesz wszystkie elementy tablicy i sprawdzasz, które są, a które nie są puste.
lukasz_m3
Nie bardzo wiem jak to zapisać w pętli. Można więcej informacji??
Chce zrobić tak żeby za pomocą tablicy wyswietlic numery id.
Turson
  1. <form action="" method="post">
  2. <input type="checkbox" name="a[]" value="wartosc1"><input type="checkbox" name="a[]" value="wartosc2">
  3. <input type="checkbox" name="a[]" value="wartosc3"><input type="checkbox" name="a[]" value="wartosc4">
  4. <input type="submit">
  5. </form>
  6.  
  7. <?php
  8. if(isset($_POST['a'])){
  9. echo "Wysłano: ";
  10. foreach($_POST['a'] as $v){
  11. echo $v;
  12. }
  13. }
lukasz_m3
A czy metodą GET też da się to zrobić ?
chodzi mi o to że dane wysyłam w linku więc wygodniej tak.
Dodam że dane wyświetlają się z bazy danych pętlą while.

Z tego co zrozumiałem to dostanę id wybranych rekordów.
Turson
Get tak samo
lukasz_m3

"Wysłano:
Warning: Invalid argument supplied for foreach() in C:\WebServ\httpd\skup_kw.php on line 34"

taki błąd dostaje.
wicek
Możliwe że źle odbierasz tą tablicę pokaż kod.
SaMi
Cytat
Warning: Invalid argument supplied for foreach() in C:\WebServ\httpd\skup_kw.php on line 34

Tu masz wszystko napisane, w pętli foreach podajesz prawdopowodbnie pustą lub nie istniejącą tablicę w związku z tym pętla zwraca odpowiedni warning.
lukasz_m3
  1. echo "<td style=\"border: 1px solid #74bfea;\"><input type=\"checkbox\" name=\"inde[]\" value={$r['id']}/></td>";
  2.  
  3. $index[]=['inde'];
  4.  
  5. <a href=\"skup_kw.php?a=kw&amp;id={$r['id']}&amp;index={$index}>KW</a>
  6.  
  7.  
  8. /*plik odbioru*/
  9.  
  10. if(isset($_GET['index'])){
  11. echo "Wysłano: ";
  12. foreach($_GET['index'] as $v){
  13. echo $v;
  14. }
  15. }


jak użyje echo $index jest array
Turson
To żaden błąd. Przy tablicach nie wystarczy samo echo $tablica.
lukasz_m3
wysietla mi tylko jedno id zamiast wsyztskich zaznaczonych. jak to rozwiązać ?
Mam pętle while co wyświetla dane.
wicek
  1. $index = $_GET['inde'];
  2. foreach($index as $v){
  3. echo $v.'<br>';
  4. }
  5.  
  6.  
lukasz_m3
Jeszcze tylko jedno pytanie.

Jak przesłać tablicę taką metodą:

  1. <a href=\"skup_kw.php?a=kw&amp;id={$r['id']}&amp;index={$index} target=\"_blank\"><img src=\"images\kw.png\" />KW</a>
nospor
...&tab[]=1&tab[]=4&tab[]=5....
lukasz_m3
Ale chodzi o to, że ja chce przypisywać wartości tablicy inde[]

ind[]={$inde[]};

jak tak robie to mam błąd : Fatal error: Cannot use [] for reading in ...

nie mogę użyć pustej tablicy.
nospor
Ja ci podalem jak ma wygladac przykladowy link. A to ze ty go w php nie potrafisz zbudowac to juz inna bajka
lukasz_m3
dlatego pisze na forum??

Spoko nie chcesz pomoc to nie.
nospor
Jak ty nie czytasz co ci piszą, to się nie dziw, że i pomagac sie nie chce, skoro i tak na to lejesz.
Jak iterowac po tablicy juz ci napisano: FOREACH. Przy pomocy FOREACH masz zbudowac częśc Twojego linku.
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.