WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik



Im Homepage und Webhosting-Forum --- Downloadzeit berechnen

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.

Forum » PHP & MySQL » Downloadzeit berechnen - 21 Nov 2024 Antworten
im Forum für Webhosting Homepage gefunden:
Downloadzeit berechnen
The Doctor
Pixelschubser
Threadstarter




Beiträge: 9

Hi!

Ich habe bisher schon selber ein Script mir zurecht gebastelt, um die Größe eines PHP-Files auf irgendeinen Server auslesen zu lassen.

Siehe hier:
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39:
= 1024*1024*1024) {
return round($size/(1024*1024*1024), $decimals)." GB";
}
if($size >= 1024*1024) {
return round($size/(1024*1024), $decimals)." MB";
}
if($size >= 1024) {
return round($size/(1024), $decimals)." KB";
}
return $size." byte";
} }
echo get_size("http://$files->url", 2); ?>


Wie kann ich das Script so anpassen, so dass ich die Download-Zeit noch berechnet bekomme?

Also wie lange dauert es mit ISDN, DSL 1000, usw...

Wäre super nett, wenn mir hier einer helfen könnte.

  Profil   Website   Editieren   Zitieren
subjective
Forenheld




Beiträge: 844

Die Verbindungsgeschwindigkeiten werden meist in Bit angegeben - 8 Bit sind 1 Byte. Da du die Bytegröße der Datei hast, kannst du dann einfach rechen.

---
Weaverslave

  Profil   Website   Editieren   Zitieren
The Doctor
Pixelschubser
Threadstarter




Beiträge: 9

Das ist mir schon klar.

Ich habe hier schon was gefunden:
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39: 
40: 
41: 
42: 
43: 
44: 
45: 
46: 
47: 
48: 
49: 
50: 
51:
86400,
                            "hour|s"=>3600,
                            "minute|s"=>60,
                            "second|s"=>1
                             );
            if($seconds < 1) {
                return "< 1second";
            } else {
                $show = FALSE;
                $ausg = "";
                foreach($units as $key=>$value) {
                    $t = round($seconds/$value);
                    $seconds = $seconds%$value;
                    list($s, $pl) = explode("|", $key);
                    if($t > 0 || $show) {
                        if($t == 1) {
                            $ausg .= $t." ".$s.", ";
                        } else {
                            $ausg .= $t." ".$s.$pl.", ";
                        }
                        $show = TRUE;
                    }
                }
                $ausg = substr($ausg, 0, strlen($ausg)-2);
                return $ausg;
            }
        }
    }
    $values = array("DSL"=>768,
                    "ISDN"=>128,
                    "Modem"=>56.6
                      );
    $size = filesize($file);
    $ausg = round($size/(1024), 0)." KB
"; $size *= 8; foreach($values as $key=>$value) { $time = sec_format($size/($value*1024)); $ausg .= $time." @ ".$value." kBaud (".$key.")
"; } return $ausg; } echo download_time("../datei1.zip"); echo "
"; echo download_time("../datei2.zip"); echo "
"; echo download_time("../datei3.zip"); ?>


Mein Problem liegt jedoch in den letzten Zeilen bei echo download_time.. Ich will da ja wieder "http://$files->url" als Wert eingeben. Jedoch funktioniert das aber nicht. Deswegen wende ich mich ja an euch da draussen, weil ich leider nicht der beste Programmierer bin.

Bitte helft mir

  Profil   Website   Editieren   Zitieren
subjective
Forenheld




Beiträge: 844

Im ersten Beitrag hast du eine eigene Funktion get_size(), welche einen HEAD-Request auf einen Webserver macht. Im deinem zweiten Beitrag jedoch nutzt du plötzlich die PHP-Funktion filesize, welche nur für lokale Dateien funktioniert. Warum nutzt du nicht mehr deine eigene Funktion?

---
Weaverslave

  Profil   Website   Editieren   Zitieren
The Doctor
Pixelschubser
Threadstarter




Beiträge: 9

Junge! Ich nutze momentan nur das erste Script! Ich will lediglich das zweite Script nutzen können. Daher war nur meine Frage, wie ich das machen kann ;)

  Profil   Website   Editieren   Zitieren
