Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dodawnie kliku danych naraz
Forum PHP.pl > Forum > PHP
Web-Fifi
Mam pytanie:

Mam pętle która wyświetla mi np. 5 zawodników - wygląda to tak

id | imie | nazwisko | wiek

1 | Jan | Kowalski | 12
2 | Jan | Kowalski | 12
3 | Jan | Kowalski | 12
4 | Jan | Kowalski | 12
5 | Jan | Kowalski | 12

itd. itd.

Przy każdym imieniu mam chceckbox i chce żeby tych zawodników których mam zaznaczonych dodało kolejno do bazy. Mam nadzieje że mnie zrozumieliście ;-)

Dziękuje z góry za pomoc i pozdrawiam.
docent
skoro masz:

1 | Jan | Kowalski | 12
2 | Jan | Kowalski | 12
3 | Jan | Kowalski | 12
4 | Jan | Kowalski | 12
5 | Jan | Kowalski | 12


to teraz:
Kod
<input type=checkbox name=\"z_$id\"> 1 zawodnik
<input type=checkbox name=\"z_$id\"> 2 zawodnik
<input type=checkbox name=\"z_$id\"> 3 zawodnik
<input type=checkbox name=\"z_$id\"> 4 zawodnik
<input type=checkbox name=\"z_$id\"> 5 zawodnik

gdzie $id to indeks powiekszany w petli. Dzieki temu po przeslaniu formularza i zaznaceniu zawodnikow 3 i 5 masz okreslone zmienne $_POST['z_1'] oraz $_POST['z_3']

Co teraz? moglbys probowac w ciemno - ale jest metoda na wyciaganie takich zmiennych (bo przewidywanie czy szukanie nie ma sensu winksmiley.jpg ).

Proponuje uzyc czegos w rodzaju:

Kod
foreach($_POST as $key => $item) { if(ereg("^z_[0-9]+$")) { rob_swoje(); }}



Mozna wrzucic kilka usprawnien - generalnie rzucilem ci sama metoda.. smile.gif milej zabawy
mike
Cytat(docent @ 2005-04-06 08:58:36)
Kod
<input type=checkbox name=\"z_$id\"> 1 zawodnik
<input type=checkbox name=\"z_$id\"> 2 zawodnik

Anie lepiej tak:
  1. <input type="checkbox" name="player[]" value="$id">

To i tego preg'a będzie można później wywalić winksmiley.jpg
docent
To ci oszustwo dopiero. Za moich czasow tego nie bylo =)
Web-Fifi
Zrobiłem tak ale coś nie działa :/
  1. <?php
  2. $atak=$tab[0];
  3. $obrona=$tab[1];
  4. $sila=$tab[2];
  5. $szybkosc=$tab[3];
  6. $refleks=$tab[4];
  7. $strzal=$tab[5];
  8. $refleks=$tab[6];
  9. $rozgrywanie=$tab[7];
  10.  
  11. $a = mysql_query(&#092;"SELECT * FROM baza ORDER by RAND(), imie,nazwisko ASC LIMIT 15\");
  12. echo&#092;"<table align=center width=600 cellpadding=1 cellspacing=1><tr bgcolor=CDCAC0><td colspan=13><center>Kandydaci na napastników
  13. <tr bgcolor=silver><td>T/N<td>Imie<td>Nazwisko<td>Wiek<td>Atak<td>Strzał
  14. <td>Podania<td>Obrona<td>Siła<td>Szybkosc<td>Bramkarz<td>Refleks
  15. <td>SUMA&#092;";
  16.  
  17. function atak($ile_zmiennych,$max_sum,$max_num) {
  18.  
  19. $tab=array();
  20. $suma=0;
  21. for($i=0;$i<$ile_zmiennych;$i++) {
  22. do {
  23. $tab[$i]=rand(1,$max_num);
  24. } while($max_sum<$suma+$tab[$i]+$ile_zmiennych-$i);
  25. $suma+=$tab[$i];
  26. }
  27. return $tab;
  28. }
  29.  
  30. function atak1($ile_zmiennych,$max_sum,$max_num) {
  31.  
  32. $tab1=array();
  33. $suma=0;
  34. for($i=0;$i<$ile_zmiennych;$i++) {
  35. do {
  36. $tab1[$i]=rand(1,$max_num);
  37. } while($max_sum<$suma+$tab1[$i]+$ile_zmiennych-$i);
  38. $suma+=$tab1[$i];
  39. }
  40. return $tab1;
  41. }
  42.  
  43.  
  44. $id=21;
  45. while($imie = mysql_fetch_row($a))
  46.  
  47. {
  48. $liczba = rand(40,130);$liczba1 = rand(40,70);$wiek = rand(18,25);
  49. $tab=atak(3,$liczba,60);$suma=$tab[0]+$tab[1]+$tab[2]+$tab1[0]+$tab1[1]+$tab1[3];
  50. $tab1=atak1(4,$liczba1,60);
  51. if($suma<=&#092;"100\")$color=\"white\";
  52. if($suma>=&#092;"120\")$color=\"E0FFE0\";
  53. if($suma<&#092;"65\")$color=\"FFF0F0\";
  54.  
  55.  echo &#092;"<tr bgcolor=$color><td>$id<input type=\"checkbox\" name=\"player[]\" value=\"$id\"><td><font size=1>$imie[1]<td><font size=1> $imie[3]<td>$wiek<td><font size=1>$tab[0]<td><font 
  56.  
  57. size=1>$tab[1]<td><font size=1>$tab[2]<td><font size=1>$tab1[3]<td><font size=1>$tab1[1]<td><font size=1>$tab1[0]<td><font size=1>-<td><font size=1>-<td>$suma&#092;";$id++;}?>
  58. </table>
  59. <tr bgcolor=#B0DAF7><td colspan=2><center><input type=submit value=\"Dodaj team\" name=submit></td></tr>
  60. </form>
  61. <?
  62.  
  63. if($mod==&#092;"dodaj\"){
  64. mysql_query(&#092;"INSERT INTO baza VALUES ('','\".$imie[1].\"','\".$imie[3].\"');\");
  65. }?>
  66. <tr><td bgcolor=95B8CF><center>Dodano do Bazy Danych
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.