ABA


"מחפש סקריפט ב PHP להורדת קבצים לשרת ברמוט"
גירסת הדפסה        
קבוצות דיון בניית אתרים נושא #14136 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 14136
iking 
חבר מתאריך 1.8.02
44928 הודעות
   12:51   04.07.08   
אל הפורום  
  מחפש סקריפט ב PHP להורדת קבצים לשרת ברמוט  
 
   יענו עמוד ב PHP שאני יכניס לו קישור לקובץ

והוא יוריד את הקובץ וישמור אותו על השרת

חיפשתי בגוגל ולא מצאתי

דרך אגב, גם ב ASP יהיה טוב

תודה


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  מישהו :-? iking  07.07.08 18:14 1
  הזוי לא עולה לי שום רעיון :| אף פעם לא עשיתי את זה:| צריך לחשוב על זה: akoka 07.07.08 18:46 2
     לך לא עולה שום רעיון? אתה מרגיש טוב?!?!?!? iking  07.07.08 19:41 3
  ... little O man 08.07.08 09:50 4
     איך בידיוק אני מכין מזה עמוד PHP שעובד? iking  10.07.08 17:37 5
         לפי ההבנה שלי little O man 11.07.08 03:29 11
             בידיוק מה שרשמת iking  11.07.08 05:43 13
                 הסבר: little O man 11.07.08 14:59 14
                     קח את זה יותר רחוק ,אם הוא רוצה לשרת אחר:} akoka 11.07.08 18:35 15
                         זו כבר בעיה אחרת.. little O man 12.07.08 17:00 16
                     איך בידיוק אני יוצר מזה קובץ PHP עם תיבה להכנסת הלינק.. iking  14.07.08 17:34 17
                         אז ככה.. little O man 18.07.08 15:54 26
                             אין לי מושג איך עושים את זה :\ iking  18.07.08 16:07 27
                                 אוקי מצטער שלקח זמן, little O man 23.07.08 11:37 30
     איך בידוק זה קשור למה שהוא ביקש?:S akoka 10.07.08 18:22 6
         הכוונה שלי שהעמוד PHP יהיה על השרת שלי... iking  10.07.08 18:26 8
             זה רק נשמע פשוט תאמין לי.:( אולי ליניב יש פתרון. akoka 10.07.08 18:28 9
                 אני בטוח שאין שום דבר מסובך בשבילך :) iking  10.07.08 18:37 10
     אגב akoka 10.07.08 18:24 7
  ראיתי פעם מערכת העלאת קבצים כזאתי :S DorCohen 11.07.08 05:21 12
  אם אני מבין נכון code_blue  16.07.08 08:40 18
     למה לשים הגנה? זה כאילו אני מוריד ממנו תקובץ... iking  17.07.08 12:40 19
  סעמאקקקקק איך לא חשבתי על זה (כנס) akoka 17.07.08 12:55 20
     איך אני מכין מזה קובץ PHP? iking  17.07.08 13:03 21
         קבל:) akoka 17.07.08 13:17 22
             תודה אך זה נותן הודעת שגיאה... iking  17.07.08 14:14 23
                 אתה בטוח בדקתי מיליון פעם ועובד?:| akoka 18.07.08 11:32 24
                     בטוח במאה אחוז, אפילו ניסיתי עכשיו עוד פעם iking  18.07.08 12:53 25
  קוד שפשוט יעתיק לך קובץ מקישור לשרת? imrihe 21.07.08 22:31 28
     בידיוק זה מה שאני מחפש iking  21.07.08 23:00 29

       
iking 
חבר מתאריך 1.8.02
44928 הודעות
   18:14   07.07.08   
אל הפורום  
  1. מישהו :-?  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   18:46   07.07.08   
אל הפורום  
  2. הזוי לא עולה לי שום רעיון :| אף פעם לא עשיתי את זה:| צריך לחשוב על זה:  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   19:41   07.07.08   
אל הפורום  
  3. לך לא עולה שום רעיון? אתה מרגיש טוב?!?!?!?  
בתגובה להודעה מספר 2
 
   דווקא חשבתי שאתה זה שתגיב ראשון עם הפתרון...


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
little O man
חבר מתאריך 27.5.02
1109 הודעות
   09:50   08.07.08   
אל הפורום  
  4. ...  
בתגובה להודעה מספר 0
 
   בעבר השתמשתי בפונקציה הזו כדי לשאוב תמונות מאתרים שלא נתנו להציג את התמונות דרך האתר שלהם..
