Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

3 Stron V   1 2 3 >  
Reply to this topicStart new topic
> [php]sklep?, tylko dla profesjonalistow ^^
gigzorr
post 25.02.2010, 13:10:13
Post #1





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


  1. <?php
  2.  
  3. if (!$podstawaszukania || !$haslo)
  4.  
  5. {
  6. echo "Nie zostalo wpisane żadne hasło do wyszukiwarki";
  7. }
  8.  
  9.  
  10. $podstawaszukania = addslashes($podstawaszukania);
  11. $haslo= addslashes($haslo);
  12. @ $db = mysql_pconnect("localhost", "root", "krasnal");
  13. if (!$db)
  14. {
  15. echo "Wystąpił błąd w połączeniu";
  16. }
  17.  
  18. mysql_select_db("sklep");
  19.  
  20. $query = "select * from produkty where ".$podstawaszukania." like '%".$haslo. "%'";
  21. $result = mysql_query($query);
  22. $num_results = mysql_num_rows($result);
  23.  
  24. echo "<p>Ilość znalezionych produktów: ".$num_results."</p>";
  25.  
  26. for ($i=0; $i <$num_results; $i++) {
  27.  
  28. $row = mysql_fetch_array($result);
  29. echo ($i+1).". ";
  30. echo stripslashes($row["nazwaproduktu"]);
  31. echo ", cena: ";
  32. echo stripslashes($row["cena"]);
  33. echo "zł, numer produktu:";
  34. echo stripslashes($row["nrproduktu"]);
  35. echo "<br>";
  36. }
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45. ?>


Problem jest w tym, że WPISAŁEM hasło do wyszukiwarki ale cały czas dostaje odpowiedź:
"Nie zostalo wpisane żadne hasło do wyszukiwarki".

Jestem lamer w tym narazie.Tyle co wiem to to , że początek skryptu/kodu za to odpowiada.
Jakaś podpowiedź?
dzięki za wszystkie porady

Ten post edytował gigzorr 25.02.2010, 13:11:59
Go to the top of the page
+Quote Post
nospor
post 25.02.2010, 13:15:35
Post #2





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




zapewne chodzi o register_globals
http://nospor.pl/php-faq-n29.html#faq-3


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

"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
gigzorr
post 25.02.2010, 13:22:15
Post #3





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


Cytat(nospor @ 25.02.2010, 13:15:35 ) *
zapewne chodzi o register_globals
http://nospor.pl/php-faq-n29.html#faq-3





Tyle , że ja to na localu testuje , krasnala 2.7 używam.
Go to the top of the page
+Quote Post
nospor
post 25.02.2010, 13:34:42
Post #4





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




rety.... tytul tego helpa to tylko przyklad... ludzie czesto mieli problem z przejsciem z lokala na serwer bo byla inna konfiguracja.
Ale chodzi o to, ze register_globals moze byc tez wyłączone i na lokalu - wszystko zalezy od konfiguracji. Zrob wiec co tam jest napisane a nie sie wydurniasz... 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
gigzorr
post 25.02.2010, 14:05:56
Post #5





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


Cytat(nospor @ 25.02.2010, 13:34:42 ) *
rety.... tytul tego helpa to tylko przyklad... ludzie czesto mieli problem z przejsciem z lokala na serwer bo byla inna konfiguracja.
Ale chodzi o to, ze register_globals moze byc tez wyłączone i na lokalu - wszystko zalezy od konfiguracji. Zrob wiec co tam jest napisane a nie sie wydurniasz... smile.gif



czytam to setny raz i dalej nic sciana.gif
Go to the top of the page
+Quote Post
nospor
post 25.02.2010, 14:07:57
Post #6





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




nie: $haslo
a : $_POST['haslo']
lub: $_GET['haslo']
w zaleznosci skad idą ci te zmienne.
Analogicznie reszta danych pobieranych z forma.


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

"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
kielich
post 25.02.2010, 14:15:37
Post #7





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


NO jak ty ten IF sformułowałeś ....sad.gif


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
gigzorr
post 25.02.2010, 14:17:03
Post #8





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


Cytat(nospor @ 25.02.2010, 14:07:57 ) *
nie: $haslo
a : $_POST['haslo']
lub: $_GET['haslo']
w zaleznosci skad idą ci te zmienne.
Analogicznie reszta danych pobieranych z forma.


  1. if (!$podstawaszukania || $_POST['haslo'])


tylko tu wystarczylo zmienić?teraz po wpisaniu byle czego , to wyświetlają się wszystkie produkty?hm
Go to the top of the page
+Quote Post
phpion
post 25.02.2010, 14:18:23
Post #9





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Na początku skryptu daj sobie:
  1. extract($_GET);
  2. extract($_POST);

