[請益] POST形式接收資料問題
小弟目前正在利用POST的形式將我們的資料傳到server端
POST的格式如下
POST process.php HTTP/1.1
Content-type: application/x-www-form-urlencoded
Content-Length: 102
Host: XXX.ee.nthu.edu.tw
data= data_string
要上傳的資料用char接收每一筆資料在串成一個string
PHP上接收的寫法如下
$save_data=$_POST["data"];
if($save_data!=NULL){
$filename = fopen("raw_data.txt","w+");
fwrite($filename, $save_data);
fclose($filename);
echo "WRITE SUCCESS <br>";
}
現在問題在於我接收這個string的server端他收到的這串string會是不完整的
目前發現要是我這串string內若有ASCII編碼的NULL這個編碼
資料就會中斷在這裡,似乎是PHP在讀值時是將NULL這個編碼當成字串的結束
有沒有什麼方法可以讓PHP讀完整串資料呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.114.14.79
※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1478252842.A.89F.html
→
11/04 20:24, , 1F
11/04 20:24, 1F
→
11/04 20:29, , 2F
11/04 20:29, 2F
→
11/04 21:09, , 3F
11/04 21:09, 3F
推
11/04 21:11, , 4F
11/04 21:11, 4F
→
11/04 21:12, , 5F
11/04 21:12, 5F
→
11/04 21:14, , 6F
11/04 21:14, 6F
針對我要傳輸的資料我再講清楚一點好了
我現在的做法是把我收到的資料當成是一組ASCII碼在傳送
也就是如果我的裝置接收到的資料是41、42、43
在裝置上我會把它變成ASCII碼,也就是A、B、C
在串成一串string=ABC這樣去傳送它
那現在我發現如果我要送出的資料是41、42、0、43
ASCII編碼會是A、B、NULL、C
但是在server上收到的資料會僅有string=AB
所以才不解是哪裡的問題
那我目前正在研究encode的用意,不知道能不能解決這問題
※ 編輯: airgo (140.114.14.79), 11/04/2016 22:02:36
→
11/04 23:34, , 7F
11/04 23:34, 7F
→
11/04 23:36, , 8F
11/04 23:36, 8F
→
11/05 19:45, , 9F
11/05 19:45, 9F
PHP 近期熱門文章
PTT數位生活區 即時熱門文章