URL: https://www.overclockers.at/coding-stuff/php_frage_or_die_bei_upload_193476/page_1 - zur Vollversion wechseln!
Hallo,
habe einen FTP auf den man via FTP (evtl irgendwann auch über ein uploadscript, wenns der gratisanbieter zulässt) Daten uppen kann. Auf der php-Seite hat man dann eine Tabelle in der der Namen, Dateigröße und Typ aufgelistet werden.
Wird allerdings eine Datei soeben upgeloaded, bekommt man einen Error für die Zeile in der die Dateigröße ermittelt wird:
Code: PHP$fs2 = round((filesize($f2))/1024);
ZitatWarning: filesize() [function.filesize]: stat failed for superpr0n.pdf in /users/url/www/index.php on line 1337
versuch mal ein @round()...
ps: netter dateiname
mag gar nicht wissen was du da hostest 
naja, unterdrücken der Fehlermeldung is auch ein Weg, aber ich würd gern Signalisieren, dass das geuppt wird (im Optimalfall auch eine Zeit angeben, aber damit müsst ich den Buffer auslesen oder wwi was ... zumindest hab ich sowas in der Art mit javaservlets mal gemacht)
PS: das sind pr0n tutorials in braille zum ausdrucken für den Nadeldrucker
@datei: jajajajaja
naja das wird ein bissi schwer bis unmöglich. da müsstest auf systemdatein zugreifen, die bei einem gratis anbieter mit 100% sicherheit gesperrt sind (sonst wär er ziemlich dämlich). was du ja machen könntest wäre, dass du eine liste anlegst, wo die dateinamen gespeichert werden. wenn ein neuer name auftaucht, sperrst du mal die seite für z.B. 5 Minuten. wenn die datei in diesen 5 minuten die größe verändert hat -> bleibts noch immer für 5 minuten gesperrt. und immer so weiter bis halt die größe gleich bleibt, dann gibst es wieder frei und haust es in die liste dazu. das kannst entweder über eine mysql oder halt filebased machen. Ist halt ein "workaround" 
Warum kann man es nicht einfach so machen, dass Dateien die hochgeladen werden grundsätzlich inaktiv sind und dann über die Webanwendung freigeschaltet werden müssen?
naja, das problem wird ja sein, dass wenn du das mit ftp uploadedst, dass du nicht weis wie groß die datei ist bis sie oben ist. So dann hast du noch das problem, dass wenn du einen ftp client verwendest, kannst auch nicht gleichzeitig dazu ein php script starten -> ergo nicht möglich.
Das einzige was du machen kannst is, dass du halt über ein webinterface erst die datei freischaltest für die anzeige... aber setzt halt wieder einen "menschen" vorraus, der das macht
und ich glaub das is in dem fall nicht der sinn
Warum nicht? Das soll derjenige machen der die Datei hochlädt.
ist die datei vielleicht gesperrt, während sie hochgeladen wird? dann könntest du das vorher überprüfen.
na so og kompliziert hab ichs mir nicht vorgestellt 
Ok, dann werd ich einfach die Fehlermeldung unterdrücken. Das is nur ein Portal für Vorlesugsunterlagen/Skriptsammlungen/Audiodatein von Vorlesungsmitschnitten für einen Studiengang mit 30 Personen.
Für den Zweck kann eine unterdrückte Fehlermeldung verkraftet werden!
btw: hab leider noch keine zeit gehabt zu schaun wie ich das automatisieren könnt (also alle paar min schaun, ob eine neue Datei am ftp is, wenn eine neue Datei da ist, dann diese in die DB eintragen - also Name, Dateityp, Größe); sprich: bis jetzt war ich die Person, die die tabelleneinträge manuell gemacht hat. Also kann cih ja slebst auch abprüfen, ob die Datei schon 100%ig oben ist.
Aber Optimum wäre eben ein automatisches Eintragen gewesen
edit:
gesperrt? Ich glaub die Datei existiert unter dem komischen Bufferstream-name der nicht dem Dateinamen entspricht.
Also ich hab manuell den Dateinamen ageben müssen und das php-skript holt sich eben per explode-array den Datentyp und per filesize die Größe.
falls nicht gesperrt: wie überprüf ich das? Btw: is ein freeanbieter, also hab ich kein upload-skript auf html-Basis. Also das Überprüfen via javascript spielts nicht.
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026