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

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

Jerba 19-05-09 00:09

למה שלא יעבוד? זה לא שזה פקודה מיוחדת בPHP ,זה בדיוק שולח כHEADER בבקשת הדף את מה שכתבת..
מה שכתבת לא נכון.. אולי הסדר של ההדרים , אולי הרבה דברים.

yakar 19-05-09 07:15

לא עובד מה שהביאו פה.

וכמו שאמרו לפני בphp 4.2 אותו קוד בדיוק עובד..

האם יש סדר מיוחד שצריך לשים ב5?

yakar 19-05-09 16:46

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

הסקריפט הוא :
PHP קוד:

<?php 
$local_file 
"sol-nv-b99-x86-dvd-iso-a.zip"
$download_file "test.bin"
$download_rate "10"

    
// fix for IE catching or PHP bug issue 
    
header("Pragma: public"); 
    
header("Expires: 0"); // set expiration time 
    
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
    
// force download dialog 
    
header("Content-Type: application/force-download"); 
    
header("Content-Type: application/octet-stream"); 
    
header("Content-Type: application/download"); 
    
// use the Content-Disposition header to supply a recommended filename and 
    // force the browser to display the save dialog. 
    
header("Content-Disposition: attachment; filename=".basename($download_file).";"); 
    
header("Content-Transfer-Encoding: binary"); 
    
header("Content-Length: ".filesize($local_file)); 


    
// open file stream 
    
$file fopen($local_file"r"); 
    while(!
feof($file)) { 
        
// send the current file part to the browser 
        
print fread($fileround($download_rate 1024)); 

        
// flush the content to the browser 
        
flush(); 

        
// sleep one second 
        
sleep(1); 
    } 
?>



יתכן שיש בעיה בphp 5 ?

Jerba 19-05-09 18:49

תשמע , כנס ל PHP.NET , תבדוק יש להם צד של עדכונים ודברים כאלה , במקסימום אני מאמין שאם תשלח שם הודעה
על הבאג שלך יענו לך בהתאם..

yakar 20-05-09 08:04

גם בphp 4 יש את הבעיה..
מישהו יודע אולי יש איזה הגדרה שפוגעת? כי ממש השתמשתי בסקריפט שנתנו פה בעבר ועבד..

yard2010 20-05-09 08:08

זה לא באג ב-PHP... זה יכול להיות שילוב של הגדרות שרת \ בגדרות PHP לקויות. נסה על שרת אחר ותראה שזה עובד יופי...
: \

yakar 20-05-09 08:41

מישהו הצליח להריץ קוד כזה על Apache 2.2.11 ?
ראיתי שהם שינו משהו בנושא הזה

intercooler3819 20-05-09 10:37

תשלח CONTENT LENGTH בHEADERS
לא אמורה להיות שום בעיה
למרות שממה שאני זוכר יש קצת בעיות עם IE והדברים האלה

חוץ מזה - למה זה מפריע לך?

ציטוט:

נכתב במקור על ידי The Chosen Generl (פרסם 715855)
~מחקתי~

עריכה:
התכוונתי לערוך את ההודעה הקודמת, בכדי להוסיף. ערכתי אותן.
אפשר למחוק את זאת...

ובנוגע לזה - כשעובדים עם PREG_* (אני לא יודע איך זה עובד בPOSIX אבל בPCRE'S זה ככה) אפשר לבצע:
PHP קוד:

<?php
preg_replace
("/(<\/?)(\w+)([^>]*>)/e"
             
"'\\1'.strtoupper('\\2').'\\3'"
             
$html_body);


yakar 20-05-09 15:03

אני שם CONTENT LENGTH בHEADERS הוא לא מציג לי את גודל הקובץ.

זה חשוב מאוד להורדת קבצים על מנת לראות באר הורדה..

יש למישהו פיתרון ?

בניה 20-05-09 17:40

ציטוט:

נכתב במקור על ידי yakar (פרסם 716104)
אני שם CONTENT LENGTH בHEADERS הוא לא מציג לי את גודל הקובץ.

זה חשוב מאוד להורדת קבצים על מנת לראות באר הורדה..

יש למישהו פיתרון ?

תן קישור לקובץ על השרת שלך, נבדוק את ההדרים שהשרת שלך שולח.


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

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