Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Skomplikowana Petla w pętli powiazana z formularzem...
Forum PHP.pl > Forum > PHP
simoc007
Witam,
mam plik z formularzem:

  1. <html>
  2. <head>
  3. <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" />
  4. <meta http-equiv="Content-Language" content="pl" />
  5. </head>
  6. <body >
  7. <?php
  8. $host="xxx"; // Host name
  9. $username="xxx"; // Mysql username
  10. $password="xxx"; // Mysql password
  11. $db_name="xxx"; // Database name
  12. $tbl_name="xxx"; // Table name
  13.  
  14. mysql_connect("$host", "$username", "$password")or die("cannot connect");
  15. mysql_select_db("$db_name")or die("cannot select DB");
  16.  
  17. // get value of id that sent from address bar
  18. // Retrieve data from database
  19. $sql="SELECT * FROM $tbl_name order by id asc";
  20. $result=mysql_query($sql);
  21. $num_results = mysql_num_rows($result);
  22. $id=$_GET['id'];
  23.  
  24. echo '<form action="b.php" method="get">
  25. <table border="1">';
  26. echo '<input type="hidden" name="ilosc" value="'.$num_results.'" />';
  27. for ($i=1; $i<=$num_results; $i++) {
  28. $row = mysql_fetch_array($result);
  29. echo '<tr>';
  30. echo '<td>'.$row['id'].'</td>';
  31. echo '<td>'.$row['towar'].'</td>';
  32. echo '<td align="center"><input type="checkbox" name="cb'.$i.'" value="'.$row['id'].'"/></td></tr>';
  33. }
  34. echo '</table><br><input type=submit value="wyślij"></form>';
  35. ?>
  36. </body>
  37. </html>


I plik odczytujący:

  1. <?
  2. $ilosc = $_GET['ilosc'];
  3. $liczba_wybranych = 0;
  4.  
  5.  
  6. echo 'Z puli '.$ilosc.' towarow, wybrano nastepujace : <br>';
  7. for ($tab=1; $tab<=$ilosc; $tab++){
  8. if(isset($_GET['cb'.$tab])){
  9. echo ' TOWAR z ID = '.$_GET['cb'.$tab].'<br>';
  10. $liczba_wybranych++;
  11. }
  12. }
  13. echo 'Razem wybrano '.$liczba_wybranych.' towarow.';
  14. ?>
  15. <br>
  16. <br>
  17.  
  18.  
  19. <table border="1">
  20. <tr>
  21. <td>kol id </td>
  22. <td>towar</td>
  23. <td>ilość </td>
  24. </tr>
  25. <tr>
  26. <td>id od 1 do X wierszy</td>
  27. <td>nazwa towaru</td>
  28. <td>ilość</td>
  29. </tr>
  30.  
  31. </table>


Baza danych z której pobierane są informacje wygląda w taki sposób:
Kod
id | towar | nazwa_towaru_1 | ilosc_towaru_1 | ... | nazwa_towaru_99 | ilosc_towaru_99 |

Towar - to liczba która podaje ile jest towarów w danym rekordzie czyli jak będzie tu 4 to baza będzie miała zapełnione pola do "nazwa_towaru_4 | ilosc_towaru_4";


Potrzebuję tabelkę która wyświetli mi wszystkie towary z tych ID które wybrałem (w formularzu) w tabelce tak jak w pliku 2. Czyli powiedzmy, że jak wybrałem z formularza id 1 i 8 gdzie:
id 1 miał 4 towary, a id 8 miał 2 towary.

To ma mi się wyświetlić 1 tabelka z sześcioma towarami. Kolejność niema znaczenia ważne by wszystkie się wyświetliły.
CuteOne
Napiszę ci to za 50zł. Kontakt na PW
simoc007
yyy już doszedłem do tego mam kod:

  1. <?
  2. $ilosc = $_GET['ilosc'];
  3. $liczba_wybranych = 0;
  4. $hostt="xxx"; // Host name
  5. $usernamet="xxx"; // Mysql username
  6. $passwordt="xxx"; // Mysql password
  7. $db_namet="xxx"; // Database name
  8. $tbl_namet="xxx"; // Table name
  9.  
  10. mysql_connect("$hostt", "$usernamet", "$passwordt")or die("cannot connect");
  11. mysql_select_db("$db_namet")or die("cannot select DB");
  12. ?>
  13. <table border="1">
  14. <?
  15. for ($tab=1; $tab<=$ilosc; $tab++){
  16. if(isset($_GET['cb'.$tab])){
  17.  
  18. $lppp=$_GET['cb'.$tab];
  19. $sqll="SELECT * FROM $tbl_namet WHERE id='$lppp'";
  20. $resultl=mysql_query($sqll);
  21. $rowl=mysql_fetch_array($resultl);
  22.  
  23. $towar1=$rowl['towar']; ?>
  24.  
  25. <? for ($z=1; $z<=$towar1; $z++){ ?>
  26. <tr>
  27. <td>
  28. <? echo $z; ?>
  29. </td>
  30. <td>
  31. <?
  32. echo "<br>";
  33. $nt1= "nazwa_towaru_".$z;
  34. $nt2 = $rowl[$nt1];
  35. echo $nt2;
  36. echo "<br>";
  37. ?>
  38.  
  39. </td>
  40. <td>
  41. <?
  42. echo "<br>";
  43. $ill1= "ilosc_towaru_".$z;
  44. $ill2 = $rowl[$ill1];
  45. echo $ill2;
  46. echo "<br>";
  47. ?>
  48.  
  49. </td>
  50. </tr>
  51.  
  52. <? }
  53. }
  54. }
  55. ?></table>
  56. <br>
  57. <br>
  58.  

teraz mam bardziej skomplikowaną rzecz wytłumaczę grafiznie.:
Baza danych:


załuszmy że w formulażu wybrałem id 1,3,5

mam tabelkę wedle tego kodu:


a chce mieć:



Co do zapłaty niezamieżam płacić i nieproszę o gotowy kod a o podpowiedzi...
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.