Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL] Zapytanie SQL
dareksbs
post
Post #1





Grupa: Zarejestrowani
Postów: 56
Pomógł: 0
Dołączył: 17.10.2012

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


Witam,

Chcę wyciągnąć dane z bazy i nie mogę sobie przypomnieć polecenia SQL aktualnie mam takie :

  1. SELECT * FROM books WHERE id=".id."


Teraz opiszę co chcę zrobić, a więc mam bazę o nazwie Library w niej mam kategorię books i z kategorii books chcę wyciągnąć dane książek które będą wyłoływane przez id po przez metodę GET

czyli np. library.php?id=6

i wyrzuca książkę o id 6.

Jak mam sformułować dobrze pytanie SQL, bo te co napisałem wyżej nie działa
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dareksbs
post
Post #2





Grupa: Zarejestrowani
Postów: 56
Pomógł: 0
Dołączył: 17.10.2012

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


Cytat(Pjotrek80 @ 25.06.2013, 23:57:20 ) *
Problem jest oczywiście w ".id."
tak pewnie zadziała: SELECT * FROM books WHERE id=$_GET['id'];
Ale oczywiscie nie możesz w ten sposób tworzyć zapytań. Prosisz się wtedy o ataki sql Injection.
Musisz $_GET['id'] przepuscić przez funkcje typu: strip_tags, htmlspecialchars, filter_var()



Cytat(Mackos @ 25.06.2013, 23:59:21 ) *
Zapytanie wydaje sie ok, tylko zmienna powinna być czymś w stylu:

Jak wrzucasz zapytanie z parametrem z GET koniecznie pamiętaj o przefiltrowaniu parametru najpierw!


Ups, źle przepisałem na forum, oczywiście był tam znak $, lecz dalej nie działa... Co do wypowiedzi Pjotrek80, to zrobiłem nową zmienną z $_GET['id']; na $id, oczywiście będzie wszystko przepuszczonę przez htmlspecialchars.

Już naprawiłem, problemem było to że nie zrobiłem pętli przy wyciąganiu danych z bazy

Ale jeszcze mam małe pytanie, jak dopisać else do pętli ? tzn. jeśli ktoś wpiszę id którego nie będzie chciałbym aby wyrzuciło tekst "brak książki w bazie danych" próbowałem do bazy dopisać else ale nie działa

Ten post edytował dareksbs 25.06.2013, 23:23:39
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: 3.10.2025 - 04:11