Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Undefined variable, błąd przy przejściu z krasnala na xampp
leonard
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 9.04.2012

Ostrzeżenie: (0%)
-----


Witam,

kończę robić prosty sklep w PHP i SQL, ostatnio przeskoczyłem na win 7 64 bit i krasnal na którym dotychczas pracowałem nie zainstaluje się, po instalacji XAMPP pojawiły się ostrzeżenia:

Notice: Undefined variable: total in C:\xampp\htdocs\dp2\cart.php on line 71 (niby nie jest to błąd ale trochę wkurzające i chyba nie powinno tak być)

Podaję kod:

  1. function cart() {
  2.  
  3. foreach($_SESSION as $name => $value) {
  4. if ($value>0) {
  5. if (substr($name, 0, 5)=='cart_') {
  6. $id = substr($name, 5, (strlen($name)-5));
  7. $get = mysql_query('SELECT id, name, price FROM wizytowki WHERE id='.mysql_real_escape_string((int)$id));
  8. while ($get_row = mysql_fetch_assoc($get)) {
  9. $sub = $get_row['price']*$value;
  10. echo $get_row['name'].' x '.$value.' kpl <br> '.number_format($sub, 2).'zł netto <a href="cart.php?remove='.$id.'">[-]</a><a href="cart.php?add='.$id.'">[+]</a><a href="cart.php?delete='.$id.'">Delete</a><br /><br>';
  11. }
  12. }
  13.  
  14. $total += $sub; // TU zgłasza błąd !!!!
  15. }
  16. }
  17. //if (isset ($total==0)) {
  18. if($total==0) {
  19. echo "Twój koszyk jest jeszcze pusty";
  20. }
  21. else {
  22. echo '<h6>Suma: '.number_format($total, 2).' zł netto</h6>';
  23. echo '<p>
  24. <center><a href="zamowienie.php"><button><img src="zamow.png" width="130" height="30" alt="Kliknij tutaj"/></button></a></center>
  25. </p>';
  26. }
  27. }
  28. ?>
  29.  
  30. <?php


Trochę raczkuję w PHP jestem totalnym samoukiem i w niektórych miejscach może brakować mi podstaw ale może ktoś wie co jest nie tak, szukałem na necie ale to co znalazłem dalej generuje błędy albo po zastosowaniu:
$total = empty($sub)? '0' : $sub;
zmienna total źle liczy (sumuje tylko jedną pozycję z SQL, ale błąd znika)

BTW: na krasnalu nie było żadnych błędów




Go to the top of the page
+Quote Post
markonix
post
Post #2





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Na krasnalu nie było bo miałeś je wyłączone.
Daj przed pętlą
  1. $total = 0;


Ten post edytował markonix 9.04.2012, 19:11:32


--------------------
Go to the top of the page
+Quote Post
leonard
post
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 9.04.2012

Ostrzeżenie: (0%)
-----


no właśnie niby wszystko ok ale zmienna total przestaje liczyć prawidłowo (nie sumuje wszystkiego z SQL tylko jedną pozycję)
wyzerować total w innym miejscu?

  1. function cart() {
  2.  
  3. foreach($_SESSION as $name => $value) {
  4. if ($value>0) {
  5. if (substr($name, 0, 5)=='cart_') {
  6. $id = substr($name, 5, (strlen($name)-5));
  7. $get = mysql_query('SELECT id, name, price FROM wizytowki WHERE id='.mysql_real_escape_string((int)$id));
  8. while ($get_row = mysql_fetch_assoc($get)) {
  9. $sub = $get_row['price']*$value;
  10. echo $get_row['name'].' x '.$value.' kpl <br> '.number_format($sub, 2).'zł netto <a href="cart.php?remove='.$id.'">[-]</a><a href="cart.php?add='.$id.'">[+]</a><a href="cart.php?delete='.$id.'">Delete</a><br /><br>';
  11. }
  12. }
  13.  
  14. $total = 0;
  15. $total += $sub;
  16. }
  17. }
  18. if($total==0) {
  19. echo "Twój koszyk jest jeszcze pusty";
  20. }
  21. else {
  22. echo '<h6>Suma: '.number_format($total, 2).' zł netto</h6>';
  23. echo '<p>
  24. <center><a href="zamowienie.php"><button><img src="zamow.png" width="130" height="30" alt="Kliknij tutaj"/></button></a></center>
  25. </p>';
  26. }
  27. }
  28. ?>
Go to the top of the page
+Quote Post
markonix
post
Post #4





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Przeczytaj proszę jeszcze raz co napisałem o umiejscowieniu tej deklaracji.


--------------------
Go to the top of the page
+Quote Post
leonard
post
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 9.04.2012

Ostrzeżenie: (0%)
-----


Wszystko działa pięknie, dzięki wielkie
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 23:33