Zurück   Flashforum > Flash und Server > Server-Seite allgemein

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 11-07-2007, 10:40   #1 (permalink)
T-Noblesse
 
Benutzerbild von sobo
 
Registriert seit: Jun 2006
Ort: München
Beiträge: 308
mit PHP jpg generieren und speichern ohne Server-Rechte

Hallo,

ich schicke aus Flash Daten an ein PHP Skript. Dieses generiert mir ein jpg und speichert es temporär in einem Ordner ab. Dann wird es in eine E-Mail eingebunden und wieder gelöscht.
Das funktioniert eigentlich auch. Das Problem ist, beim Kunden wird PHP keine Rechte haben, in einen Ordner auf dem Server zu schreiben. Wie kann ich dieses Problem umgehen?

Danke für Hinweise!

sobo
sobo ist offline   Mit Zitat antworten
Alt 11-07-2007, 11:08   #2 (permalink)
Affine Abbildung
 
Benutzerbild von Samuel
 
Registriert seit: Feb 2002
Ort: Bremen
Beiträge: 15.089
Gib dem Ordner chmod 777
Dann hat PHP die Rechte, PPH wird wohl unter einen anderen Benutzer ausgeführt, als der Besitzer der Ordner.

Wenn du wüsstest wieviele Leute den kritischen Anwendungsbereichen 777 geben

Bei dir wärs ja nur ein Jpg Ordner
__________________
Solange sich auch nur einer an ihn erinnert, solange auch nur ein Herz mit Leidenschaft schlägt - wie kann ein Traum da sterben?

If you use the wrong line ending characters when writing your files, you might find that other applications that open those files will "look funny". - PHP.net

Hier ruhn meine Gebeine - ich wollt, es wären Deine.

Try to look unimportant, they may be low on ammo!

Was ist euer Lieblings-Datentyp? Schreibt mir!
Samuel ist offline   Mit Zitat antworten
Alt 11-07-2007, 11:46   #3 (permalink)
T-Noblesse
 
Benutzerbild von sobo
 
Registriert seit: Jun 2006
Ort: München
Beiträge: 308
Ich weiß, aber ich bekomme diese Rechte "aus Sicherheitsgründen" nicht.
Gibt es irgendeinen Umweg?
sobo ist offline   Mit Zitat antworten
Alt 11-07-2007, 11:48   #4 (permalink)
Affine Abbildung
 
Benutzerbild von Samuel
 
Registriert seit: Feb 2002
Ort: Bremen
Beiträge: 15.089
Wenn die dir "aus Sicherheitsgründen" keinen Ordner für Jpgs geben wollen, haben die ganz andere Probleme, wie ich finde.

Alternativ musst du dir nen anderen Hosts suchen, oder gucken, ob du Schriebrechte in dem temp Verzeichnis vom PHP hast
__________________
Solange sich auch nur einer an ihn erinnert, solange auch nur ein Herz mit Leidenschaft schlägt - wie kann ein Traum da sterben?

If you use the wrong line ending characters when writing your files, you might find that other applications that open those files will "look funny". - PHP.net

Hier ruhn meine Gebeine - ich wollt, es wären Deine.

Try to look unimportant, they may be low on ammo!

Was ist euer Lieblings-Datentyp? Schreibt mir!
Samuel ist offline   Mit Zitat antworten
Alt 11-07-2007, 12:03   #5 (permalink)
T-Noblesse
 
Benutzerbild von sobo
 
Registriert seit: Jun 2006
Ort: München
Beiträge: 308
Ok danke.
Aber zu den Rechten. Ich habe da nicht so den Durchblick. Kann ich festlegen, dass nur mein PHP-Dokument in einen bestimmten Ordner reinschreiben darf?
Wäre es grundsätzlich dann nicht jedem anderen möglich, den Ordner vollzumüllen?
sobo ist offline   Mit Zitat antworten
Alt 11-07-2007, 12:14   #6 (permalink)
Affine Abbildung
 
Benutzerbild von Samuel
 
Registriert seit: Feb 2002
Ort: Bremen
Beiträge: 15.089
Ich gehe mal davon aus, dass der Ordner 755, oder 644 als Rechte hat, diese gehören dem Besitzer des Accounts.
Es sieht so aus, als würde PHP unter einem anderen Besitzer laufen, der keine Rechte hat. Um diese Rechte zu geben, musst du den Ordner für alle User freigeben -> 777, somit haben alle Benutzer lese und schreibrechte (und ausführrechte)
Mir ist kein Weg bekannt, wie man dies auf ein spezielles PHP Script beschränkt.

Aber ich denke nicht, dass es allzu problematisch ist. Denn man müsste erstmal diesen Ordner auf deinem Host als Fremder User finden und was hätte man davon, diesen Ordner zu benutzen?
__________________
Solange sich auch nur einer an ihn erinnert, solange auch nur ein Herz mit Leidenschaft schlägt - wie kann ein Traum da sterben?