i powinno śmigać bez dalszych modyfikacji.
Go to the top of the page
+Quote Post
nospor
post 25.02.2010, 14:19:46
Post #10





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




o zgrozo... a gdzie jeszcze korzystasz ze zmiennej $haslo? Myslisz ze wszedzie indziej ona nagle sie wypelnila magicznie sama?

@phpion nie ucz go zlych nawyków...


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

"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
gigzorr
post 25.02.2010, 14:22:24
Post #11





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


Cytat(nospor @ 25.02.2010, 14:19:46 ) *
o zgrozo... a gdzie jeszcze korzystasz ze zmiennej $haslo? Myslisz ze wszedzie indziej ona nagle sie wypelnila magicznie sama?

@phpion nie ucz go zlych nawyków...



nospor , dodalem gdzie trzeba , ale teraz to co napisałem wcześniej , wpisze byle co , wyświetla wszystkie produkty


@phpion to też nie pomaga
Go to the top of the page
+Quote Post
phpion
post 25.02.2010, 14:24:50
Post #12





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(nospor @ 25.02.2010, 14:19:46 ) *
@phpion nie ucz go zlych nawyków...

Zaglądałem tutaj kilka razy. Widać, że kolega ma problemy z ogarnięciem o co chodzi więc stwierdziłem, że na razie zadowoli się moim rozwiązaniem. Wklepie 2 linijki i zadziała, a o to mu w tej chwili chodzi. Nie masz przecież pewności, że gdzieś dalej się nie posypie, a wyszukiwanie wszystkich zmiennych w X plikach będzie raczej męczące winksmiley.jpg Ja bym walnął extracty i święty spokój. Nie popadajmy w paranoję: równie dobrze możnaby odzwyczajać od złych nawyków zwracając uwagę chociażby na podatność na SQL Injection.

Cytat(gigzorr @ 25.02.2010, 14:22:24 ) *
@phpion to też nie pomaga

Wklej cały kod.

Ten post edytował phpion 25.02.2010, 14:26:04
Go to the top of the page
+Quote Post
nospor
post 25.02.2010, 14:24:54
Post #13





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




Cytat
dodalem gdzie trzeba
w poprzednim poscie napisales ze dodales tylko w jednym miejscu, wiec nie pisz ze dodales gdzie trzeba.
pokaz ponownie kod po twoich przerobkach


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

"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
gigzorr
post 25.02.2010, 14:28:54
Post #14





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


  1. <?php
  2. extract($_GET);
  3. extract($_POST);
  4.  
  5. if (!$podstawaszukania || $_POST['haslo'])
  6.  
  7. {
  8. echo "Nie zostalo wpisane żadne hasło do wyszukiwarki";
  9. }
  10.  
  11. $podstawaszukania = addslashes($podstawaszukania);
  12. $_POST['haslo'] = addslashes($haslo);
  13. @ $db = mysql_pconnect("localhost", "root", "krasnal");
  14. if (!$db)
  15. {
  16. echo "Wystąpił błąd w połączeniu";
  17. }
  18.  
  19. mysql_select_db("sklep");
  20.  
  21. $query = "select * from produkty where ".$podstawaszukania." like '%".$haslo. "%'";
  22. $result = mysql_query($query);
  23. $num_results = mysql_num_rows($result);
  24.  
  25. echo "<p>Ilość znalezionych produktów: ".$num_results."</p>";
  26.  
  27. for ($i=0; $i <$num_results; $i++)
  28. {
  29.  
  30. $row = mysql_fetch_array($result);
  31. echo ($i+1).". ";
  32. echo stripslashes($row["nazwaproduktu"]);
  33. echo ", cena: ";
  34. echo stripslashes($row["cena"]);
  35. echo "zł, numer produktu:";
  36. echo stripslashes($row["nrproduktu"]);
  37. echo "<br>";
  38. }
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47. ?>

jak są extracty to chyba nie musze dodawać wszędzie tego $_POST lub $_GET, więc powinno działać tak?jak sie myle to poprawcie, i co to są te extracty
Go to the top of the page
+Quote Post
phpion
post 25.02.2010, 14:30:17
Post #15





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




  1. $_POST['haslo'] = addslashes($haslo);

Chyba odwrotnie:
  1. $haslo = addslashes($_POST['haslo']);
Go to the top of the page
+Quote Post
nospor
post 25.02.2010, 14:31:04
Post #16





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




$_POST['haslo'] = addslashes($haslo);
like '%".$haslo. "%'";

nadal twierdzisz ze wszedzie ddodales?

weź zapomnij o tym $_POST. zrob na samym poczatku

$haslo = $_POST['haslo'];
i korzystaj z haslo jak do tej pory.

A co to jest EXTRACT to masz opisane ze szczegolami w manualu


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

