![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 53 Pomógł: 0 Dołączył: 16.02.2012 Ostrzeżenie: (0%) ![]() ![]() |
Oto mój kawałek pseudokodu:
Użytkownik pisuje w formularz markę samochodu (parametr - 'samochod') dalszym etapie przekazywane jest to do kodu php
teraz chciałbym taki myk aby: jeżeli w bazie znajduje się taka marka samochodu to wyskoczy komunikat "jest taki samochod" jezeli w bazie nie ma takiego samochodu tzn MySQL zwrócił pusty wynik (zero rekordów) wyskoczy komunikat "nie ma takiego samochodu" jak to wykonać? Prosze o pomoc |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 376 Pomógł: 47 Dołączył: 23.08.2007 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Krótki komentarz: nie używałem nigdy tablic $_REQUEST, po prostu dawałem $_GET albo $_POST i w forumlarzu definiowałem method jako get lub post. Poza tym uważam, że zamiast LIKE lepiej jest po prostu użyć znaku równości...
po prostu jak wpiszesz fiat 12 , to wyskoczy Ci, że masz taki samochód... a w bazie możesz mieć fiat 126p ![]() Ten post edytował Kostek.88 22.02.2012, 00:35:07 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 53 Pomógł: 0 Dołączył: 16.02.2012 Ostrzeżenie: (0%) ![]() ![]() |
no niestety wyskakuje błąd
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/public_html/samochod/car.php btw: czemu uważasz ze używanie $_REQUEST jest złe? Mają jakieś wady? Nauczyłem się ich z książki jako uniwersalne, załatwiające wszystkie sprawy. Coś z nimi nie tak? Ten post edytował pkosciej 22.02.2012, 00:59:35 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 548 Pomógł: 105 Dołączył: 4.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
i teraz powinno ci się wyświetlić gdzie masz błąd w zapytaniu Ten post edytował kadlub 22.02.2012, 13:05:03 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
To wyrzuć tą książkę do kosza. Nie masz żadnej kontroli nad danymi, nie wiesz skąd pochodzą (GET, POST, COOKIE) a w dodatku stosujesz frywolnie wrzucając od razu do zapytania (SQL INJECTION). Takie nawyki od początku to zerowe bezpieczeństwo późniejszych stron. Skoro i tak dopiero się uczysz zacznij czytać o PDO.
-------------------- |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 376 Pomógł: 47 Dołączył: 23.08.2007 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Wrzuc to zapytanie do phpMyAdmin do okienka QUERY (ZAPYTANIE), czy jak to sie tam zwalo. Przetestujesz w ten sposob czy dziala.
btw: czemu uważasz ze używanie $_REQUEST jest złe? Mają jakieś wady? Nauczyłem się ich z książki jako uniwersalne, załatwiające wszystkie sprawy. Coś z nimi nie tak? Nie napisalem, ze to jest zle ![]() ![]() PS. Jesli sie myle, bo to niech mnie ktos poprawi ![]() Ten post edytował Kostek.88 22.02.2012, 09:59:14 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 7 Dołączył: 3.08.2007 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
na moje oko Wasze podpowiedzi są błędne, zliczacie mysql_num_rows ale wcześniej nie ma wysłanego zapytania do bazy
|
|
|
![]()
Post
#8
|
|
![]() Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
mysql_query, polecam poczytać...
-------------------- |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 53 Pomógł: 0 Dołączył: 16.02.2012 Ostrzeżenie: (0%) ![]() ![]() |
Biorąc Wasze wszystkie uwagi wydedukowałem coś takiego:
Polecenie to działa nie wywala żadnych błędów... prawie działa... jednak zwraca zły wynik. kiedy w formularzu wpisze Ford to wartość $samochod przyjmuje Ford i to ładnie wyświetla mi się w echo $samochod. jednak $num_results wyświetla mi wynik zerowy, czemu tak jest? Próbowałem wpisać nazwę samochodu na sztywno czyli zamieniłem linijke:
na
Wynik zwrócił mi się wtedy prawidłowy równy jeden, nie rozumiem czemu jak podstawiam zmienna w zapytaniu to to nie działa |
|
|
![]()
Post
#10
|
|
![]() Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
podstawowe operacje na stringach (i nie chodzi mi o majtki)
![]()
-------------------- |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 7 Dołączył: 3.08.2007 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 376 Pomógł: 47 Dołączył: 23.08.2007 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Jak już to powinno być:
S?robuj zastosować PDO jak radziłem wcześniej bo się przejedziesz na takim kodzie. I nie będziesz miał też problemu jak to zapisać, escape zrobić bo zastosujesz placeholder (SELECT marka FROM SAMOCHODY WHERE marka LIKE ?) Ten post edytował viking 22.02.2012, 16:27:29 -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 6.07.2025 - 22:08 |