הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   עזרה במערכת העלאת קבצים (https://hosts.co.il/forums/showthread.php?t=8065)

Saint 03-12-05 21:01

עזרה במערכת העלאת קבצים
 
אוקיי, בניתי מערכת העלאת קבצים.... קטן לא?
עכשיו רציתי שכשמעלים קובץ אז הוא ירנדר שם אחר כמו 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>

זה לא בעייה להבין מה הולך בקוד....
אבל הבעייה האמיתית היא שנגיד הסיומת של הקובץ לא נתפסת ברינדור.... אז עשיתי שלפני השליחה יהיה צריך למלא שם קובץ.... אבל אני רוצה שזה יקלוט אוטומטי בלי לכתוב של קובץ.....

Oppis 03-12-05 21:16

ציטוט:

נכתב במקור על ידי 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()
ואז עשיתי "-" ושמתי את השם של הקובץ (המקורי)
וככה יש לך כל פעם שם שונה
הרי מה הסיכוי שבאותה שנייה יעלו שני קבצים אם אותה סיומת ובאותו שם..
אפסיים כמעת


כל הזמנים הם GMT +2. הזמן כעת הוא 18:24.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