Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> php, ^^
Home
post
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 27.09.2006

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


WItam,

php zaczalem studiowac kilka dni temu. Na szczescie jest takie forum jak to gdzie taki novice jak jak moze sie paru drobnostek dowiedziec. Moje pytanie bedzie byc moze dla was smieszne albo jeszcze gorzej "glupie" ale kazdy z was zaczynal tak jak ja -nie odrazu Rome zbudowali smile.gif

Czytajac jeden z przyczepionych postow dowiedzialem sie ze przy zapytaniach do bazy danych powinno uzywac sie przedrostka (int) przyklad:
  1. <?php
  2. $sql = mysql_query"SELECT * FROM tabelka WHERe artykul_id = ".(int)$_GET['id'];
  3. ?>

Wnioskujac wasze wczesniejsze posty jest to skuteczne rozwiazanie jesli odnosimy sie do zmiennych, ktore w bazie danych stanowia same cyfry(np do ID calego artykulu).

Natomiast ja postanowilem uzyc (paging - stronicowanie) na swojej stronie zeby mi calosc z bazy nie wysypalo na jedna strone tylko podzielilo na kilka.

I tu juz czegos nie wiem. To jest przyklad kodu do stronicowania (wyrwany z kontekstu):

  1. <?php
  2. $query = "SELECT * FROM tabelka LIMIT $limit, $limit2";
  3. ?>


Jak widac nie ma operatora "WHERE" - 1 pytanie czemu tak jest?
2 pytanie: jak zastosowac filtracje (int) do tego typu zapytania skoro nie ma WHERE?

Czy to jest dobra metoda do pytania drugiego:

  1. <?php
  2. if(is_numeric($_GET['strona'])){
  3.  
  4. $limit = 2;
  5.  
  6. $calosc = (($strona * $limit) - $limit);
  7.  
  8. ....... :::dalej calz kod
  9. }else{
  10. echo "404-brak strony";
  11. }
  12. ?>


W tym wypadku jezeli nie bedzie to cyfra to wogole nie dojdzie do zapytania z bazy tylko odrazu przejdzie do "echo" - czy to dobry sposob?

Dzieki i czekam na riposty smile.gif
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


1. Zly temat!!! prosze poprawic

2.
Cytat
Jak widac nie ma operatora "WHERE" - 1 pytanie czemu tak jest?
2 pytanie: jak zastosowac filtracje (int) do tego typu zapytania skoro nie ma WHERE?

itp --> poczytaj o SQL Injection -- temat przyczepiony


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
Home
post
Post #3





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 27.09.2006

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


widze ze nie zbyt mila atmosfera tu panuje dry.gif . Czytalem i nic nie bylo o stosowaniu(int) przy zapytaniach z LIMITEM.
Go to the top of the page
+Quote Post
nospor
post
Post #4





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




Cytat
widze ze nie zbyt mila atmosfera tu panuje
Uwage moderatora, o poprawienie tematu traktujesz za nie mila atmosfere?
A jak potraktujesz uwage administratora forum bys wkoncu ten temat poprawil? Temat "php" nic nie mowi o problemie wiec wysili sie prosze i nadaj tytul poprawny. Wskazowki znajdziesz w regulaminie.

Co do problemu:
tu nie chodzi czy to limit czy where, tylko o wkladanie zmiennych do zapytania.
mozesz np. tak:
  1. <?php
  2. $zm = (int)$_GET['zm'];
  3. $sql = "..... $zm";
  4. ?>


Przenosze na przedszkole


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

"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

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 Aktualny czas: 22.08.2025 - 02:15