selectare pagina din sql cu rewrite in htaccess
Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
-
royal27
- Mesaje: 79
selectare pagina din sql cu rewrite in htaccess
Salut,vreau sa creez o functie in care sa imi includa pagina direct din mysql,de exemplu am facut asta
Cod: Selectaţi tot
$page= $_GET['page'];
$page =$xyz->query("SELECT id, name, path FROM page");
while($pagesss=$page->fetch_array()){
if($page == "$pagesss[1]"){
include('$pagesss[2]');
}
}
si vreau ca atunci cand intru pe www.website.com/login sa imi arate pagina de logare sau alta pagina,in htaccess am asa
Cod: Selectaţi tot
# Turn the RewriteEngine on in order to use mod_rewrite
RewriteEngine On
# Redirect all request to the index page
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php?page=$1 [QSA,L]
RewriteRule ^(.+)$ index.php?id=$1 [QSA,L]
MarPlo
Salut,
Liniile cu RewriteRule pe care le ai in htaccess sunt in conflict.
Trebuie sa regandesti schema si linkurile la pagini astftel incat o adresa sa nu se potriveasca in doua rescrieri diferite.
Ori te folosesti de nume, ori de id.
De exemplu:
- Adresa pagina: website/login
- In htaccess (pentru orice pagina cu nume):
Cod: Selectaţi tot
Options +FollowSymLinks
RewriteEngine On
Options -Indexes
RewriteRule ^([A-z0-9_-]+)$ index.php?page=$1 [NC,L]
- In codul tau php:
Cod: Selectaţi tot
//creaza conexiunea cu mysqli
$page = isset($_GET['page']) ? $xyz->real_escape_string($_GET['page']) :'';
$resql = $xyz->query("SELECT id, name, path FROM page WHERE name ='$page' LIMIT 1");
if($resql->num_rows > 0){
//prelucreaza datele returnate
}
else echo 'No results';
royal27
da si eu vreau sa introduc in codul tau cam asa ceva dar sa preia paginile din sql
Cod: Selectaţi tot
if($page == "" || $page=="login"){
include('system/login/index.php');
}
Cum as putea seta in htaccess ca in loc de linkul asta
legacy-cms.ro/chatroom?rid=2 sa fie
legacy-cms.ro/chatroom/rid/2, am setat htaccess cum ai dat tu, dar nu reusesc sa pun cu liniile alea.
MarPlo
Pentru ca linkul:
legacy-cms.ro/chatroom?rid=2 sa fie:
legacy-cms.ro/chatroom/rid/2 incearca asa in .htaccess (dar sa nu intre in conflict cu alte reguli de rescriere):
Cod: Selectaţi tot
RewriteRule ^chatroom/([A-z0-9]+)/([0-9]+)$ chatroom?$1=$2 [NC,L]
- In codul html, adresea de la "href" sa fie cea care vrei sa apara in browser.
royal27
Mie imi incarca fila cand accesez linkul legacy-cms.ro/chatroom?rid=2 dar vreau sa pun cu linii din alea,am incercat si cum ai pus tu dar nu imi da voie
in fila page.php am
htaccessul meu arata asa
Cod: Selectaţi tot
RewriteEngine On
### WWW & HTTPS
# ensure www.
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# ensure https
#RewriteCond %{HTTP:X-Forwarded-Proto} !https
#RewriteCond %{HTTPS} off
#RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# Turn the RewriteEngine on in order to use mod_rewrite
RewriteEngine On
# Redirect all request to the index page
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php?page=$1 [QSA,L]
MarPlo
Presupun ca pagina se incarca din index.php, si merge cu adresea:
index.php?page=chatroom&rid=2.
Incearca asa in htaccess:
Cod: Selectaţi tot
RewriteRule ^([A-z0-9]+)/rid/([0-9]+)$ index.php?page=$1&rid=$2 [NC,L]
Iar in index.php:
Cod: Selectaţi tot
//creaza conexiunea cu mysqli
$page = isset($_GET['page']) ? $xyz->real_escape_string($_GET['page']) :'';
$rid = isset($_GET['rid']) ? intval($_GET['rid']) :0;
$resql = $xyz->query("SELECT id, name, path FROM page WHERE name ='$page' AND id = $rid");
if($resql->num_rows > 0){
//prelucreaza datele returnate
}
else echo 'No results';
royal27
Merge perfect,mersi mult de tot,raman dator
Subiecte similare
-
Eroare 404 la Mod-Rewrite cu accesare director
Server - htaccess - Gazduire Web
Primul mesaj
Salut, am facut ca sa pot accesa fisierele php fara a mai fi nevoie de extensie (si fara sa mai redirectioneze catre 404.php daca se acceseaza o...
Ultimul mesaj
Salut,
Incearca sa faci si un RewriteRule pentru: /scoala/pagina .
RewriteRule ^blog/( +)/?$ post.php?id=$1
RewriteRule ^scoala/( +)/?$...
-
Parsererror trimitere date cu Ajax si htaccess
JavaScript - jQuery - Ajax
Primul mesaj
Salut, am un script pentru un calendar, dar se pare ca atunci cand vreau sa trimit date prin ajax primesc eroarea din titlu fiindca am modificat...
Ultimul mesaj
Ba da, am fost trimis datele cum s-a zis si la raspunsul anterior si tot nimic, nu inteleg
-
Redirect la click pe pagina
JavaScript - jQuery - Ajax
Primul mesaj
Buna, as avea nevoie de un script de javascript astfel incat un utilizator la primul click pe pagina sa fie trimis pe alta.
Ultimul mesaj
Incearca urmatorul script, in zona BODY a codului html (modifici adresa de la window.location).
<script>...
-
Adresa pagina web fara extensie de fisier
Discutii si Intrebari Diverse
Primul mesaj
Buna ziua dragi dezvoltatori,
sunt incepator, v-ati dat seama, din moment ce vin la voi cu aceasta solicitare.
Vreau sa stiu cum se poate ascunde,...
Ultimul mesaj
Din ce am inteles, problema ar fi cu baza de pornire a urmatoarei pagini. Adresa URL se deschide incepand de la adresa directorului din browser....
-
Script JS nefunctional din pagina 2 incarcata cu Ajax
JavaScript - jQuery - Ajax
Primul mesaj
Salutare,
In cadrul unei aplicatii web am urmatoarea problema:
- pagina index1.php incarca intr-un div cu ajutorul unui script o alta pagina...
Ultimul mesaj
Daca si in pagina 2 ai alta apelare cu ajax, lucrurile se complica. Elementele html care sunt folosite in scriptul din pagina 2 trebuie sa fie si ele...
-
Eroare 404 fara redirectionare la accesare pagina inexistenta
Discutii si Intrebari Diverse
Primul mesaj
Salut, cum pot face ca atunci cand se acceseaza o pagina invalida se se afiseze (nu sa se redirectioneze) o pagina cu detalii despre eroarea...
Ultimul mesaj
Daca pagina e generata cu un script la nivel de server (cum e php), se poate. Dar depinde cum e construit acel script.
Ca idee, daca e cu php, la...