מקווה שיעזור לך



function cached_fopen($file, $file_mode, $timeout_seconds = 600, $cache_path = "/tmp"){

$debug=false;

clearstatcache();

$break = explode('/', $_SERVER);
$file = $break;
$ext = substr(strrchr($file, '.'), 1);

$cache_filename=$cache_path . "/" . urlencode($file) .".".$ext;

if ($debug) { print "local_cache creation_time =" . @filemtime($cache_filename) . " actual time = " . time() . " timeout = " . $timeout_seconds ."<p>";}

if ( ( @file_exists($cache_filename ) and ( ( @filemtime($cache_filename) + $timeout_seconds) > ( time() ) ) ) ){
// ok, file is already cached and young enough
if ($debug) { print "using cached file ($cache_filename) <p>";}
}
else
{
if ($debug) { print "cacheing file ($file) to local ($cache_filename)<p>";}

// cache file from net to local
$f = fopen($file,"r");
$f2 = fopen($cache_filename,"w+");
while ($r=fread($f,8192) ) {
fwrite($f2,$r);
}
fclose($f2);
fclose($f);
}

// ok, point to (fresh) cached file
$handle = fopen($cache_filename, $file_mode);
return $handle;

}


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   17:37   10.07.08   
אל הפורום  
  5. איך בידיוק אני מכין מזה עמוד PHP שעובד?  
בתגובה להודעה מספר 4
 
   ותודה :]


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
little O man
חבר מתאריך 27.5.02
1109 הודעות
   03:29   11.07.08   
אל הפורום  
  11. לפי ההבנה שלי  
בתגובה להודעה מספר 5
 
   אתה רוצה לתת לו קישור, ושזה ישמור את זה בשרת שלך.. למרות שהקובץ נמצא בשרת אחר.. תקן אותי אם אני טועה.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   05:43   11.07.08   
אל הפורום  
  13. בידיוק מה שרשמת  
בתגובה להודעה מספר 11
 
   תודה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
little O man
חבר מתאריך 27.5.02
1109 הודעות
   14:59   11.07.08   
אל הפורום  
  14. הסבר:  
בתגובה להודעה מספר 13
 
   אתה פותח תיקייה בשרת שלך שאליה יגיעו כל הקבצים שאתה רוצה להוריד.
ולהשתמש בפונקציה הזו אתה עושה את הדבר הבא:

$location = "./downloads/";
$file_add = "http://www.myaddress.com/downloads/game.pdf";
$file = cached_fopen($FILE_ADD, "r", 6, $location);
echo $file;

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

אם יש בעיה תדבר איתי


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   18:35   11.07.08   
אל הפורום  
  15. קח את זה יותר רחוק ,אם הוא רוצה לשרת אחר:}  
בתגובה להודעה מספר 14
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
little O man
חבר מתאריך 27.5.02
1109 הודעות
   17:00   12.07.08   
אל הפורום  
  16. זו כבר בעיה אחרת..  
בתגובה להודעה מספר 15
 
   צריך להתחבר לFTP,
ולעלות את זה לשרת, זה כאב ראש לא נורמלי, כי רוב השרתים לא תומכים TRANSFER בין אחד לשני..


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   17:34   14.07.08   
אל הפורום  
  17. איך בידיוק אני יוצר מזה קובץ PHP עם תיבה להכנסת הלינק..  
בתגובה להודעה מספר 14
 
   וכפתור שיתחיל להוריד את הקובץ?

אני לא יודע כלום ב PHP ככה שאם תפרט קצת יותר זה יהיה מצוין

תודה :]


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
little O man
חבר מתאריך 27.5.02
1109 הודעות
   15:54   18.07.08   
אל הפורום  
  26. אז ככה..  
בתגובה להודעה מספר 17
 
   ראיתי את מה שיוחאי כתב, אבל זו גם דרך.. וזה לא כזה מסובך.
אתה בונה טופס.. ששולח נתונים לקובץ PHP. בקבלת הנתונים פשוט תקח את הפרמטר של הלינק, ותריץ את הפונקציה, בצורה כזו

$bla = function(x,x,x,x,x);

ואז זה יעלה לך את זה לתיקיה שאתה רוצה בשרת.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   16:07   18.07.08   
אל הפורום  
  27. אין לי מושג איך עושים את זה :\  
