Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] odwołanie bezpośrednio do wartości tablicy
Forum PHP.pl > Forum > Przedszkole
Basia555
Witam
Potrzebuje odwołać się do konkretnego elementu tablicy, tzn mam tablice w sesji:

  1. $_SESSION['tablica'] :Array ( [0] => 94 )


i potrzebuję wyciągnąć z Niej tylko wartości czyli np. 94 , 95

Jak to zrobić? Szukałam na wszystkich stronach zwiazanych z tablicami i nie znalazłam odp na moje pytanie
Fred1485
tak?

  1. $array = array(
  2. 94, 95, 96, 97
  3. );
  4.  
  5. foreach($array as $value) {
  6. echo $value. '<br>';
  7. }
Basia555
  1. <?php
  2. if(!isset($_SESSION['koszyk']))
  3. {
  4. $_SESSION['koszyk']=array();
  5. }
  6. if (isset($_GET['kup']))
  7. {
  8. // jezeli dodajemy jakiś produkt do koszyka
  9. $_SESSION['koszyk'][] = $_GET['kup'];
  10. // przekierowanie z uwzględnieniem nie działających ciasteczek
  11. header('location: '.$_SERVER['PHP_SELF']. '?' .SID);
  12. exit();
  13. }
  14. ?>
  15.  
  16.  
  17.  
  18. <b>Twoj koszyk zawiera:
  19. <?php print count($_SESSION['koszyk']); ?> produktow.</b>
  20. <p><a href="koszyk.php">Zobacz koszyk</a></p>
  21.  
  22. <?php //definicja tablic z towarami oraz cenami
  23.  
  24. $lacz = mysql_connect('localhost','root','haslo') or
  25. die('Padl serwer');
  26. $lacz = mysql_select_db('stronaphp') or die('Padla baza');
  27.  
  28. $wynik = mysql_query("SELECT ID, Nazwa_uslugi, Cena_za_metr, Cena_za_pktmb FROM cennik_uslug ") or die('Błąd zapytania');
  29.  
  30. ?>
  31. <table border="1">
  32. <thead>
  33. <tr>
  34. <th>Opis towaru</th>
  35. <th>cena za metr</th>
  36. <th>Cena za pkt/mb</th>
  37. <th>KUP TERAZ</th>
  38. </tr>
  39. </thead>
  40. <tbody>
  41.  
  42. <?php //wyswietlamy towary z tablicy
  43.  
  44. $i= isset($_GET['i']) ? (int)$_GET['i'] : 0;
  45.  
  46. $towary = array();
  47. $ceny = array();
  48. $ceny2= array();
  49.  
  50. while ($row = mysql_fetch_array($wynik))
  51. {
  52. $towary[]=$row['Nazwa_uslugi'];
  53. $ceny[]=$row['Cena_za_metr'];
  54. $ceny2[]=$row['Cena_za_pktmb'];
  55.  
  56. print '<tr><td>'.$row['ID'].'</td>';
  57. print '<td>'.$row['Nazwa_uslugi'].'</td>';
  58.  
  59. print '<td>';
  60. if(in_array("0", $ceny)){$ceny='';} else {echo $row['Cena_za_metr'];}
  61. print '</td>';
  62.  
  63.  
  64. print '<td>';
  65. if(in_array("0", $ceny2)){$ceny2='';} else {echo $row['Cena_za_pktmb'];}
  66. print '</td>';
  67.  
  68.  
  69. print '<td>';
  70. if(isset($_SESSION['koszyk'][$row['ID']])){echo "gsdg";}
  71. else{
  72. echo " <a href=\"".$_SERVER['PHP_SELF']."?kup=".$row['ID']."\">Kup produkt</a>";}
  73. print '</td></tr>';
  74. }
  75.  
  76. ?>
  77. </tbody>
  78. </table>
  79. </body>
  80. </html>
  81.  
  82.  
  83. </body>
  84. </html>


może nie sprecyzowałam, chodzi mi dokładnie o sprawdzanie które produkty zostały dodane do koszyka i zamiast wyświetlenia przy nich funkcji dodaj ma być wyświetlone że produkt jest w koszyku

kombinowałam w ten sposób:

  1. print '<td>';
  2. if(isset($_SESSION['koszyk'][$row['ID']])){echo "gsdg";}
  3. else{
  4. echo " <a href=\"".$_SERVER['PHP_SELF']."?kup=".$row['ID']."\">Kup produkt</a>";}
  5. print '</td></tr>';
  6. }


ale coś mi nie wychodzi :/
trueblue
ID produktów w tablicy są wartościami, więc trzeba odnieść się do wartości, nie do kluczy.
  1. if(in_array($row['ID'],$_SESSION['koszyk'])){}
  2. else{}
Basia555
Cytat(trueblue @ 1.08.2015, 11:34:38 ) *
ID produktów w tablicy są wartościami, więc trzeba odnieść się do wartości, nie do kluczy.
  1. if(in_array($row['ID'],$_SESSION['koszyk'])){}
  2. else{}


Właśnie o tym odniesieniu się do wartości pisałam w pierwszym poście tylko nie wiedziałam jak to zrobić tongue.gif Ale teraz działa dziękuję bardzo trueblue smile.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.