Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]przekazywanie parametrów $_GET - konwencje
dżozef
post
Post #1





Grupa: Zarejestrowani
Postów: 125
Pomógł: 9
Dołączył: 25.05.2013

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


Cześć wszystkim jako, że to mój pierwszy post. Stawiam pierwsze kroki w PHP i zacząłem tworzyć sobie prostą aplikację. Póki co jest jeszcze w powijakach, ale natknąłem się na problem natury egzystencjalnej (IMG:style_emoticons/default/smile.gif)
Chodzi o przekazywanie parametrów, obecnie stosuję następującą konwencję:

index.php?action=edit&id=2
index.php?action=delete&id=5
itd.

Podglądając kod innych apek zorientowałem się, że przeważa w nich następujący sposób przekazywania parametrów:
index.php?edit=2
index.php?delete=5
itd.

Czy są jakieś konkretne zalecenia w jaki sposób parametry $_GET powinny być przekazywane? Uczę się od podstaw i wolałbym nie łapać złych nawyków. Z góry dzięki za wszelką pomoc.

Ten post edytował dżozef 25.05.2013, 23:42:54
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
ixpack
post
Post #2





Grupa: Zarejestrowani
Postów: 248
Pomógł: 55
Dołączył: 1.06.2010
Skąd: mam to wiedzieć?

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


Hmm...
jak podgladasz kod innych apek?
Go to the top of the page
+Quote Post
dżozef
post
Post #3





Grupa: Zarejestrowani
Postów: 125
Pomógł: 9
Dołączył: 25.05.2013

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


cat nazwapliku

dzięki za OT w pierwszej odpowiedzi!
Go to the top of the page
+Quote Post
Mackos
post
Post #4





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

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


W gruncie rzeczy nie ma większej różnicy. Zależy jak Ci wygodniej.
Choć zasada "KEEP IT SIMPLE" jest zawsze zbawienna.
Najważniejsze jednak żebyś pamiętał o bezpieczeństwie i między innymi sprawdzał czy przy pobieraniu parametru edit=2
Może wykonać ten użytkownik, który ją wykonuje. Pamiętaj też o filtrowaniu tych zmiennych, jeśli mają to być liczby całkowite - sprawdzaj czy nimi są zanim coś puścisz do bazy (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
dżozef
post
Post #5





Grupa: Zarejestrowani
Postów: 125
Pomógł: 9
Dołączył: 25.05.2013

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


Kod jest jednoużytkownikowy więc póki co nie muszę się martwić o to czy dany użytkownik może/nie może czegoś wykonać. Co do filtrowania - masz na myśli stosowanie jakiegoś wyrażenia regularnego, żeby sprawdzić czy przekazywane są tylko cyfry?
Go to the top of the page
+Quote Post
Mackos
post
Post #6





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

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


Ok, nawet jeśli jest to jedno użytkownikowe to zawsze sprawdzaj czy ten jeden użytkownik jest zalogowany i czy to on wykonuje akcje.
Bo wyobraź sobie że masz jakiś panel admina do którego masz adres posty.php?usun=1 i co jeśli google Ci zaindeksuje taki adres i ludzie będą z niego wchodzić i automatycznie usuwać Twoje posty (IMG:style_emoticons/default/wink.gif) (oczywiście to jest mocno przekoloryzowana sytuacja ale mniej więcej określa temat).

A co do filtrowania to dobrze jeśli masz gotową jakąś funkcję która robi to z automatu np:
  1. function filter($data){
  2. $data = trim(htmlspecialchars(strip_tags($data), ENT_QUOTES));
  3.  
  4. $data = stripslashes($data);
  5.  
  6. return $data;
  7. }

Naucz się też korzystać od razu z połączenia z bazą danych przez PDO (zawsze binduj dane wejściowe).
Tutaj masz fajny poradnik od którego ja zacząłem: http://pl.wikibooks.org/wiki/PHP/Biblioteka_PDO
Go to the top of the page
+Quote Post
dżozef
post
Post #7





Grupa: Zarejestrowani
Postów: 125
Pomógł: 9
Dołączył: 25.05.2013

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


Korzystam tylko z PDO i bindowania, ale i tak dzięki (IMG:style_emoticons/default/smile.gif) A następne na mojej liście są sesje, logowanie i rejestracja.
Google nic nie zaindeksuje, bo póki co to aplikacja do zastosowań własnych bez planów na instalację gdziekolwiek na dostępnym z zewnątrz serwerze. Tak właściwie to zastanawiam się nad przeskoczeniem na SQLite bo MySQL wydaje sie nawet za wielkie jak do tego projektu.
Go to the top of the page
+Quote Post

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: 24.08.2025 - 00:49