echo - ausgabe des php-scripts beim upload mit flash as3
lima-city → Forum → Die eigene Homepage → Flash und Silverlight
array
ausgabe
code
dank
date
datei
datum
fehler
fehlermeldung
file
http
kontrolle
log
pfad
problem
referenz
target
type
url
zeile
-
hallo
wie kann ich an die echo-werte eines php-scripts kommen, wenn ich versuche eine datei zu uploaden?
also speziell hier
[...] referenzen.push(new FileReference()); referenzen[0].addEventListener(Event.COMPLETE,completeHandler); [...] private function completeHandler(event:Event):void { trace(event.target.type); text_upload[2].inhalt.text="fertig"; } soll das mit trace realiasiert werden.
danke! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Du willst die geparste PHP-Datei zurück geben? Dann musst du die Datei erst hochladen, dann ausführen und was du hier zurückbekommst sind deine "Echo-Werte". Ich würde bei sowas aber aus Sicherheitsgründen aufpassen.
-
naja, das problem ist, das ich die upload-funktion aus der F1 verwende, aber nix ankommt und flash keine fehlermeldung bringt.
im flash zählt es die datenmenge meiner datei usw usf und gibt mir auch die gesamtmenge und die trace-ausgabe aus meinem anfangspost. es kommt auch keine fehlermeldung, daß die php nicht gefunden sei oä
nun mag ich sehen, ob es aus dem php-dokument heraus irgendwelche meldungen kommen. ich weiß nicht, wie ich die echo-werte ausgebe.
hm, was kann denn da sicherheitsmäßig schief gehen? (sekundäre frage ) -
Wenn du eine Datei über Flash aufrufst (getvar o.Ä.), dann gibt es einen Rückgabewert mit dem du arbeiten (ausgeben) kannst.
-
Hallo!
Ist zwar nicht die lösung für das Flashproblem, aber ein kleiner Workaround um doch an die ausgabe zu kommen.
-> In eine Datei schreiben (logdatei)
Dann kannst du nachlesen was alles ausgegeben wurde
Eingefügt in den Code vom anderen Thread:
ob_start(); echo "<pre>".print_r($_FILES, 1)."</pre>"; if ($_FILES["file"]["error"] > 0) { echo "Error: " . $_FILES["file"]["error"] . "<br />"; } else { echo "Upload: " . $_FILES["file"]["name"] . "<br />"; echo "Type: " . $_FILES["file"]["type"] . "<br />"; echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />"; echo "Stored in: " . $_FILES["file"]["tmp_name"] . "<br />"; $move = move_uploaded_file($_FILES["file"]["tmp_name"], "./uploads/".$_FILES["file"]["name"]); if($move == true) echo "erfolgreich hochgeladen"; else echo "Fehler beim hochladen"; } $outputbuffer = ob_get_contents(); ob_end_clean(); echo $outputbuffer; $fp = fopen('log.txt', 'a'); fwrite($fp, "==== ".date("d.m.Y H:i:s")." ====\r\n".$outputbuffer."\r\n\r\n"); fclose($fp);
mit ob_start und ob_get_contents wird einfach die ganze ausgabe zwischen gespeichert und anschliesend in eine datei (log.txt) im selben ordner geschrieben (angehängt) (noch eine zeile mit dor aktullen zeit)
edit:
Damit kannst ja schonmal prüfen wird die Datei vom Flashskript überhaupt aufgerufen. (Die Datei wird automatisch erstellt, um das zu überprüfen kannst du die php Datei mal im Browser aufrufen und dann hasst du schon einen logeintrag (=kontrolle ob rechte um datei zu erstellen)
Beitrag zuletzt geändert: 13.8.2009 14:00:25 von dussel -
ah, super, das ist wirklich super!! hm, dann ist es insgesamt wohl doch kein flash-problem
nach einem trocken-click, ob es klappt (ich schäm mich) hier eine log, die angekommen ist
==== 13.08.2009 14:55:34 ==== <pre>Array ( [Filedata] => Array ( [name] => bild_05.jpg [type] => application/octet-stream [tmp_name] => /home/webpages/tmp/phpV1B3fC [error] => 0 [size] => 26931 ) ) </pre>Upload: <br />Type: <br />Size: 0 Kb<br />Stored in: <br />Fehler beim hochladen
also wird die datei tatsächlich falsch verschoben
hm, muß ich denn den tmp_name - pfad auch angelegt haben ? und wo kommt der überhaupt her? im flash sende ich die daten an
http://sonok.lima-city.de/sonok_12/php.php
der tmp_name-pfad bleibt, auch wenn ich die datei online ausgebe
edit
ohje, der pfad der htaccess schaut ja so aus
/home/webpages/lima-city/sonok/html/sonok_12/
kann das mein problem sein, das da die sachen falsch geschpeichert werden?
wenn ich eine subdomain mache und die verwende (http://info.sonok.de/Unbenannt-2.swf) bleibt dummerweise der pfad bestehen
Beitrag zuletzt geändert: 13.8.2009 15:24:37 von sonok -
der tmp_name-pfad wird in der php.ini fix angegeben und bleib dadurch immer gleich.
Also im Log sieht man: -> file muss Filedata heisen.
ob_start(); echo "<pre>".print_r($_FILES, 1)."</pre>"; if ($_FILES["Filedata"]["error"] > 0) { echo "Error: " . $_FILES["Filedata"]["error"] . "<br />"; } else { echo "Upload: " . $_FILES["Filedata"]["name"] . "<br />"; echo "Type: " . $_FILES["Filedata"]["type"] . "<br />"; echo "Size: " . ($_FILES["Filedata"]["size"] / 1024) . " Kb<br />"; echo "Stored in: " . $_FILES["Filedata"]["tmp_name"] . "<br />"; $move = move_uploaded_file($_FILES["Filedata"]["tmp_name"], "./uploads/".$_FILES["Filedata"]["name"]); if($move == true) echo "erfolgreich hochgeladen"; else echo "Fehler beim hochladen"; } $outputbuffer = ob_get_contents(); ob_end_clean(); echo $outputbuffer; $fp = fopen('log.txt', 'a'); fwrite($fp, "==== ".date("d.m.Y H:i:s")." ====\r\n".$outputbuffer."\r\n\r\n"); fclose($fp);
edit: file natürlich überall ausbesser (hatte eines vergessen oben bei if ($_FILES["Filedata"]["error"] > 0))
Beitrag zuletzt geändert: 13.8.2009 17:49:03 von dussel -
so ist es !!
also, ich hab das mit dem filedata natürlich nicht erkannt, aber jemand anderes hat mich den code solange ändern lassen, bis das bild den server erreicht hat ... ein oder zwei minuten nach dussels beitrag
also, für lima-leute, die das auch mal testen wollen, lautet die zeile der glückseligkeit
move_uploaded_file($_FILES["Filedata"]["tmp_name"], "/home/webpages/lima-city/[USERNAME]/html/[OPTIONALE PFADANGABE]/".$_FILES["Filedata"]["name"]);
ich danke wirklich allen, die mir geholfen haben! wenn ihr mal einen soundstreamplayer oder so braucht und alle im netz zu häßlich sind ...
edit
kann geschlossen werden, danke
Beitrag zuletzt geändert: 13.8.2009 17:42:09 von sonok -
Das das Thema abschließend geklärt ist, auf Wunsch:
*CLOSED*
Bei Rückfragen PN an mich. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage