Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Jak wykonać warunek aby pokazało jak nie ma produktu w koszyku pusty ?
Forum PHP.pl > Forum > Przedszkole
FliSs_tCv
Witam mam kod taki i chciałbym do tego dodac warunek taki aby przy pustym koszyku pokazywalo pusty koszyk a przy dodanym produkcie ten produkt tylko nie wiem zbytnio jak to zastosować przy moim sposobie hmm

Tak wygląda oryginalna część skryptu wyświetlającego smile.gif
  1. <?php
  2. foreach($_SESSION['koszyk'] as $jedzenie => $wartosc){
  3. foreach ($wartosc as $cecha){
  4. echo '<tr>
  5.  <td style="border : 1px solid white; text-align : center;">
  6. '.$cecha['nazwa'].'
  7. </td>
  8.  <td style="border : 1px solid white; text-align : center;">
  9. '.$cecha['ilosc'].'
  10. </td>
  11. <td style="border : 1px solid white; text-align : center;">
  12.  '.$cecha['wielkosc'].'
  13. </td>
  14. </tr>';
  15. }
  16. }
  17. ?>


a moimi próbami bylo to tongue.gif

  1. <?php
  2. if (foreach($_SESSION['koszyk'] as $jedzenie => $wartosc)){
  3. foreach ($wartosc as $cecha){
  4. echo '<tr>
  5.  <td style="border : 1px solid white; text-align : center;">
  6. '.$cecha['nazwa'].'
  7. </td>
  8.  <td style="border : 1px solid white; text-align : center;">
  9. '.$cecha['ilosc'].'
  10. </td>
  11. <td style="border : 1px solid white; text-align : center;">
  12.  '.$cecha['wielkosc'].'
  13. </td>
  14. </tr>';
  15. }
  16. }
  17. else{
  18.  <div>Pusty koszyk...</div>
  19. }
  20. ?>


no i powyskakiwały mi błędy nie bardzo wiem jak to zrobić patrzałem w manualu o if i foreach ale nie widziałem nic a może wg źlę to robie questionmark.gif pozdrawiam
Cysiaczek
Zrób sprawdzenie tak:

  1. <?php
  2. if(count($_SESSION['koszyk']) > 0)
  3. {
  4. //twój skrypt
  5.  
  6. }
  7. ?>


Czyli, jeśli nie tablica jest pusta, bo nic sie nie wyświetli.

Pozdrawiam.
josef871
Cytat
a moimi próbami bylo to tongue.gif

Kod PHP
  1. <?php
  2. if (foreach($_SESSION['koszyk'] as $jedzenie => $wartosc)){
  3. foreach ($wartosc as $cecha){
  4. echo '<tr>
  5.  <td style="border : 1px solid white; text-align : center;">
  6. '.$cecha['nazwa'].'
  7. </td>
  8.  <td style="border : 1px solid white; text-align : center;">
  9. '.$cecha['ilosc'].'
  10. </td>
  11. <td style="border : 1px solid white; text-align : center;">
  12.  '.$cecha['wielkosc'].'
  13. </td>
  14. </tr>';
  15. }
  16. }
  17. else{
  18.  <div>Pusty koszyk...</div>
  19. }
  20. ?>



no i powyskakiwały mi błędy nie bardzo wiem jak to zrobić patrzałem w manualu o if i foreach ale nie widziałem nic a może wg źlę to robie questionmark.gif pozdrawiam


tam gdzie napisałeś else{... brakuje echo przy div
FliSs_tCv
tak wiem że brakowało echo ale w skrypcie je mam smile.gif i wyskakuję mi błąd sad.gif


Cysiaczek chyba nie rozumiem a jak wstawiłem to do swojego kodu tak
  1. <?php
  2. if(count($_SESSION['koszyk']) > 0){
  3. foreach($_SESSION['koszyk'] as $jedzenie => $wartosc){
  4. foreach ($wartosc as $cecha){
  5. echo '<tr>
  6.  <td style="border : 1px solid white; text-align : center;">
  7. '.$cecha['nazwa'].'
  8. </td>
  9.  <td style="border : 1px solid white; text-align : center;">
  10. '.$cecha['ilosc'].'
  11. </td>
  12. <td style="border : 1px solid white; text-align : center;">
  13.  '.$cecha['wielkosc'].'
  14. </td>
  15. </tr>';
  16. }
  17. }
  18. }
  19. else{
  20. echo'Pusty koszyk...';
  21.  }
  22. ?>


to nic nie pokazuje chyba nie rozumiem :(mógłbyś jaśniej ?
krzysiekk
moze lepiej tak
  1. <?php
  2. if(!empty($_SESSION['koszyk'])){
  3. print 'ok';}
  4. else{print'no';}
  5. ?>
FliSs_tCv
  1. <?php
  2. if(!empty($_SESSION['koszyk'])){
  3.  foreach($_SESSION['koszyk'] as $jedzenie => $wartosc){
  4. foreach ($wartosc as $cecha){
  5. echo '<tr>
  6.  <td style="border : 1px solid white; text-align : center;">
  7.  '.$cecha['nazwa'].'
  8.  </td>
  9.  <td style="border : 1px solid white; text-align : center;">
  10.  '.$cecha['ilosc'].'
  11.  </td>
  12.  <td style="border : 1px solid white; text-align : center;">
  13.  '.$cecha['wielkosc'].'
  14.  </td>
  15. </tr>';
  16. }
  17.  }
  18. }
  19. else{
  20. echo'Pusty koszyk...';
  21. }
  22. ?>


i nadal nie ma czegoś takiego jak pusty koszyk sad.gif
Cysiaczek
Jaśniej już nie można.
Jeśli liczba elementów $_SESSION['koszyk'] jest wieksz od zero, to znaczym ze w koszyku sa produkty, tak?
Jeśli jest równa 0, to znaczy, że ich nie ma i wyświetlamy komunikat "pusty koszyk". Zakładam oczywiście, że jest to tablica, bo potem djesz ją do foreacha().
Może zrób też wiersze i komótki przy tym komiunikacie o pustym koszyku? Teraz to masz potworka
  1. Pusty koszyk


To może faktycznie nic nie wyświetlić.
FliSs_tCv
to rozumiem ze 0 to 0 a jak jest produkt jest wiecej niż 0 i nie pokazuje pustego koszyka ale gdzie robie błąd skoro zrobiłem jak kazaliście ;> bo nie pokazuje pustego koszyka


------ EDIT ---------

Dane są przesyłane z session i post ;> A co do twojego potworka to pokazałem Tobie część skryptu dlatego nie widzisz <table> pozdr
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.