"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
gigzorr
post 25.02.2010, 14:41:40
Post #17





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


Cytat(nospor @ 25.02.2010, 14:31:04 ) *
$_POST['haslo'] = addslashes($haslo);
like '%".$haslo. "%'";

nadal twierdzisz ze wszedzie ddodales?

weź zapomnij o tym $_POST. zrob na samym poczatku

$haslo = $_POST['haslo'];
i korzystaj z haslo jak do tej pory.

A co to jest EXTRACT to masz opisane ze szczegolami w manualu


pierw dodałem to $haslo = $_POST['haslo'];

na samym początku tam przy if po prawo za || ale nic sie nie zmieniło więc dodałem
$podstawaszukania = addslashes($podstawaszukania);
$haslo = $_POST['haslo']; tutaj

ale dalej to samo

Możecie się pośmiać ale dopiero pare h nad php siedze.

Ten post edytował gigzorr 25.02.2010, 14:44:30
Go to the top of the page
+Quote Post
nospor
post 25.02.2010, 14:48:17
Post #18





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




Uwierz, mi napewno nie jest do smiechu.

  1. $haslo = $_POST['haslo'];
  2.  
  3. if (!$podstawaszukania || !$haslo)
  4.  
  5. {
  6. echo "Nie zostalo wpisane żadne hasło do wyszukiwarki";
  7. }
  8.  
  9.  
  10. $podstawaszukania = addslashes($podstawaszukania);
  11. $haslo= addslashes($haslo);
  12. @ $db = mysql_pconnect("localhost", "root", "krasnal");
  13. if (!$db)
  14. {
  15. echo "Wystąpił błąd w połączeniu";
  16. }
  17.  
  18. mysql_select_db("sklep");
  19.  
  20. $query = "select * from produkty where ".$podstawaszukania." like '%".$haslo. "%'";
  21. $result = mysql_query($query);
  22. $num_results = mysql_num_rows($result);
  23.  
  24. echo "<p>Ilość znalezionych produktów: ".$num_results."</p>";
  25.  
  26. for ($i=0; $i <$num_results; $i++) {
  27.  
  28. $row = mysql_fetch_array($result);
  29. echo ($i+1).". ";
  30. echo stripslashes($row["nazwaproduktu"]);
  31. echo ", cena: ";
  32. echo stripslashes($row["cena"]);
  33. echo "zł, numer produktu:";
  34. echo stripslashes($row["nrproduktu"]);
  35. echo "<br>";
  36. }

i juz.
Jesli te $podstawaszukania tez jest z post to ma byc jeszcze:
$podstawaszukania = $_POST['podstawaszukania'];


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

"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
gigzorr
post 25.02.2010, 14:53:06
Post #19





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


Cytat(nospor @ 25.02.2010, 14:48:17 ) *
Uwierz, mi napewno nie jest do smiechu.

  1. $haslo = $_POST['haslo'];
  2.  
  3. if (!$podstawaszukania || !$haslo)
  4.  
  5. {
  6. echo "Nie zostalo wpisane żadne hasło do wyszukiwarki";
  7. }
  8.  
  9.  
  10. $podstawaszukania = addslashes($podstawaszukania);
  11. $haslo= addslashes($haslo);
  12. @ $db = mysql_pconnect("localhost", "root", "krasnal");
  13. if (!$db)
  14. {
  15. echo "Wystąpił błąd w połączeniu";
  16. }
  17.  
  18. mysql_select_db("sklep");
  19.  
  20. $query = "select * from produkty where ".$podstawaszukania." like '%".$haslo. "%'";
  21. $result = mysql_query($query);
  22. $num_results = mysql_num_rows($result);
  23.  
  24. echo "<p>Ilość znalezionych produktów: ".$num_results."</p>";
  25.  
  26. for ($i=0; $i <$num_results; $i++) {
  27.  
  28. $row = mysql_fetch_array($result);
  29. echo ($i+1).". ";
  30. echo stripslashes($row["nazwaproduktu"]);
  31. echo ", cena: ";
  32. echo stripslashes($row["cena"]);
  33. echo "zł, numer produktu:";
  34. echo stripslashes($row["nrproduktu"]);
  35. echo "<br>";
  36. }

i juz.
Jesli te $podstawaszukania tez jest z post to ma byc jeszcze:
$podstawaszukania = $_POST['podstawaszukania'];


teraz znów
Nie zostalo wpisane żadne hasło do wyszukiwarki cały czas

dodałem też tą podstawe szukania ale nie pomogło.
Go to the top of the page
+Quote Post
blooregard
post 25.02.2010, 14:56:52
Post #20


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




@gigzor, a daj kod tego formularza, z którego idą dane do tego skryptu.


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post

3 Stron V   1 2 3 >
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: 19.07.2025 - 00:57