2010-09-17 26 views
5

Tôi có mã sau, hoạt động tốt trên trang web trực tiếp, nhưng không hoạt động trên localhost.getRequest của Zend framework() -> getQuery() sẽ không mang chuỗi truy vấn trên localhost

$status = $this->getRequest()->getQuery('status'); 

Tôi có một URL như sau:

http://localhost:888//questions/ask?status=10 

Tôi in giá trị của trạng thái, mà luôn luôn là con số không. Tôi mới vào khuôn khổ Zend và không thể tìm thấy một giải pháp cho điều này trên mạng, trông lạ với tôi. Có suy nghĩ gì không? Cảm ơn.

[FIXED]

tôi đã RewriteRule sai đó gây ra vấn đề. Có một 'không mong muốn'? sau index.php trong dòng RewriteRule. Đó là sai lầm của tôi, tôi đã thêm điều này, bởi vì các khung công tác khác như người dùng CodeIgniter '?' trong RewriteRules. Dòng RewriteRule chỉnh là:

RewriteRule ^(.*)$ /index.php/$1 [L] 

Tôi tự hỏi nếu tôi có thể chọn câu trả lời như được chấp nhận này .. :-)

+0

bạn nhận được để điều khiển hành động? .htaccess đang hoạt động? chỉ tham số là null? –

+0

ZF2 nó hoạt động '$ post = $ this-> getRequest(); $ productid = mysql_real_escape_string ($ post-> getQuery ('productid')); ' – YumYumYum

Trả lời

4

Tôi thường sử dụng này

$status = $this->getRequest()->getParam('status'); 

// or 
$status = $this->getRequest()->getParams(); 

tôi giả sử rằng bạn có một câu hỏi Bộ điều khiển hỏi hành động.

+0

Elzo, tôi đã thử điều đó, tôi luôn nhận được mô-đun, bộ điều khiển, hành động, vv, nhưng không phải chuỗi truy vấn. Điều này hoạt động như nó phải được vào sống, chỉ localhost có vấn đề. Tôi có thiếu bất kỳ cấu hình nào của khung công tác không? – pMan

+0

có định tuyến lạ nào không? hoặc các cài đặt khác phụ thuộc vào MÔI TRƯỜNG? –

+0

var_dump đối tượng yêu cầu. nếu biến trạng thái nằm trong url, nó cũng sẽ xuất hiện ở đó. –

2

Đối với những người đang tìm kiếm giải pháp cho ZF2 - hãy xem bài đăng này, đã giúp tôi rất nhiều. Nó thậm chí còn bao gồm các tài liệu tham khảo để một plugin phi thường để làm cho dễ dàng hơn này (như Ít nhất, trong việc tìm hiểu các tuyến đường/yêu cầu/params, vv ...)

Getting $_GET parameters from route in Zend Framework 2

Ngoài ra, trong bài này SO gửi

How to access route, post, get etc. parameters in Zend Framework 2

Nói tóm lại, tho -

$this->getRequest()->getRequest('name', 'default'); 
    $this->getEvent()->getRouteMatch()->getParam('name', 'default'); 
Các vấn đề liên quan