当我直接输入feild作为文本输入结果很好但是当我将输入的feild类型更改为“FILE”然后读取存储在服务器上的临时内容时,它会添加额外的“未知”字符
$fileName = $_FILES['userfile']['name'];
$tmpName = $_FILES['userfile']['tmp_name'];
$fileSize = $_FILES['userfile']['size'];
$fileType = $_FILES['userfile']['type'];
$fp = fopen($tmpName, 'r');
$content = fread($fp, $fileSize);
fclose($fp);
echo $content;
它最有可能与secuirty有关,但我如何更改内容以使其正常?在Firefox中,它为大多数字符提供方框,字母为: 这是一个例子:
它的意思是: “Dirty Rocker”反而出现了这样:“D i r t y R o c k e r”
希望你能帮忙!
答案 0 :(得分:1)
将表单中的数据类型设置为multipart / form-data。通过标头和元标记将输出页面的编码设置为utf-8。
检查上传文件的真实内容。 Compair原始文件及其在服务器上的副本。尝试手动上传文件(例如ftp)并通过php读取它。