ציטוט:
נכתב במקור על ידי Saint
אוקיי, בניתי מערכת העלאת קבצים.... קטן לא?
עכשיו רציתי שכשמעלים קובץ אז הוא ירנדר שם אחר כמו a2nc8g5n3c לדוגמא...
הקוד הולך ככה:
PHP קוד:
<? if ($Upload)
{
$upload_path = getcwd();
function generate_code($chars){
for($i=0;$i<=($chars-1);$i++){
$r0 = rand(0,1); $r1 = rand(0,2);
if($r0==0){$r .= chr(rand(ord('A'),ord('Z')));}
elseif($r0==1){ $r .= rand(0,9); }
if($r1==0){ $r = strtolower($r); }
}
return $r;
}
$size = "10";
$random_password = generate_code($size);
echo "קובץ: " , $file_name , ", הועלה בהצלחה! <br>";
echo "לצפייה \ להורדה <a href='files/$random_password .$type'>לחץ כאן</a>";
copy($file, "$upload_path/files/$random_password .$type");
}
?>
<html dir="rtl">
<body>
<!-- dStudio FreeSystems Section --!>
<center>
<form action="<? echo $PHP_SELF ?>" method="post" enctype="multipart/form-data" name="form1">
<p>
<input type="file" name="file"> <br> סוג \ סיומת הקובץ:<input type="text" name="type"><br>* לדוגמה gif וtxt<br>
</p>
<p>
<input type="submit" name="Upload" value="שלח">
</p>
</form>
</center>
</body>
</html>
זה לא בעייה להבין מה הולך בקוד....
אבל הבעייה האמיתית היא שנגיד הסיומת של הקובץ לא נתפסת ברינדור.... אז עשיתי שלפני השליחה יהיה צריך למלא שם קובץ.... אבל אני רוצה שזה יקלוט אוטומטי בלי לכתוב של קובץ.....
|
הנה כמה פונקציות:
PHP קוד:
$F1_name = $_FILES['F1']['name'];;
$F1_type = $_FILES['F1']['type'];;
$F1_size = $_FILES['F1']['size'];;
$F1 = $_FILES['F1']['tmp_name'];;
אני יתן לך דוגמא מה עשיתי ב up-one
השתמשתי אם הפונקציה time()
ואז עשיתי "-" ושמתי את השם של הקובץ (המקורי)
וככה יש לך כל פעם שם שונה
הרי מה הסיכוי שבאותה שנייה יעלו שני קבצים אם אותה סיומת ובאותו שם..
אפסיים כמעת