בתגובה להודעה מספר 26
 
   אני יודע HTML בסיסי מאוד

אם תפרט יותר זה יעזור


תודה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
little O man
חבר מתאריך 27.5.02
1109 הודעות
   11:37   23.07.08   
אל הפורום  
  30. אוקי מצטער שלקח זמן,  
בתגובה להודעה מספר 27
 
   אני עושה עכשיו משהו נורא בסיסי, מקווה שזה יסדר את הבעיה.
קובץ HTML

<html>
<title></title>
<head></head>

<body>

<form action="remote.php" method="post" />
<input type="text" name="file_add" /> <input type="submit" value="download" />
</form>

</body>
</html>

קובץ PHP שנקרא
remote.php


<?php

function cached_fopen($file, $file_mode, $timeout_seconds = 600, $cache_path = "/tmp"){

$debug=false;

clearstatcache();

$break = explode('/', $_SERVER);
$file = $break;
$ext = substr(strrchr($file, '.'), 1);

$cache_filename=$cache_path . "/" . urlencode($file) .".".$ext;

if ($debug) { print "local_cache creation_time =" . @filemtime($cache_filename) . " actual time = " . time() . " timeout = " . $timeout_seconds ."<p>";}

if ( ( @file_exists($cache_filename ) and ( ( @filemtime($cache_filename) + $timeout_seconds) > ( time() ) ) ) ){
// ok, file is already cached and young enough
if ($debug) { print "using cached file ($cache_filename) <p>";}
}
else
{
if ($debug) { print "cacheing file ($file) to local ($cache_filename)<p>";}

// cache file from net to local
$f = fopen($file,"r");
$f2 = fopen($cache_filename,"w+");
while ($r=fread($f,8192) ) {
fwrite($f2,$r);
}
fclose($f2);
fclose($f);
}

// ok, point to (fresh) cached file
$handle = fopen($cache_filename, $file_mode);
return $handle;

}

// מיקום התיקיה שאליה אתה רוצה שהקבצים ירדו, הרשאה 777
$location = "./downloads/";

// כתובת HTTP מלאה לקובץ
$file_add = $_POST;

// הורד את הקובץ לשרת
$file = cached_fopen($FILE_ADD, "r", 6, $location);

// הצג
echo $file;

?>

לא בדקתי את הקוד, הזה, אלא פשוט רשמתי אותו עם פונקציה פשוטה,
שים לב תיקיית downloads צריכה להיות עם הרשאה 0777 כדי שיהיה אפשר להוריד אליה.

תעדכן אותי אם צריך עזרה נוספת..
בהצלחה!


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   18:22   10.07.08   
אל הפורום  
  6. איך בידוק זה קשור למה שהוא ביקש?:S  
בתגובה להודעה מספר 4
 
   ערכתי לאחרונה בתאריך 10.07.08 בשעה 18:22 בברכה, akoka
 
הוא ביקש להכניס כתובת נניח סתם #

,ואז לבצע הורדה של הקובץ לשרת אחר בremote ,הרעיון היחידי שעולה לי זה CURL ,אבל חיפשתי על זה חומר וזה לא פשוט בכלל.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   18:26   10.07.08   
אל הפורום  
  8. הכוונה שלי שהעמוד PHP יהיה על השרת שלי...  
בתגובה להודעה מספר 6
 
   ואני פשוט יכניס לו קישור www.walla.co.il/test.rar##


ואז פשוט הקובץ ירד לשרת

זה כמו שהאתרים של העלאת קבצים שמאפשרים לעלות אליהם קבצים ברמוט

רק שפשוט אני ישים על השרת שלי וזה ימשוך את הקובץ אליו


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   18:28   10.07.08   
אל הפורום  
  9. זה רק נשמע פשוט תאמין לי.:( אולי ליניב יש פתרון.  
בתגובה להודעה מספר 8
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   18:37   10.07.08   
אל הפורום  
  10. אני בטוח שאין שום דבר מסובך בשבילך :)  
בתגובה להודעה מספר 9
 
   תותח אף פעם לא נכנע :]


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   18:24   10.07.08   
אל הפורום  
  7. אגב  
בתגובה להודעה מספר 4
 
   את clearstatecache לא אמור להכניס אחרי שימוש בפונקציה שיוצרת cache ?

http://il2.php.net/clearstatcache


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DorCohen

   05:21   11.07.08   
אל הפורום  
  12. ראיתי פעם מערכת העלאת קבצים כזאתי :S  
