Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]Undefined variable[/php]
Maciejo_5
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 10.03.2010

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


Witam, od wczoraj zacząłem bawić się php, zainstalowałem sobie wampa na windowsie, a na ubuntu zainstalowałem apache + php + mysql z phpmyadmin. Następnie znalazłem książkę i z niej się uczę. Podany przykład w kodzie html:
  1. <html>
  2. <head>
  3. </head>
  4. <body>
  5. <?php
  6. //utworz krotkie nazwy zmiennych
  7. $iloscopon = $_POST['iloscopon'];
  8. $iloscoleju = $_POST['iloscoleju'];
  9. $iloscswiec = $_POST['iloscswiec'];
  10. ?>
  11. <form action="action.php" method=post>
  12. <table border=0>
  13. <tr bgcolor=#cccccc>
  14. <td width="150">Produkt</td>
  15. <td width="15">Ilosc</td>
  16. </tr>
  17. <tr>
  18. <td>Opony</td>
  19. <td align="center"><input type="text" name="iloscopon" size="3" maxlenght="3"></td>
  20. </tr>
  21. <td>Oleje</td>
  22. <td align="center"><input type="text" name="iloscoleju" size="3" maxlenght="3"></td>
  23. </tr>
  24. <td>Swiece zaplonowe</td>
  25. <td align="center"><input type="text" name="iloscswiec" size="3" maxlenght="3"></td>
  26. </tr>
  27. <td colspan="2" align="center"><input type="submit" value="Zloz zamowienie"></td>
  28. </tr>
  29. </table>
  30. </form>
  31. </body>
  32. </html>


następnie kod z action.php

  1. <html>
  2. <head>
  3. <title>Czesci samochodowe Janka - wyniki zamowienia</title>
  4. </head>
  5. <body>
  6. <h1> Czesci samochodowe Janka</h1>
  7. <h2> Wyniki zamowienia</h2>
  8. <?php
  9. echo "<p>Zamowienie przyjete.</p>";
  10. echo '<p>Zamowienie Panstwa wyglada nastepujaco: </p>';
  11. echo $iloscopon.'opopn<br />';
  12. echo $iloscoleju.'butelek oleju<br />';
  13. echo $iloscswiec.'swiec zaplonowych<br />';
  14. ?>
  15. </body>
  16. </html>

na stronie wyskakuje komunikat:Notice: Undefined variable: iloscopon in D:\wamp\www\stronki\action.php on line 11
opopn.
Rozumiem że nie zdefiniowałem zmiennej z tym, że nigdzie nie ma w książce opisane jak to zrobić(IMG:style_emoticons/default/smile.gif) pozdrawiam i dzięki z góry za pomoc.
ps. przepraszam jak coś źle umieściłem w znacznikach nie wiem czy umieszczać kod html w znacznikach html jeśli chodzi mi o php głównie.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
-L300-
post
Post #2





Goście







[webdice]

W związku z tym, że miałem podobny problem z błędem indeksu NOTICE, który pojawił się gdy przepisałem kod z książki (raczej broszurki)

Komputer Świat Ekspert
Biblioteczka
Programowanie Krok Po Kroku
KURS PHP 02/2011.

Autor chyba miał wyłączone raportowanie błędów bo w jego przykładach (zrzutach obrazu w książce) nie widać błędu skryptu a u mnie tak.
Sporo się głowiłem dlaczego mam z tym problem a on nie i teraz mam wyjaśnienie.


Dodam dla przykładu jak w oryginale napisany jest przykład:
  1. <?php
  2. /*
  3. Listing 3.3. Przekazywanie danych do skryptu za pomocą formularza
  4. */
  5. ?>
  6. <form method="post" action="index.php">
  7. Nazwa wydawnictwa: <br />
  8. <input type="text" name="nazwa" />
  9. <br />
  10. <input type="submit" value="Przekaż do skryptu" />
  11. </form>
  12. <?php
  13. echo 'Nazwa wydawnictwa: '.$_POST['nazwa'];
  14. ?>


i w przeglądarce pojawiał się błąd
Notice: Undefined index: nazwa in C:\nauka\PHP\nr02\index.php on line 13

Poprawiłem wg Twojej rady na:
  1. <form method="post" action="index.php">
  2. Nazwa wydawnictwa:<br />
  3. <input type="text" name="nazwa" />
  4. <br />
  5. <input type="submit" value="Przekaż do skryptu" />
  6. </form>
  7. <?php
  8. if (isset($_POST['nazwa']))
  9. {
  10. echo 'Nazwa wydawnictwa: ' . $_POST['nazwa'];
  11. }
  12. ?>


Teraz to działa bombowo. Mogę przejść do dalszej nauki.

Dziękuję i pozdrawiam
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 10.10.2025 - 06:00