Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Zaznaczenie kilku checkbox'ów a zmiana w bazie.
kopek
post
Post #1





Grupa: Zarejestrowani
Postów: 67
Pomógł: 0
Dołączył: 24.02.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Wyświetlam listę użytkowników pobieraną z bazy z jednej tabeli. Poprzez zaznaczenie checkboxa przy danej osobie i kliknięciu przycisku formularza następuje zmiana jednego z parametru danego rekordu. Jak sobie poradzić aby móc zaznaczyć kilku użytkowników i zmienić im to pole jednym kliknięciem dla wszystkich? Teraz wygląda to tak:

  1. if (isset($_POST['cash'])){
  2. connection();
  3. $ins = mysql_query("SET NAMES 'utf8'");
  4. $ins = mysql_query("SET CHARACTER SET 'utf8_general_ci'");
  5. $ins = "SELECT * FROM delegacja WHERE numer='$opcja'";
  6. $query=mysql_query($ins);
  7. $wynik=mysql_fetch_array($query);
  8. if ($wynik['cash']=='nierozliczone'){
  9. $ins = "UPDATE delegacja SET cash='rozliczone' WHERE numer='$opcja'";
  10. $exec=mysql_query($ins);
  11. }
  12. else{
  13. $ins = "UPDATE delegacja SET cash='nierozliczone' WHERE numer='$opcja'";
  14. $exec=mysql_query($ins);
  15. }
  16. }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kopek
post
Post #2





Grupa: Zarejestrowani
Postów: 67
Pomógł: 0
Dołączył: 24.02.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Problem tylko jest taki, że jak zmienię name="opcja" na name="id[]" to trochę mi to skomplikuje projekt bo ten checkbox ma podpiętych kilka zdarzeń w zależności na jaki przycisk się kliknie po zaznaczeniu checkboxa, dlatego chciałbym poszukać jakiegoś rozwiązania, które zadziała w takiej formie bez ingerowania w już wyświetlonych użytkowników, którzy są wyciągani z bazy w formie tabeli.
Tak wygląda wyświetlanie użytkowników:
  1. connection();
  2. $sql = mysql_query("SET NAMES 'utf8'");
  3. $sql = mysql_query("SET CHARACTER SET 'utf8_polish_ci'");
  4. $sql = "SELECT * FROM delegacja ORDER BY numer DESC LIMIT $limit";
  5. $query=mysql_query($sql);
  6. while ($wynik=mysql_fetch_array($query)){
  7. ?><tr
  8. <?
  9. if ($wynik['cancel']=='1') {
  10. ?>style="text-decoration: line-through;" <?
  11. }
  12. ?>
  13. >
  14. <td align="center" <? kolor($wynik['nazwa']);?>><font face="Verdana"><? echo $wynik['numer'];?>/<? echo date('y')?></td>
  15. <td align="center" <? kolor($wynik['nazwa']);?>><font face="Verdana"><? echo $wynik['nazwa'];?></td>
  16. <td align="center" <? kolor($wynik['nazwa']);?>><font face="Verdana">
  17. <? if ($wynik['lokalizacja_']==""){
  18. echo $wynik['lokalizacja'];
  19. }
  20. else {
  21. echo $wynik['lokalizacja']." - ".$wynik['lokalizacja_'];
  22. }
  23. ?>
  24. </td>
  25. <td align="center" <? kolor($wynik['nazwa']);?>><font face="Verdana"><? echo $wynik['cel'];?></td>
  26. <td align="center" <? kolor($wynik['nazwa']);?>><font face="Verdana"><? echo substr($wynik['pojazd'],0,7);?></td>
  27. <td align="center" <? kolor($wynik['nazwa']);?>><font face="Verdana">
  28. <? if ($wynik['data_start']!=$wynik['data_end']){
  29. echo $wynik['data_start']; ?> - <? echo $wynik['data_end'];}
  30. else{
  31. echo $wynik['data_start'];
  32. }
  33. ?>
  34. </td>
  35. <td align="center">
  36. <input type="checkbox" name="opcja" value="<? echo $wynik['numer'];?>"/>
  37. </td>
  38. <td align="center">
  39. <?
  40. if ($wynik['cash']=='nierozliczone'){
  41. ?><font color="red"><?
  42. echo $wynik['cash'];
  43. ?></font><?
  44. }
  45. else {
  46. ?><font color="green"><?
  47. echo $wynik['cash'];
  48. ?></font><?
  49. }
  50. ?></td>
  51. </tr><?
  52. }


Ten post edytował kopek 20.07.2012, 12:46:11
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 14:45