-
Link din baza de date
Va salut! Nu am mai dat de mult pe aici, dar ma reapuc "heavy" de programare PHP :)
Am un tabel in care am un camp "sef_link" UNIQUE. Prin site am un link care ma duce pe http://site.com/<valoarea din campul "sef_link">.html
Ce trebuie sa fac (probabil in .htaccess) ca la click pe link sa ma duca pe o pagina index.php?q=<valoarea din campul "sef_link">? Iar adresa sa ramana tot http://site.com/<valoarea din campul "sef_link">.html
Pe scurt, as vrea ca procesul sa fie urmatorul:
La click pe http://site.com/link-din-baza-de-date.html sa se faca un request transparent la http://site.com/index.php?q=link-din-baza-de-date pt care sa pot face $_GET['q'] ca sa pot sa afisez continutul respectiv; transparent insemnand sa raman tot cu link-ul http://site.com/link-din-baza-de-date.html.
(exact ca link-urile din acest forum :D)
Mersi!
-
In .htaccess incearca acest cod:
Cod:
RewriteEngine On
RewriteRule ^q([^/]*).html$ index.php?q=$1 [L]
-
Mersi! Iti dau maine un reply sa iti zic daca a mers. Acum tot ce trebuie sa fac e sa caut in baza de date in campul sef_link dupa $_GET['q'], nu?
Sunt nerabdator sa incerc, dar nu mi-am terminat inca baza de date :)
-
ar mai trebui sa te ocupi putin si de securitate. Cel putin un mysql_real_escape_string($_GET['q']) ar ajuta :)
-
Putin pe langa subiect, cam ce ar trebui sa folosesc, in mare, pentru securitate?
Validari fac la server, la client, mysql_real_escape_string folosesc... ce ar trebui sa mai folosesc? Pt ca vin din "lumea" ASP.NET si acolo e mult mai comod cu securitatea, e destul de safe by default.
-
Verifica si filtreaza TOT ce se interogheaza din baza de date. Daca te ajuta pot sa caut cateva linkuri in care sa te uiti sa vezi cam ce se recomanda in materie de securitate.
-
Daca ai timp/chef sa le postezi, mi-ar fi de folos.
Mersi mult!
-
-
-
Ai grija la
- caracterele speciale din link
- generarea linkurilor self_link (caractere + duplicate)
- si cum au spus mai sus, securitatea, cand preiei, aici in PHP orice trebuie verificat, trebuie sa fii paranoic (de la $_POST la $_SESSION)