The Doctor
Pixelschubser
Threadstarter




Beiträge: 9

Ich habe jetzt folgendes gemacht:
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39: 
40: 
41: 
42: 
43: 
44: 
45: 
46: 
47:
86400,
                            "hour|s"=>3600,
                            "minute|s"=>60,
                            "second|s"=>1
                             );
            if($seconds < 1) {
                return "< 1second";
            } else {
                $show = FALSE;
                $ausg = "";
                foreach($units as $key=>$value) {
                    $t = round($seconds/$value);
                    $seconds = $seconds%$value;
                    list($s, $pl) = explode("|", $key);
                    if($t > 0 || $show) {
                        if($t == 1) {
                            $ausg .= $t." ".$s.", ";
                        } else {
                            $ausg .= $t." ".$s.$pl.", ";
                        }
                        $show = TRUE;
                    }
                }
                $ausg = substr($ausg, 0, strlen($ausg)-2);
                return $ausg;
            }
        }
    }
    $values = array("DSL"=>768,
                    "ISDN"=>128,
                    "Modem"=>56.6
                      );
    $size = get_size($url);
    $ausg = round($size/(1024), 0)." KB
"; $size *= 8; foreach($values as $key=>$value) { $time = sec_format($size/($value*1024)); $ausg .= $time." @ ".$value." kBaud (".$key.")
"; } return $ausg; } echo download_time("http://$files->url"); ?>


Jetzt funktioniert allerdings die Umrechnung der Zeit nicht mehr! ArrgghH! Naja ich komme schon mal voran..

Siehe HIER

Diese Nachricht wurde geändert von: The Doctor
  Profil   Website   Editieren   Zitieren
subjective
Forenheld




Beiträge: 844

Ich bin nicht dein Junge.

Der Rückgabewert von get_size() ist keine Zahl, sondern ein formatierter String, welcher dort ab Zeile 28 erstellt wird. Du mußt natürlich die Umwandlung entfernen um die direkte Bytezahl zu bekommen, mit welcher du dann rechnen kannst.

---
Weaverslave

  Profil   Website   Editieren   Zitieren
The Doctor
Pixelschubser
Threadstarter




Beiträge: 9

mmh wie muss ich das denn machen.. Bin bisher immer gut gefahren, mit die Codes zusammenzubasteln ;)

  Profil   Website   Editieren   Zitieren
 

Antworten
Forum » PHP & MySQL » Downloadzeit berechnen

Aktuelle Beiträge zur Hilfe im Forum für Homepage - Downloadzeit berechnen im Forum Homepage Hosting AntwortenLetztes Posting
Cybersicherheit für Unternehmen
in "PHP & MySQL"
3 18.11.2024 14:05 von Gaswer
Wirtschaftslage in der Ukraine
in "PHP & MySQL"
3 22.10.2024 15:04 von Gaswer
Rangliste (Ohne Mysql) (Kompliziertes Ordner System)
in "PHP & MySQL"
3 19.07.2021 06:00 von newtopblog
kleines problem mit phpadmin
in "PHP & MySQL"
5 11.04.2021 22:22 von Zavylon
Counter mit PHP
in "PHP & MySQL"
4 22.03.2021 16:29 von Robeni
Fehlermeldung beim Importieren der Datenbank in phpmyadmin
in "PHP & MySQL"
0 02.08.2019 22:14 von iFuchs
CMS für Online Shop
in "PHP & MySQL"
18 26.05.2019 13:29 von raiserle
Regestrierungproblem
in "PHP & MySQL"
3 28.11.2018 13:20 von norbertofahey
PHP Datum ausgeben?
in "PHP & MySQL"
1 19.10.2018 10:04 von Klaus1973
PHP befehl ausführen
in "PHP & MySQL"
11 16.08.2018 09:08 von Klaus1973
Visual Composer selber programmieren?
in "PHP & MySQL"
0 22.01.2017 23:45 von Redji



Besucher : 8126534    Heute : 452     Gestern : 463     Online : 174     21.11.2024    14:25      0 Besucher in den letzten 60 Sekunden        
Nach oben