Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Przekazanie tablicy
Forum PHP.pl > Forum > PHP
Lonas
Hej. Mam taka sytuacje

W petli generuje inputy z roznymi wartosciami.

  1. <?php
  2. <input type="text" name="ilosc_tab[]" id = "ilosc_tab" class="ilosc" value="'.$ilosc.'">
  3. ?>


Chce je teraz przekazac do innego pliku, niestety nie moge uzyc metody $_POST

Jak moge tablice ilosc_tab zaraz po zakonczeniu petli zapisac do sesji tak ze jesli zrobie link do innego pliku to ta tablica bedzie juz dostepna w sesji questionmark.gif


Probowalem przekazac parametrem get ale wtedy przekazuje sie tylko 1 zmienna
domis86
pokaz caly formularz
Lonas
  1. <script language="javascript">
  2. function przeladuj(){
  3. location = 'index2.php?zloz_zamowienie=on&akcja=4&zwieksz_ilosc='+document.getElementById('ilosc_tab').value+'&id_tow='+document.getElementById('id').value;
  4. }
  5. </script>
  6.  
  7.  <?php
  8.  
  9.  
  10. if(!isset($_SESSION['zalogowany']))
  11. {
  12. echo'<center><p style="color: #FFFFFF;font-size:15px; margin-top: 0px;">Zaloguj się aby złożyć zamówienie.</p>
  13. Zachęcamy do dokonania płatnosci online.<br><br>';
  14. include('zaloguj.php');
  15. }
  16. else
  17. {
  18.  
  19.  if(isset($_GET['zwieksz_ilosc']))
  20.  {
  21. $ile = count($_SESSION['koszyk']);
  22.  
  23.  for($j=0; $j<$ile; $j++)
  24.  {
  25. //tutaj w tablicy powinny byc poszczegolne id towaru oczywiscie w get nie dziala b
    ierze jeden element
  26. if($_GET['id_tow'][$j] == $_SESSION['koszyk'][$j][0])
  27. $_SESSION['koszyk'][$j][1] = $_GET['zwieksz_ilosc'][$j];
  28.  }
  29.  
  30.  }
  31.  $ile_produktow = count($_SESSION['koszyk']);
  32.  echo'
  33.  <table width="100%" class="koszyk" >
  34. <tr>
  35. <td colspan ="3"><img src="images/strzalka.gif" alt="" width="14" height="10"><font size="2"><b>Twój koszyk</b></font></td>
  36. </tr>
  37. <tr>
  38. <td class="koszyk" width="60%">Nazwa</td>
  39. <td class="koszyk" width="10%"><center>Sztuk</td>
  40. <td class="koszyk" width="10%"><center>Cena</td>
  41. <td class="koszyk" width="10%"><center>Usuń</td>
  42. </tr>
  43. <tr> ';
  44. $wartosc = 0;
  45. for($j=0; $j<$ile_produktow; $j++)
  46. {
  47. $sql = mysql_query("SELECT * from towar WHERE id_towar = '".$_SESSION['koszyk'][$j][0]."' ");
  48. $row = mysql_fetch_array($sql);
  49.  
  50. $nazwa = $row['nazwa_towar'];
  51. $ilosc = $_SESSION['koszyk'][$j][1];
  52.  
  53. if(isset($row['cena_promo']) AND $row['cena_promo'] == "0.00")
  54. $cena = $row['cena_promo'];
  55. else
  56. $cena = $row['cena'];
  57.  
  58. $suma = $ilosc * $cena;
  59. $wartosc += $suma;
  60. <tr>
  61. <td>'.$nazwa.'</td>
  62. <td><center><input type="text" name="ilosc_tab[]" id = "ilosc_tab" class="ilosc" value="'.$ilosc.'">
  63. <input type="hidden" name="id_tow[]" id = "id" class="ilosc" value="'.$_SESSION['koszyk'][$j][0].'"></td>
  64. <td><center>'.$cena.'</td>
  65. <td><center>x</td>
  66. <tr>';
  67. }
  68.  
  69. <tr>
  70. <td class="koszyk" colspan ="4">Suma : '.$wartosc.' zł | <a href="javascript:przeladuj()" class="pod_menu" id="przeladuj">przelicz</a> </td>
  71. <tr>
  72. <tr>
  73. <td colspan = "4"><center><input type="submit" name="save" value="Wyslij" class="button"/></td>
  74. <tr>
  75. </table>';
  76.  
  77. }
  78.  ?>
  79. </form>


Dodam że $_SESSION['koszyk'] to 2 wymiarowa tablica

Pod kazdym indeksem tablicy jest umieszczona inna tablica z 2 polami id towaru i ilosc
domis86
obejmij te inputy w <form> z metodą get i zamiast linku (<a>) daj normalny input typu submit i powinno byc ok smile.gif
Lonas
Tak tylko ze w tym pliku bedzie jeszcze form metoda post
domis86
no to w takim razie uzyj prototype (http://prototypejs.org/)
i w tej funkcji przeladuj() zrob:

location = 'index2.php?' + Form.serialize('tu id formularza');

czarodziej.gif
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.