PDA

View Full Version : درخواست کد ساده



alirezaoshz
پنج شنبه 17 مرداد 1392, 15:17 عصر
سلام
من یه کده آپلود بدونه نیاز به دیتابیس دارم
یه مشکل داره
مشکلش اینه که فایل ها رو با نام خودشون آپلود می کنه ولی من می خوام اسمشون با یه مجموعه از حرف و عدد تغییر کنه

اینم کده آپلودر:


<?php


$uploadpath = 'upload/';
$max_size = 2000;
$alwidth = 900;
$alheight = 800;
$allowtype = array('bmp', 'gif', 'jpg', 'jpe', 'png', 'zip', 'mp3');

if(isset($_FILES['fileup']) && strlen($_FILES['fileup']['name']) > 1) {
$uploadpath = $uploadpath . basename( $_FILES['fileup']['name']);
$sepext = explode('.', strtolower($_FILES['fileup']['name']));
$type = end($sepext);
list($width, $height) = getimagesize($_FILES['fileup']['tmp_name']);
$err = '';

if(!in_array($type, $allowtype)) $err .= 'The file: <b>'. $_FILES['fileup']['name']. '</b> not has the allowed extension type.';
if($_FILES['fileup']['size'] > $max_size*1000) $err .= '<br/>Maximum file size must be: '. $max_size. ' KB.';
if(isset($width) && isset($height) && ($width >= $alwidth || $height >= $alheight)) $err .= '<br/>The maximum Width x Height must be: '. $alwidth. ' x '. $alheight;

if($err == '') {
if(move_uploaded_file($_FILES['fileup']['tmp_name'], $uploadpath)) {
echo 'File: <b>'. basename( $_FILES['fileup']['name']). '</b> successfully uploaded:';
echo '<br/>File type: <b>'. $_FILES['fileup']['type'] .'</b>';
echo '<br />Size: <b>'. number_format($_FILES['fileup']['size']/1024, 3, '.', '') .'</b> KB';
if(isset($width) && isset($height)) echo '<br/>Image Width x Height: '. $width. ' x '. $height;
echo '<br/><br/>Image address: <b>http://'.$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['REQUEST_URI']), '\\/').'/'.$uploadpath.'</b>';
}
else echo '<b>Unable to upload the file.</b>';
}
else echo $err;
}
?>
<div style="margin:1em auto; width:333px; text-align:center;">
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" enctype="multipart/form-data">
Upload File: <input type="file" name="fileup" /><br/>
<input type="submit" name='submit' value="Upload" />
</form>
</div>

alirezaoshz
جمعه 18 مرداد 1392, 16:09 عصر
یکی این موتوره ما رو را بندازه دیگه:ناراحت:

SilverLearn
جمعه 18 مرداد 1392, 16:55 عصر
این اسکریپت حتما موتورتو راه مینداره :)

http://www.p30vel.ir/wp-content/uploads/vel_file_uploader_v1.1.zip

اگر هم نخواستی اسم فایل ها به صورت رندوم باشه و اسم خود فایل ها رو بگذاری فقط کافیه توی فایل کانفیگ

از :
$random_name=true;
به :

$random_name=false;




تغییر بدی

alirezaoshz
جمعه 18 مرداد 1392, 17:18 عصر
حالا نمیشه همون کد بال رو تغییر بدین ؟
امکانش هست یا نه ؟

SilverLearn
جمعه 18 مرداد 1392, 17:52 عصر
آره چرا نشه :)

خوب کاری نداره که .. من کدتو تغییر میدم و بجای اسم فایل یه عدد تصادفی + نام فایل اصلی رو قرار می دم :



<?php


$uploadpath = '/upload/';
$max_size = 2000;
$alwidth = 900;
$alheight = 800;
$allowtype = array('bmp', 'gif', 'jpg', 'jpe', 'png', 'zip', 'mp3');

if(isset($_FILES['fileup']) && strlen($_FILES['fileup']['name']) > 1) {
$uploadpath = $uploadpath . time()+rand(0,100000000) .basename( $_FILES['fileup']['name']);
$sepext = explode('.', strtolower($_FILES['fileup']['name']));
$type = end($sepext);
list($width, $height) = getimagesize($_FILES['fileup']['tmp_name']);
$err = '';

if(!in_array($type, $allowtype)) $err .= 'The file: <b>'. $_FILES['fileup']['name']. '</b> not has the allowed extension type.';
if($_FILES['fileup']['size'] > $max_size*1000) $err .= 'Maximum file size must be: '. $max_size. ' KB.';
if(isset($width) && isset($height) && ($width >= $alwidth || $height >= $alheight)) $err .= 'The maximum Width x Height must be: '. $alwidth. ' x '. $alheight;

if($err == '') {
if(move_uploaded_file($_FILES['fileup']['tmp_name'], $uploadpath)) {
echo 'File: <b>'. basename( $_FILES['fileup']['name']). '</b> successfully uploaded:';
echo 'File type: <b>'. $_FILES['fileup']['type'] .'</b>';
echo 'Size: <b>'. number_format($_FILES['fileup']['size']/1024, 3, '.', '') .'</b> KB';
if(isset($width) && isset($height)) echo 'Image Width x Height: '. $width. ' x '. $height;
echo 'Image address: <b>http://'.$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['REQUEST_URI']), '\\/').'/'.$uploadpath.'</b>';
}
else echo '<b>Unable to upload the file.</b>';
}
else echo $err;
}
?>
<div style="margin:1em auto; width:333px; text-align:center;">
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" enctype="multipart/form-data">
Upload File: <input type="file" name="fileup" />
<input type="submit" name='submit' value="Upload" />
</form>
</div>

AliRezaPro
جمعه 18 مرداد 1392, 23:20 عصر
استفاده از این تابع و در این بازه تا چقدر به سرور فشار میاره ؟
rand(0,100000000)

از این تابع هم میتونید استفاده کنید

function rand_str($length = 32, $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvw xyz1234567890')
{
// Length of character list
$chars_length = (strlen($chars) - 1);

// Start our string
$string = $chars{rand(0, $chars_length)};

// Generate random string
for ($i = 1; $i < $length; $i = strlen($string))
{
// Grab a random character from our list
$r = $chars{rand(0, $chars_length)};

// Make sure the same two characters don't appear next to each other
if ($r != $string{$i - 1}) $string .= $r;
}

// Return the string
return $string;
}