現在有的網站上傳檔案的時候會自動在檔案前面加入Content-type: image/gif等頭標,導致二進位檔案被破壞。因此,我編寫了以文本方式上傳二進位檔案的PHP程式。
一共兩個檔案:index.php,action.php。將要上傳的檔案的檔案名稱改為test,與這兩個檔案放在一起,運行index.php,選讀取,將讀取的所有資料Copy,在遠端伺服器上面也運行這個程式,Paste到輸入框中,選儲存。二進位檔案就被上傳了。
index.php
---------------------------------------------------------
<html>
<head>
<title>以文本方式上傳二進位檔案的PHP程式</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#FFFFFF">
<table width="760" border="0" cellspacing="0" cellpadding="0" height="25">
<tr>
<td>
<div align="center"><b>圖片上傳</b></div>
</td>
</tr>
</table>
<table width="760" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<form name="form" method="post" action="action.php" target="_blank">
<div align="center">
<textarea name="pic" cols="80" rows="15"></textarea>
<br>
<input type="radio" name="view" value="0" checked>
儲存
<input type="radio" name="view" value="1">
試看
<input type="radio" name="view" value="2">
讀取<br>
<input type="submit" name="OK" value=" 確 定 ">
<input type="reset" name="RESET" value=" 取 消 ">
</div>
</form>
</td>
</tr>
</table>
</body>
</html>
---------------------------------------------------------
action.php
---------------------------------------------------------
<?