Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] coś nie tak z formularzem sklepu internetowego
-jowice-
post 26.04.2011, 19:14:53
Post #1





Goście







mam problem z tym formularzem- po otworzeniu strony wyświetla się: Notice: Undefined index: imie on line 29
Notice: Undefined index: nazwisko on line 29
Notice: Undefined index: adres on line 29
Notice: Undefined variable: POST on line 29
Notice: Undefined variable: imie_filtr on line 51
Notice: Undefined variable: nazwisko_filtr on line 51
Notice: Undefined variable: adres_filtr on line 51
Notice: Undefined variable: email_filtr on line 51
Pisałam już tu jakoś wczoraj (przedwczoraj?) ale mój temat został zmaknięty- widocznie moderator źle mnie zrozumiał (albo ja się źle wyraziłam). Naprawdę chce się czegoś nauczyć i nie chce żeby ktoś za mnie odwalił całą robotę. Spędziłam nad tym formularzem duuużo czasu, przeczytałam duuużo rzeczy i starałam się cos z tym zrobić, ale dla kogoś kto nie ma do czynienia z informatyką pewne rzeczy są po prostu niewidoczne. Dlatego bardzo proszę choć o niewielką wskazówkę

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
  2. <html lang="pl">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  5. <title>Niesamowity sklep</title>
  6. </head>
  7. <body>
  8. <?php
  9. function formularz($imie = "", $nazwisko = "", $adres = "", $email = ""){
  10. ?>
  11.  
  12. <form action="formularz.php" method="POST">
  13. <div>
  14. Imię:<br />
  15. <input name="imie" value="<?= $imie; ?>"/><br />
  16. Nazwisko:<br />
  17. <input name="nazwisko" value="<?= $nazwisko; ?>"/><br />
  18. Adres:<br />
  19. <input name="adres" value="<?= $adres; ?>"/><br />
  20. Adres email:<br />
  21. <input name="email" value="<?= $email; ?>"/><br />
  22. <input type="submit" name="submit" value="Wyślij" />
  23. </div>
  24. </form>
  25.  
  26. <?php
  27. }
  28. if (empty($_POST['imie']) || empty($_POST['nazwisko']) || empty($_POST['adres']) || empty($_POST['email'])) {
  29. formularz($_POST['imie'], $_POST['nazwisko'], $_POST['adres'], $POST['email']);
  30. echo "<p>Należy wypełnić wszystkie pola formularza!</p>";
  31. }
  32. else {
  33. formularz($_POST['imie'], $_POST['nazwisko'], $_POST['adres'], $_POST['email']);
  34. $imie_filtr = addslashes(trim($_POST['imie']));
  35. $nazwisko_filtr = addslashes(trim($_POST['nazwisko']));
  36. $adres_filtr = addslashes(trim($_POST['adres']));
  37. $email_filtr = addslashes(trim($_POST['email']));
  38. }
  39.  
  40.  
  41. $link = mysql_connect('bbbbb','xxxx','aaaaa');
  42.  
  43. if(!$link)
  44. {
  45. die('Could not connect: ' .mysql_error());
  46. }
  47. else
  48. {
  49. mysql_select_db('xxxx');
  50.  
  51. $zapytanie = "INSERT INTO KLIENT VALUES ('', '$imie_filtr', '$nazwisko_filtr', '$adres_filtr', '$email_filtr')";
  52. $rezultat = mysql_query($zapytanie);
  53.  
  54. if (!$rezultat){
  55. echo 'invalid query';
  56. }
  57. else
  58. echo "Dane zostały wprowadzone";
  59.  
  60. mysql_close($link);
  61. }
  62.  
  63. ?>
  64.  
  65. </body>
  66.  
  67. </html>
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
Armstrong
post 26.04.2011, 19:30:20
Post #2





Grupa: Zarejestrowani
Postów: 200
Pomógł: 40
Dołączył: 26.08.2009
Skąd: Kobiernice

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


Forum NIE parser, a notice można zignorować. Wyłącz wyświetlanie notice. error_reporting


--------------------
// NOPE
Go to the top of the page
+Quote Post
nospor
post 26.04.2011, 19:34:13
Post #3





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Ałć..... jowice nie słuchaj się Armstronga bo źle na tym wyjdziesz.
Co do błędów: to chyba jasno napisane jest co masz źle i w której linii.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Armstrong
post 26.04.2011, 19:38:24
Post #4





Grupa: Zarejestrowani
Postów: 200
Pomógł: 40
Dołączył: 26.08.2009
Skąd: Kobiernice

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


