我正在创建一个 facebook,我已经在普通 PHP 程序中使用了几次上传图像代码。我现在在 facebook 应用程序中使用它。这是我的代码
$image=clean($_FILES['image']['name']);
echo '<h1>Got it</h1>'.$image;
//if it is not empty
if (isset($_FILES))
{
//get the original name of the file from the clients machine
$filename = stripslashes($_FILES['image']['name']);
echo '<h1>Got it 2</h1>'.$filename;
//get the extension of the file in a lower case format
$extension = getExtension($filename);
$extension = strtolower($extension);
//if it is not a known extension, we will suppose it is an error and
// will not upload the file,
//otherwise we will do more tests
if (($extension != "jpg") && ($extension != "jpeg") && ($extension !=
"png") && ($extension != "gif"))
{
//print error message
echo '<h1>Unknown extension!</h1>'.$filename.'hi';
$errors=1;
}
else
{
//get the size of the image in bytes
//$_FILES['image']['tmp_name'] is the temporary filename of the file
//in which the uploaded file was stored on the server
$size=filesize($_REQUEST['image']['tmp_name']);
//compare the size with the maxim size we defined and print error if bigger
if ($size > MAX_SIZE*1024)
{
echo '<h1>You have exceeded the size limit!</h1>';
$errors=1;
}
//we will give an unique name, for example the time in unix time format
$image_name=time().'.'.$extension;
//the new name will be containing the full path where will be stored (images
//folder)
$newname="images/".$image_name;
//we verify if the image has been uploaded, and print error instead
$copied = copy($_REQUEST['image']['tmp_name'], $newname);
if (!$copied)
{
echo '<h1>Copy unsuccessfull!</h1>';
$errors=1;
$newname="copy";
}}}
这是我的 HTML 代码。显然在 for 里面
<td><label for="image">Image</td>
<td><input type="file" id="image" name="image" ></td>
问题是我总是收到错误“未知扩展名”,如果我使用$_REQUEST
而不是$_FILES
那么我只能看到上传文件名的第一个字母。
PS:问题不在于 GetExtention 功能。问题在于任何可以告诉我我缺少什么的$_FILES['image']['name'])
人
。我在过去 2 小时内一直停留在这一点上。谢谢