我在處理從我的Flash應用程序創建的圖像時遇到問題,它通過原始發佈數據發送數據,並將圖像寫入到我的/ webroot文件夾。在CakePHP中從FLASH上傳圖像
下面是我在「AvatarController.php」文件中的php代碼。
public function uploadImage()
{
$this->autoRender = false; // no view file
if ($this->request->is('post')) // if post data
{
$aUser = $this->aCurrentUser(); // gets user info
if (isset ($GLOBALS["HTTP_RAW_POST_DATA"])) // gets raw post data
{
$sImgName = $aUser['User']['username'] . '_full' . '.png';
$fp = fopen($sImgName, "wb");
fwrite($fp, $GLOBALS[ 'HTTP_RAW_POST_DATA' ]);
fclose($fp);
}
}
}
我遇到麻煩的是將其保存到不同的文件夾,例如/ webroot/avatars,我將如何去調整圖像大小,最終我想要做的是有三個左右的大小,例如「Username_full」,「Username_80」,「Username_50」;所以全尺寸,小80%,小50%等。
我從來沒有處理這樣的上傳,從閃存。
任何幫助,建議?
謝謝,我也會使用$ _FILES,但是我再次發送ByteArray到PHP,我不知道這是完全可能的! – Urduni
啊我現在看到你在說什麼,並沒有完全遵循這個說法,所以你是否嘗試過使用你在PHP中生成的文件,並通過鏈接的腳本來傳遞它,只要gd可用應該是可行的,並允許你實現多分辨率圖像的目標。 – shaunhusain
另外我沒有提到字節數據必須以某種格式編碼,這些格式將被gd「理解」。你可以在AS3端做到這一點,至少編碼爲JPEG http://blog.six4rty.ch/2010/07/17/as3-quickhint-convert-bitmapdata-to-bytearray/另外,在一個側面說明,你應該接受答案或通過工作解決您的其他問題,或者如果您發現答案發布並接受答案,或者在發現問題不相關時回答問題。否則它就會毀掉你的歷史。人們將不太可能提供幫助。 – shaunhusain