PDA

View Full Version : مشکل در آپلود فایل در هاست



revilsee
سه شنبه 10 مرداد 1391, 10:54 صبح
سلام لطفا به من کمک کنید گیر کردم !!! ممنون
فرمی درست کردم که فایل آپلود میکنه البته در localhost به درستی آپلود می کنه و داخل پوشه ای که میخواستم میریزه اما در هاست که دارم نمیریزه خطاشم اینه

Warning: copy() [function.copy]: open_basedir restriction in effect. File(/usr/local/apache/htdocs\upload\ sound.jpg) is not within the allowed path(s): (/home/:/usr/lib/php:/tmp) in /home/u575697512/public_html/admin_news.php on line 119

Warning: copy(/usr/local/apache/htdocs\upload\ sound.jpg) [function.copy]: failed to open stream: Operation not permitted in /home/u575697512/public_html/admin_news.php on line 119
File uploaded successfully.


اینم کد php که عمل آپلود باهاش انجام میدم

<?php
if (@is_uploaded_file($_FILES["userfile"]["tmp_name"])) {
copy($_FILES["userfile"]["tmp_name"], $_SERVER['DOCUMENT_ROOT'].'\upload\ ' . $_FILES["userfile"]["name"]);
echo "<p>File uploaded successfully.</p>";
}
?>

اینم فرمم


<form enctype="multipart/form-data" action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="2048000">
File: <input name="userfile" type="file" /> &nbsp; &nbsp; &nbsp; &nbsp;
<input type="submit" value="Upload" />
</form>

narsisss
سه شنبه 10 مرداد 1391, 11:15 صبح
شما مشکل کد ندارین این مشکل اجازه دسترسی روی سروره که اگه سرورتون ویندوز باشه باید permission فولدری که میخواین توش آپلود کنین رو برای write اجازه شو تیک بزنین
و اگه سرور لینوکس هست باید با استفاده از chmode اجازه دسترسی 777 بهش بدین

revilsee
سه شنبه 10 مرداد 1391, 19:31 عصر
شما مشکل کد ندارین این مشکل اجازه دسترسی روی سروره که اگه سرورتون ویندوز باشه باید permission فولدری که میخواین توش آپلود کنین رو برای write اجازه شو تیک بزنین
و اگه سرور لینوکس هست باید با استفاده از chmode اجازه دسترسی 777 بهش بدین

من داخل پوشه آپلود میخوام کپی کنم و این کاری که گفتینو کردم
شاید آدرس که میدم اشتباه
ببخشید من تازه کارم الان آدرس کپی کردن فایلمو کجا بایدبزارم


<?php
if (@is_uploaded_file($_FILES["userfile"]["tmp_name"])) {
copy($_FILES["userfile"]["tmp_name"], $_SERVER['DOCUMENT_ROOT']. '/home/u575697512/public_html\upload\ ' . $_FILES["userfile]["name"]);
echo "<p>File uploaded successfully.</p>";
}
?>

narsisss
چهارشنبه 11 مرداد 1391, 11:30 صبح
نیازی به این همه آدرس دهی نیست
اگه فولدر آپلود تو همین فولد قرار گرفته که کدهاتون هست کد زیر رو استفاده کنین اوکی میشه :


<?php
if (@is_uploaded_file($_FILES['userfile']['tmp_name'])) {

$newname="uploads/". $_FILES['userfile']['name'];

copy($_FILES["userfile"]["tmp_name"],$newname);
echo "<p>File uploaded successfully.</p>";
}

?>