Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySql] Dodawanie rekordów do bazy przez formularz
leewang
post
Post #1





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 19.11.2009
Skąd: Chrzanów / Kraków

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


Witam

Przejdę od razu do kodu:

  1. function nowa($nazwa)
  2. {
  3. print(iso("<form method=post action='admin.php?action=dodajkat'><center><table>
  4. <tr><td><div class=text>Nazwa:</td><td><input type=text size=20 name=nazwa></td></tr>
  5. <tr><td></td><td align=right>
  6. <input type=reset value=Wyczyść>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  7. <input type=submit value=Zapisz></td></tr>
  8. <tr><td colspan=2><br><center>
  9. <a href=admin.php?action=glowna>Powrót</a></td></tr></table></form>"));
  10. }
  11.  
  12. $nazwa = $_POST['nazwa'];
  13.  
  14. if($nazwa=='')
  15. nowa($nazwa);
  16. else
  17. {
  18. mysql_query("insert into kategorie (nazwa) values ('$nazwa');") or die(mysql_error());
  19. print(iso("<center><table>
  20. <tr><td><div class=text>Dodano kategorie o nazwie:</td><td><div class=text>$nazwa</td></tr>
  21. <tr><td colspan=2><br><center><a href=admin.php?action=glowna>Powrót</a>
  22. </td></tr></table>"));
  23. }
  24. }
  25. break;


Wpis dodaje się poprawnie, ale za każdym razem na stronie, nad formularzem wyskakuje błąd:

W 12 linii kodu: Undefined index: nazwa chodzi o tą nazwę $_POST['nazwa']; .

Jak usunę ten wpis z 12 linii to wtedy wyskakuje komunikat że nie ma zadeklarowanej zmiennej z 14 linii kodu.

Wychodzi na to że zmienna nazwa jest zadeklarowana w funkcji i poza funkcją nie jest już rozpoznawana. Może da się ją jakoś przenieść na zewnątrz? Zrobić z niej zmienną globalną? albo zmienną chociaż w tym casie (bo cała funkcja dodawania jest w casie)

Jak temu zaradzić? Ktoś ma pomysł?
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: 23.09.2025 - 15:31