@nospor może i wyjdzie na tym źle, ale skoro nie wie takiej prostej rzeczy (co to notice) to po co się w to zagłębiać. wink.gif


--------------------
// NOPE
Go to the top of the page
+Quote Post
nospor
post 26.04.2011, 19:41:46
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Bo mu krzywdę robisz na przyszłość. Jak masz zamiar tak "pomagać" to weź i nie pomagaj wcale i poprostu zignoruj temat.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Mackos
post 26.04.2011, 19:42:45
Post #6





Grupa: Zarejestrowani
Postów: 362
Pomógł: 44
Dołączył: 10.06.2009

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


Cytat
@nospor może i wyjdzie na tym źle, ale skoro nie wie takiej prostej rzeczy (co to notice) to po co się w to zagłębiać.

Żeby na przyszłość wiedziała i później nie robiła badziewia a konkretne rzeczy closedeyes.gif

Ten post edytował Mackos 26.04.2011, 19:44:03


--------------------
WebLemon.pl - projektowanie stron www, reklama i PR w internecie - Adwords, Facebook.
Go to the top of the page
+Quote Post
-jowice-
post 26.04.2011, 19:47:41
Post #7





Goście







No właśnie wiem gdzie jest źle i teoretycznie co jest źle, ale problem w tym że jak dla mnie wszystko jest dobrze.

No nie wiem co to jest Notice- to prawda, ale wszechwiedzący internet (biorąc pod uwagę ustrój demokratyczny) mówi mi "wyłącz to". Co mi w sumie nic nie mówi, bo wierze wam że to zły pomysł, ale przynajmniej się pocieszyłam- nie tylko ja jestem ignorantką/idiotąwink.gif.

Ale byłabym bardzo wdzięczna gdyby ktoś mi pomógł w każdym razie;)
Go to the top of the page
+Quote Post
Armstrong
post 26.04.2011, 19:49:41
Post #8





Grupa: Zarejestrowani
Postów: 200
Pomógł: 40
Dołączył: 26.08.2009
Skąd: Kobiernice

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


Oznacza iż zmienna nie istnieje, przed użyciem zmiennej sprawdź czy istnieje, co zawiera etc..

Ten post edytował Armstrong 26.04.2011, 19:49:51


--------------------
// NOPE
Go to the top of the page
+Quote Post
nospor
post 26.04.2011, 19:53:47
Post #9





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




@Mackos Jakiś ty się nagle mądry zrobił... tongue.gif Weź się lepiej za studiowanie manuala i używanie mózgu, bo takie bezmyślne posty piszesz w innym temacie że ja już wnim odpowiadać nie będę. smile.gif (mam nadzieję, że się za tę wzmiankę nie obrazisz a weźmiesz trochę za myślenie bo przy czterolinijkowym kodzie naprawdę mógłyś trochę wysilić szare komórki)

@jowice Twoja szczerość mnie rozbroiła biggrin.gif
Notice: Undefined index: nazwisko on line 29
Dobierasz się do nieokreślonego indeksu o nazwie "nazwisko". Linia 29 to:
formularz($_POST['imie'], $_POST['nazwisko'], $_POST['adres'], $POST['email']);
Wieć chodzi konkretnie o to: $_POST['nazwisko']
Zanim do czegoś się dobierzesz sprawdź czy to istnieje.
Analogicznie inne podobne błędy

Notice: Undefined variable: imie_filtr on line 51
Niezdefiniowana zmienna $imie_filtr
Linia 51 to to:
$zapytanie = "INSERT INTO KLIENT VALUES ('', '$imie_filtr', '$nazwisko_filtr', '$adres_filtr', '$email_filtr')";
Wkładasz do zapytania zmienną, która nie jest zdefioniowana. Czy tak można? Czy można taki błąd poprostu nie wyświetlać? No nie. Więc się nie słuchaj ludzi, którzy ci mówią inaczej i poprawiaj takie błędy smile.gif
Powód edycji: [nospor]:


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Mackos
post 26.04.2011, 20:03:32
Post #10





Grupa: Zarejestrowani
Postów: 362
Pomógł: 44
Dołączył: 10.06.2009

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


Nospor, możesz mi wierzyć lub nie ale stronię od wypytywania o wszystko na forum. Ale jak przy czymś grzebie i nie daje rady to pytam. W końcu chyba o to chodzi wink.gif
A zrobiłem się `mądry` bo jestem w identycznej sytuacji jak koleżanka jowice -> Nie wiem, i szukam pomocy w danej kwestii. Więc też nie akceptuje wypowiedzi żeby odwalić byle co.


