这是我在服务器上运行的代码。我正在使用C ++读取一个.jpg localy,然后用一个字符串中的SFML发布它。由于内容长度与文件大小相同,因此服务器显然接收到帖子。然而,当涉及到写入文件时,字符串似乎缩短为仅276个字符。最后写的字符是%,之后的字符应该是& (当在notepad ++中打开文件时),由于SFML无法以表格形式发布文件,我必须这样做。当字符串确实到达服务器时,为什么文件会被切断?
$headers = apache_request_headers();
foreach ($headers as $header => $value)
{
if(strcmp(strtolower($header),"content-length")==0)
{
$length=intval($value);
echo $value;
}
}
$file=fopen("file".".txt","w");
fwrite($file,$_POST["file"],$length);
fclose($file);
替代PHP索引(也不起作用 - 发布时没有$ _FILES [“file”]变量):http://pastebin.com/edP6VXCr
我用来发送的C ++代码:http://pastebin.com/uCaRe9X5
答案 0 :(得分:0)
将$_POST
替换为$_FILES
。此外,您应该使用move_uploaded_file()
。
编辑:要进一步扩展以下评论,请尝试使用:
move_uploaded_file($_FILES["file"]["tmp_name"], '/somewhere/on/the/disk');