If you use the wrong line ending characters when writing your files, you might find that other applications that open those files will "look funny". - PHP.net

Hier ruhn meine Gebeine - ich wollt, es wären Deine.

Try to look unimportant, they may be low on ammo!

Was ist euer Lieblings-Datentyp? Schreibt mir!
Samuel ist offline   Mit Zitat antworten
Alt 12-07-2007, 10:01   #7 (permalink)
T-Noblesse
 
Benutzerbild von sobo
 
Registriert seit: Jun 2006
Ort: München
Beiträge: 308
So, nach stundenlangem googeln kenne ich mich gar nicht mehr aus. Auf die Frage, weshalb der leere Ordner nicht zugänglich gemacht werden kann, kam folgende mail:

It cannot be placed inside the document root, but you need to address some kind of system temporary directory, which is considered safe.
For example, PHP uses a safe directory to store files when you use an upload input (<input type="file"...>) and then lets you open them. You sholud figure out how to retrieve such a directory ad use it.
If you cannot manage to do that, you should try to store the image in memory, rather than on the filesystem, which would be even safer and faster.

Kannst Du mir sagen, was er damit meint?

Das Bild soll einfach nur kurz zwischengespeichert werden. Nach dem Versand wird es wieder gelöscht.

Danke!
sobo ist offline   Mit Zitat antworten
Alt 12-07-2007, 10:30   #8 (permalink)
T-Noblesse
 
Benutzerbild von sobo
 
Registriert seit: Jun 2006
Ort: München
Beiträge: 308
Jetzt bin ich auf tmpfile() gestoßen. Das wärs eigentlich. Nur läuft es bei mir so, dass Flash die Bilddaten an ein PHP-Skript schickt, das das Bild generiert. Dann gibt es den Bildnamen an Flash zurück. Jetzt ruft Flash ein anderes PHP-Skript auf, das die mail verschickt. In diesem Skript müsste ich aber wissen, welches Verzeichnis das erste Skript benutzt hat, um auf das Bild zuzugreifen.

Kann ich den Namen des Verzeichnisses irgendwie speichern und an Flash zurückgeben?
sobo ist offline   Mit Zitat antworten
Alt 12-07-2007, 10:46   #9 (permalink)
Affine Abbildung
 
Benutzerbild von Samuel
 
Registriert seit: Feb 2002
Ort: Bremen
Beiträge: 15.089
Such mal nach Session und $_SESSION
__________________
Solange sich auch nur einer an ihn erinnert, solange auch nur ein Herz mit Leidenschaft schlägt - wie kann ein Traum da sterben?

If you use the wrong line ending characters when writing your files, you might find that other applications that open those files will "look funny". - PHP.net

Hier ruhn meine Gebeine - ich wollt, es wären Deine.

Try to look unimportant, they may be low on ammo!

Was ist euer Lieblings-Datentyp? Schreibt mir!
Samuel ist offline   Mit Zitat antworten
Alt 12-07-2007, 13:45   #10 (permalink)
T-Noblesse
 
Benutzerbild von sobo
 
Registriert seit: Jun 2006
Ort: München
Beiträge: 308
Ok, jetzt hab ich versucht das ganze mal zusammenzubauen. Wie zu erwarten war, funktioniert es nicht.

Hier das Skript zum speichern des Bildes:

PHP-Code:
// print out the correct header to the browser
header("Content-type:image/jpeg");
// display the image
ob_start();
imagejpeg($img);
$image_buffer ob_get_contents();
ob_end_clean();
//ImageDestroy($img);
//Create temporary file and write to it
$fp tmpfile();
fwrite($fp$image_buffer);
rewind($fp);

session_start();
$_SESSION['tmp']=$fp
Und hier das Skript zum Einbetten in die mail:
PHP-Code:
 session_start();
  
$fp $_SESSION['tmp'];
  echo(
"fp: ".$fp);
  
$mail->AddEmbeddedImage($fp"configuration""bla.jpg"'base64','image/jpeg'); 
Ich würde mich selbst mehr damit herumschlagen, aber es soll bis heute abend funktionieren.
Kann mir jemand helfen?

Danke!
sobo ist offline   Mit Zitat antworten
Alt 12-07-2007, 13:47   #11 (permalink)
Affine Abbildung
 
Benutzerbild von Samuel
 
Registriert seit: Feb 2002
Ort: Bremen
Beiträge: 15.089
Muss leider im Moment weg, prüfe doch per manuellem Aufruf, was in den variablen steht, ob alles da ist usw
__________________
Solange sich auch nur einer an ihn erinnert, solange auch nur ein Herz mit Leidenschaft schlägt - wie kann ein Traum da sterben?

If you use the wrong line ending characters when writing your files, you might find that other applications that open those files will "look funny". - PHP.net

Hier ruhn meine Gebeine - ich wollt, es wären Deine.

Try to look unimportant, they may be low on ammo!

Was ist euer Lieblings-Datentyp? Schreibt mir!
Samuel ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 12:41 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele