2010-09-15 34 views
5

Tôi đang gửi dữ liệu bằng HTTP POST tới máy chủ của mình. Nhưng trong máy chủ, tôi không nhận được dữ liệu. Và bằng cách nào đó tôi không có cách nào để kiểm tra dữ liệu (hoặc gỡ lỗi script) trên phía máy khách. Nhưng về phía khách hàng tôi nhận được HTTP 200, có nghĩa là dữ liệu được gửi đi. Ngoài ra tôi có thể thấy kết nối và gửi dữ liệu đã thành công. Tuy nhiên, đăng nhập vào máy chủ không chứa dữ liệu (chỉ số byte).tập lệnh php để ghi lại dữ liệu thô của POST

Làm cách nào để tôi có thể ghi dữ liệu POST thô đã được gửi đến máy chủ?

FYI, ở đây khách hàng là thiết bị được nhúng với khả năng rất hạn chế. SO, là vấn đề này. Vì vậy, tôi không thể kiểm tra "print_r" hoặc "echo"

+0

gì xảy ra nếu bạn thử một print_r ($ _ POST)? –

+0

tiếc là tôi không thể thấy điều đó ở phía khách hàng. Vì vậy, nó sẽ không hoạt động. – Morison

+0

Bạn có thể tái tạo sự cố với một số ứng dụng khách khác mạnh hơn (và có thể chạy những thứ như firebug ^^) không? –

Trả lời

16

Hãy thử:

<?php 
print_r($_POST); 
?> 

Bạn cũng có thể thử:

<?php 
print_r($_REQUEST); 
?> 

Để hiển thị nếu các biến đang đến trong $ _POST (MẪU-POST nếu mã hóa/phương pháp là đúng) hoặc $ _GET

Nếu bạn muốn ghi nhật ký thay vì in trên màn hình - bạn có thể thử:

<?php 
file_put_contents("post.log",print_r($_POST,true)); 
?> 
+2

Cảm ơn Rudi, tôi đoán file_put_contents là điều tốt nhất để làm. – Morison

0

thử sử dụng var_dump($_POST['name-of-field']) hoặc var_dump($_POST)

Cập nhật: // và duyệt nguồn của trang và tìm kiếm một mảng

0

Nếu bạn chỉ hình thức của bạn đến một trang với đoạn mã sau những gì bạn nhận được? Nicles?

<?php 
echo "<pre>" 
print_r($_POST); 
?> 
+0

tiếc là tôi không thể thấy rằng ở phía khách hàng. Khách hàng thực tế là một thiết bị nhúng. Vì vậy, nó sẽ không hoạt động. – Morison

9

Viết bài dữ liệu vào một tệp:

file_put_contents('/tmp/postdata.txt', var_export($_POST, true)); 
+0

Mặc dù điều này chỉ chấp nhận được để gỡ lỗi. Không bao giờ để bất cứ ai viết bất cứ thứ gì xuất phát từ $ _POST trực tiếp vào một số tập tin trong các ứng dụng thực tế ... –

+0

Cảm ơn bạn rất nhiều Sjoerd. Tôi đoán đây là điều tốt nhất để làm. Kể từ khi Rudi trả lời như vậy trước khi bạn, vì vậy tôi sẽ phải chọn câu trả lời của mình: ( – Morison

+0

Martin, tôi hiểu. Tôi sẽ chỉ sử dụng nó để gỡ lỗi – Morison

Các vấn đề liên quan