ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์CMS & Free Scriptใช้ RewriteRule แล้วรับค่า GET แบบปกติไม่ได้ครับ
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: ใช้ RewriteRule แล้วรับค่า GET แบบปกติไม่ได้ครับ  (อ่าน 286 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
gang246810
Newbie
*

พลังน้ำใจ: 2
ออฟไลน์ ออฟไลน์

กระทู้: 12



ดูรายละเอียด เว็บไซต์
« เมื่อ: 14 มีนาคม 2018, 13:00:36 »

คือผมจะ RewriteRule
จาก http://localhost/product.php?c...ower-bank&ppath=power-bank
เป็น http://localhost/category/power-bank/?ppath=power-bank ครับ

ไฟล์ .htaccess
RewriteEngine On
RewriteRule ^category/(.*)/$ product.php?category=$1
RewriteRule ^category/(.*)$ /category/$1/ [R]

แต่พอใส่ไปแล้วรับค่า $_GET['ppath'] ไม่ได้เลย ขอบคุณครับ
บันทึกการเข้า

 *Link Removed*
infamous
ก๊วนเสียว
*

พลังน้ำใจ: 14
ออฟไลน์ ออฟไลน์

กระทู้: 301



ดูรายละเอียด
« ตอบ #1 เมื่อ: 14 มีนาคม 2018, 20:43:41 »

ไม่ทราบว่าความต้องการของท่านคือ

ลิงค์ที่มี/ประกอบด้วย category/.../... ให้วิ่งไปที่หน้า product.php หรือเปล่าครับ
ถ้าใช่ ให้ลองแบบนี้นะครับ เพราะแบบของท่านมันเป็นการสร้าง rule ซ้ำซ้อนเพื่อเงื่อนไขเดียว

โค๊ด:
RewriteEngine on

#localhost/demoapp
RewriteBase /demoapp/

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} category
RewriteRule ^(.*)$ index.php?_route_=$1 [L,QSA]

index.php

โค๊ด:
// rq url
http://localhost/demoapp/category/power-bank/?ppaht=power-bank
<?php 
print_r
($_GET);

// result
Array
(
    [
_route_] => category/power-bank/
    [
ppaht] => power-bank
)
?>

บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์