-
آپلود فایل
برای قسمت آپلود وب سایتم این کد را قرار دادم اما وقتی فایلی را انتخاب میکنم و روی آپلود کلیک میکنم صفحه اصلی وب سایت باز میشود اما اگر این کد را در صفحه دیگری امتحان کنم فایل آپلود میشود به نظر شما مشکل از کجاست؟
[PHP] <?php
$target = "upload/";
$target = $target . basename( $_FILES['uploaded']['name']) ;
$ok=1;
if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target))
{
echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded";
}
else {
echo "Sorry, there was a problem uploading your file.";
}
?>
<form action="<?php $_SERVER['PHP_SELF']?>" method="POST">
<br/>انتخاب فایل: <input name="uploaded" type="file" /><br />
<input type="submit" value="Upload" />
</form>
[/PHP]
-
سلام می تونید از کد زیر استفاده کنید که بهترم هست
[PHP]<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
if(isset($_POST["upload"])){
$des=$_FILES['file']['name'];
if(file_exists($des)){
$i=0;
$name=pathinfo($des);
while(file_exists($des))
$des=$name['filename']."_".(++$i).".".$name['extension'];
$name2=$name['filename'].'.'.$name['extension'];
}
if(move_uploaded_file($_FILES['file']['tmp_name'],$des))
$result=1;
else
$result=0;
sleep(1);
if($result==1){echo "The file $name2 has been uploaded";}
elseif($result==0){echo "Sorry, there was a problem uploading your file.";}
}
?>
<form action="<?php $_SERVER['PHP_SELF']?>" method="post" enctype="multipart/form-data">
<br />select file : <input name="file" type="file" /><br />
<input name="upload" type="submit" value="Upload" />
</form>[/PHP]
-
سلام.
هنگامی می خواهید فایل ارسال کنید، باید enctype فرم رو multipart/form-data قرار دهید.
یعنی خط اول تگ فرم شما باید به این صورت باشد:
[PHP]<form action="<?php $_SERVER['PHP_SELF']?>" method="post" enctype="multipart/form-data">[/PHP]
اگر این قسمت رو درست تنظیم کنید، اسکریپت شما مشکلی نخواهد داشت.
البته می تونید از اسکریپت m p c استفاده کنید که کامل تر از کد شماست. فراموش نکنید که همیشه فرمت و نوع فایلی که آپلود میشه رو چک کنید. چون ممکنه کاربر به جای فایل معمولی، یک shell script آپلود کنه و .... (تمام)
موفق باشید ./.
-
راستی من داشتم یه فایل php رو با فرمت gif آپلود می کردم( :دی ) ولی گفت که فایل به نظر امن نیست. چه شکلی فهمیده؟! function خاصی داره؟
یکی از همین سایت های آپلود.
-
سه تا فیلم آموزشی گیر اوردم:
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
File uploading, ensuring that you only allow a specific set of allowed file extensions. An easy, eff...
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
File uploading, ensuring that you only allow a specific set of allowed file extensions. An easy, eff...
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
File uploading, ensuring that you only allow a specific set of allowed file extensions. An easy, eff...
-
برای قسمت آپلود سایت از این کد استفاده میکنم اما کد کار نمیکنه !!!!!!!!!
[PHP] <?php
$uploadDir = 'upload/';
mysql_error();
if(isset($_POST['upload']))
{
$fileName = $_FILES['userfile']['name'];
$tmpName = $_FILES['userfile']['tmp_name'];
$fileSize = $_FILES['userfile']['size'];
$fileType = $_FILES['userfile']['type'];
$filePath = $uploadDir . $fileName;
$result = move_uploaded_file($tmpName, $filePath);
if (!$result) {
echo "Error uploading file";
exit;
}
$link=mysql_connect("127.0.0.1","root","");
if(!$link)
print "not connect";
$fileName = addslashes($fileName);
$filePath = addslashes($filePath);
$mysql=mysql_query("INSERT INTO file(name, size, type, path ".
"VALUES ('".$fileName."', '".$fileSize."', '".$fileType."', '".$filePath."')");
if($mysql)
print "ok uploaded ";
}
?>
<form action="<?php $_SERVER['PHP_SELF']?>" method="post" enctype="multipart/form-data">
<br />select file : <input name="file" type="file" /><br />
<input name="upload" type="submit" value="upload" />
</form>[/PHP]
-
فایل آپلود نمیشه یا رکورد اضافه نمیشه؟
شما در کدتون هیچ دیتابیسی رو انتخاب نکرده اید. سیستم از کجا بدونه که جدول file در کدوم db هست؟
بعد از کانکت شدن به دیتابیس جدول رو با این کد انتخاب کنید:
[PHP]$db_selected = mysql_select_db('db_name', $link);[/PHP]
-
وقتی روی آپلود کلیک میکنم مرورگر این پیغام را به من نشان میده
[PHP]echo "Error uploading file";[/PHP]
-
شما اسم فیلدی رو که در فرم html هست در قسمت php اشتباه وارد کردید. نام فیلد file هست ولی شما از userfile استفاده کردید
-
چه تغییراتی در کد آپلود اعمال کنم تا فقط اجازه چهار نوع فایل(doc,pdf,zip,powerpoint) برای اپلود را بدهد