בתגובה להודעה מספר 0
 
   שאתה יכול להוריד קובץ מלינק HTTP לשרת :S
תחפש מערכות כאלה אולי באחת מהן יש תאפשרות הזאתי


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
code_blue  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 5.7.06
21280 הודעות, 7 פידבק
   08:40   16.07.08   
אל הפורום  
  18. אם אני מבין נכון  
בתגובה להודעה מספר 0
 
   אתה רוצה בעצם לקחת קובץ משרת אחר !!
ולהעתיק אותו אלייך ...


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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   12:40   17.07.08   
אל הפורום  
  19. למה לשים הגנה? זה כאילו אני מוריד ממנו תקובץ...  
בתגובה להודעה מספר 18
 
   סה"כ להוריד תקובץ ממנו ולשמור אותו אצלי בשרת

מה מסובך בזה? :\


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   12:55   17.07.08   
אל הפורום  
  20. סעמאקקקקק איך לא חשבתי על זה (כנס)  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 17.07.08 בשעה 12:55 בברכה, akoka
 
כתבתי לך פונקציה שעושה את זה

יאללה כזה פשוט חח


function save_file($url,$folder = null)
{
$handle = file_get_contents($url);

$start_split = explode('/',$url);
$split_extenstion = explode('.',$start_split[sizeof($start_split) - 1]);

$getExtenstion = $split_extenstion[sizeof($split_extenstion) - 1];
$fileName = fopen($folder.$split_extenstion[0].'.'.$getExtenstion,'w');

$write = fwrite($fileName,$handle,strlen($handle));

}
save_file('http://rotter.name/cgi-bin/nor/dcboard.cgi',null);

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

אם יש בעיה תגיד לי


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   13:03   17.07.08   
אל הפורום  
  21. איך אני מכין מזה קובץ PHP?  
בתגובה להודעה מספר 20
 
   ותודה רבה :]


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   13:17   17.07.08   
אל הפורום  
  22. קבל:)  
בתגובה להודעה מספר 21
 
  

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html dir="ltr">
<head>
<title>File Upload</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<style type="text/css">
div#container
{
text-align: center;
}
span.text
{
font-size: 16px;
font-weight: bold;
font-family: verdana;
}
span input.url
{
border: 1px solid gray;
width: 300px;
padding: 5px;
font-size: 12px;
font-family: tahoma;
}
</style>
</head>
<body>
<div id="container">
<div id="formContainer">
<form action="" method="post">
<span class="text">URL</span>
<span><input type="text" name="url" class="url"/></span>
<span><input type="submit" value="send" /></span>
</form>
</div>
</div>
</body>
</html>
<?php
function save_file($url,$folder = null)
{
$handle = file_get_contents($url);

$start_split = explode('/',$url);
$split_extenstion = explode('.',$start_split[sizeof($start_split) - 1]);

$getExtenstion = $split_extenstion[sizeof($split_extenstion) - 1];
$fileName = fopen($folder.$split_extenstion[0].'.'.$getExtenstion,'w');

$write = fwrite($fileName,$handle,strlen($handle));

}
save_file($_POST[url]);
?>


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   14:14   17.07.08   
אל הפורום  
  23. תודה אך זה נותן הודעת שגיאה...  
בתגובה להודעה מספר 22
 
   Parse error: parse error in net.php on line 45

אתה יודע אולי מה הבעיה?


תודה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   11:32   18.07.08   
אל הפורום  
  24. אתה בטוח בדקתי מיליון פעם ועובד?:|  
בתגובה להודעה מספר 23
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   12:53   18.07.08   
אל הפורום  
  25. בטוח במאה אחוז, אפילו ניסיתי עכשיו עוד פעם  
בתגובה להודעה מספר 24
 
   ערכתי לאחרונה בתאריך 18.07.08 בשעה 12:55 בברכה, iking
 
וזה נותן אותה הודעת שגיאה

אולי יש איזה שגיאה בשורה הזו?


$split_extenstion = explode('.',$start_split[sizeof($start_split) - 1]);


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
imrihe

   22:31   21.07.08   
אל הפורום  
  28. קוד שפשוט יעתיק לך קובץ מקישור לשרת?  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
iking 
חבר מתאריך 1.8.02
44928 הודעות
   23:00   21.07.08   
אל הפורום  
  29. בידיוק זה מה שאני מחפש  
בתגובה להודעה מספר 28
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net