--------------------
WebLemon.pl - projektowanie stron www, reklama i PR w internecie - Adwords, Facebook.
Go to the top of the page
+Quote Post
-jowice-
post 26.04.2011, 20:04:51
Post #11





Goście







Dobra- mam nadzieję, że tym razem moja szczerość też Cię rozbroi a nie zirytuje;D. Bo jak dla mnie te zmienne są zdefiniowane:). Próbowałam iść tym tropem- imie, nazwisko i adres są niezdefiniowane, ale email jest już zdefiniowany (chyba że to, że nie wyświetla mi takiego błędu wcale tego nie oznacza) i szczerze mówiąc nie widzę różnicy- wszystkie wyglądają tak samo.

Ale przynajmniej jestem bogatsza o wiedzę, że moj angielski jest wystarczający żeby zrozumieć komunikaty o błędach;D
Go to the top of the page
+Quote Post
nospor
post 26.04.2011, 20:21:54
Post #12





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Ok, postępy smile.gif
Mówisz, że masz te zmienne zdefiniowane? Tak, na pewno? A spójrz gdzie ty je definiujesz. Ty je definiujesz w bloku ELSE czyli definiujesz je warunkowo, gdy (nie)zostanie spełniony jakiś warunek. Rozumiesz?

Jeśli zaś mówiłaś o indeksach w tablicy $_POST to przed wysłaniem formularza (czyli de facto odpalenie strony) zadna wartośc w $_POST nie jest określona gdyż $_POST pojawia się dopiero po wysłaniu formularza. Wieć $_POST['cośtam'] powinnaś robić dopiero po wysłaniu forma, gdy te cośtam tam jest


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
-jowice-
post 26.04.2011, 20:25:00
Post #13





Goście







No rzeczywiście mogę nie mieć ich zdefiniowanych (ale teraz zaczynam rozumieć dlaczego niektórzy wyłączają informowanie o błędach- choć ja chyba jednak wolę o nich wiedziećwink.gif
Czyli mam napisać coś w rodzaju:

if(isset($_POST['imie']){
$imie = $_POST['imie'];
.
.
.
.
}

Pewnie nie, bo tak w sumie to to nie działa. Poza tym jakoś za długo by to zajęło miejsca jak dla informatyków:)
Go to the top of the page
+Quote Post
nospor
post 26.04.2011, 20:28:40
Post #14





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
No rzeczywiście mogę nie mieć ich zdefiniowanych (ale teraz zaczynam rozumieć dlaczego niektórzy wyłączają informowanie o błędach- choć ja chyba jednak wolę o nich wiedzieć
To masz jeszcze lekturę do poduszki:
http://nospor.pl/notice-wyswietlac-czy-nie.html

Cytat
if(isset($_POST['imie']){
$imie = $_POST['imie'];
.
.
.
.
}

$imie = isset($_POST['imie']) ? $_POST['imie'] : '';
smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
-jowice-
post 26.04.2011, 20:29:10
Post #15





Goście







Albo raczej przed wszystkim napisać if(isset($imie)) i tak z każdą zmienną...
Go to the top of the page
+Quote Post
-jowice-
post 26.04.2011, 20:32:01
Post #16





Goście







Dziękuję Ci- jesteś niesamowity!:)
Go to the top of the page
+Quote Post
modern-web
post 26.04.2011, 20:43:40
Post #17





Grupa: Zarejestrowani
Postów: 763
Pomógł: 117
Dołączył: 15.03.2010
Skąd: void

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


nospor - nie zarywaj ;d


--------------------
Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
Go to the top of the page
+Quote Post
nospor
post 26.04.2011, 20:45:15
Post #18





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




tongue.gif

A co, zazdrościsz że na mnie kobitki lecą wink.gif

@jowice call me, 0-700-GORACY-PUCHATEK wink.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
modern-web
post 26.04.2011, 20:50:14
Post #19





Grupa: Zarejestrowani
Postów: 763
Pomógł: 117
Dołączył: 15.03.2010
Skąd: void

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


yep! (nie powiem, że nie bo mi warna wlepisz biggrin.gif)
a i... czekaj; już dzwonię ^^

Edit:
cholera; linia zajęta ;|

Ten post edytował modern-web 26.04.2011, 20:50:51


--------------------
Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
Go to the top of the page
+Quote Post
-jowice-
post 26.04.2011, 21:23:01
Post #20





Goście







Kurcze- też dzwoniłam i też było zajęte!:D

Mogłam udawać mądrzejsząsad.gifbiggrin.gif
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 02:07