[請益] POST形式接收資料問題

作者: airgo (韋高)   2016-11-04 17:47:15
小弟目前正在利用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讀完整串資料呢?
作者: chaoms (小企鵝)   2016-11-04 20:24:00
看不懂說明~但猜一下應該是沒有encode就post可以查一下rfc的定義,看內容像自己寫http post
作者: airgo (韋高)   2016-11-04 21:09:00
對 HTTP POST code是自己Key的 所以是少了encode嗎
作者: wilson200106 (種子種子)   2016-11-04 21:11:00
都找到原因了,就先用簡單的str_replace一下試試看
作者: airgo (韋高)   2016-11-04 21:12:00
POST是參考範例就使用的方法 詳細我還不是很懂
作者: wilson200106 (種子種子)   2016-11-04 21:14:00
雖然我覺得,是換行符號啦XDD
作者: chaoms (小企鵝)   2016-11-04 23:34:00
Urlencode一下資料先試試看啦有可能web server不支援非正規格而已
作者: airgo (韋高)   2016-11-05 19:45:00
經過encode編碼後的確可以正常傳輸了 感謝大家的回覆!!

Links booklink

Contact Us: admin [ a t ] ucptt.com