Willkommen, Gast ( Anmelden | Registrierung )     [ Hilfe | Mitglieder | Suche ]

 
Reply to this topicStart new topic
> Dateimanager: Upload Resize
paulinsche
Beitrag Thu. 30. April 2009, 10:02
Beitrag #1


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 154
Mitglied seit: 03.07.2006
Mitglieds-Nr.: 91



Große Bilder können mit dem Hack per Upload auf einen vorgegebenen Pixelwert verkleinert werden. Kleinere Bilder als Vorgabe sind davon nicht berührt. Zudem wird mit dem Upload auch der Dateiname komplett kleingeschrieben und Sonderzeichen und Umlaute entfernt.

Bei mir läuft's prima. Lediglich mit transparenten png-Daten scheint es nicht so zurechtzukommen. So hab ich das einfach auskommentiert. Näheres siehe unten. Benutzung auf eigene Gefahr.

In den Ordner backend/inc/ die Dateien "mod.upl_resize.php" und "inc.upl.php" reinladen bzw. letztere überschreiben.
Ebenso im Ordner "backend/tpl/standard/" die Datei "filelist.tpl" überschreiben.

Bei der Datei "inc.upl.php" sind am Ende der Datei die letzten paar Zeilen ab dem Kommentar hinzugefügt worden.
QUELLTEXT
// Upload Resize and Rename
// by Felix Praschak - www.inallermunde.de - web@inallermunde.de
include('mod.upl_resize.php');

Datei "filelist.tpl"
Zeile 59: Pfadanpassung an das Projekt verzeichnis (wenn nicht im ROOT) mod_upl_resize.php
QUELLTEXT
//write relative path to file
$img = '../media/'.$fm->get_directory_name($folder_kompl).$file_path;

Zeilen 110 bis 112 hinzugefügt. Hier kann man die gewünschte Dateigröße festlegen (value = x).
QUELLTEXT
<!--BEGIN RESIZING-->
                        Gr&ouml;&szlig;e: <input name="newpicsize" type="text" value="600" size="5" maxlength="4" />
<!--END RESIZING-->

In der Datei "mod.upl_resize.php" ganz am Schluß kann man angeben, für welches Dateiformat die Größenänderung angewandt werden soll. Im Moment ist nur JPG aktiviert, GIF und PNG ist auskommentiert.

Datei "mod.upl_resize.php"
Zeile 20:
QUELLTEXT
//set picture quality (0 - 100), default: 80
$quality = 80;

Davelee hat angemerkt, dass bei ihm zu große Bilder (3072x2304) eine Fehlermeldung bringen.
Wenn ich noch was anmerken soll, einfach melden.

Angehängte Datei  upload_resize.zip ( 13.53KB ) Anzahl der Downloads: 43


Gruß
Rainer

Der Beitrag wurde von paulinsche bearbeitet: Fri. 10. July 2009, 07:21
Go to the top of the page
 
+Quote Post
saschapi
Beitrag Thu. 30. April 2009, 11:14
Beitrag #2


Advanced Member
********

Gruppe: Moderators
Beiträge: 911
Mitglied seit: 26.06.2006
Wohnort: Essen; Ruhrgebiet
Mitglieds-Nr.: 4



Danke! smile.gif


--------------------
Go to the top of the page
 
+Quote Post
Taturo
Beitrag Tue. 19. May 2009, 16:09
Beitrag #3


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 328
Mitglied seit: 29.08.2006
Wohnort: Konstanz / Bodensee
Mitglieds-Nr.: 216



Hallo Rainer,
bei mir werden die Bilder auf 5x5 Pixel verkleinert. Habe an deinen Dateien nichts geändert.

Sefrengo Version 01.04.03

Gruss,
Andreas
Go to the top of the page
 
+Quote Post
davelee
Beitrag Wed. 20. May 2009, 12:31
Beitrag #4


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 170
Mitglied seit: 15.05.2007
Mitglieds-Nr.: 908



ZITAT(Taturo @ Tue. 19. May 2009, 17:09) *
Hallo Rainer,
bei mir werden die Bilder auf 5x5 Pixel verkleinert. Habe an deinen Dateien nichts geändert.

Sefrengo Version 01.04.03

Gruss,
Andreas


Hi taturo, ich hatte das gleich Problem
mit diesen änderungen hat es dann aber funktioniert

Go to the top of the page
 
+Quote Post
tsunami
Beitrag Mon. 15. June 2009, 16:28
Beitrag #5


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 186
Mitglied seit: 27.10.2006
Mitglieds-Nr.: 317



Hallo !
Der Hack funktioniert bei mir einwandfrei. Habe nur ein Problem im Backend, dass ich extrem (horizontal) scrollen muss.
Angehängte Datei  screenshot.JPG ( 32.94KB ) Anzahl der Downloads: 37

Kann man die Breite des Textfeldes "Grösse" nicht kleiner machen, dass man auch die Bearbeiten-Icons im Viewport
hat ?

Gruss Tsunami
Go to the top of the page
 
+Quote Post
davelee
Beitrag Mon. 15. June 2009, 17:36
Beitrag #6


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 170
Mitglied seit: 15.05.2007
Mitglieds-Nr.: 908



Dürfte normalerweise nicht so breit sein da länge mit size="5" angegeben ist
Welchen browser verwendest du ?
Go to the top of the page
 
+Quote Post
tsunami
Beitrag Mon. 15. June 2009, 18:06
Beitrag #7


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 186
Mitglied seit: 27.10.2006
Mitglieds-Nr.: 317



Den FF 3.0.11

Habs auch kurz mal im IE7/IE8 getestet - dasselbe....leider
Go to the top of the page
 
+Quote Post
davelee
Beitrag Mon. 15. June 2009, 18:40
Beitrag #8


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 170
Mitglied seit: 15.05.2007
Mitglieds-Nr.: 908



Vieleicht hängt es ja mit deinem vorigen Beitrag zusammen (Formularfelder formatieren)

Was sagt denn die developer toolbar ? ansonsten einfach eine CSS Eigenschaft hinzufügen
Go to the top of the page
 
+Quote Post
tsunami
Beitrag Tue. 16. June 2009, 07:39
Beitrag #9


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 186
Mitglied seit: 27.10.2006
Mitglieds-Nr.: 317



Ist nicht auf der gleichen Installation wie die Geschichte mit den Formularfeldern.

Hatte bei meiner Installation auf welcher ich den Upload-Hack teste aber noch SF 1.4.1 im Einsatz. Habe nun auf 1.4.3 geupdatet. Und jetzt funktioniert es einwandfrei mit der Darstellung des Textfeldes. Bedeutend kleiner als vorher wink.gif
Go to the top of the page
 
+Quote Post
silwue
Beitrag Tue. 7. July 2009, 11:08
Beitrag #10


Member
**

Gruppe: Members
Beiträge: 35
Mitglied seit: 20.09.2006
Wohnort: Graubünden
Mitglieds-Nr.: 247



Hallo zusammen

Der Resize klappt bei mir ebenfalls toll! Danke viel Mals. Hatte das schon länger gesucht!

Ich hatte ebenfalls diese Fehlermeldung bei sehr grossen Bildern. Da wir aber unsere eigener Provider sind, haben wir die Memory_limit in PHP von 32 auf 64 MB erhöht. Nun klappt auch dieser grosse Upload!

Grüsse
Silvan

Der Beitrag wurde von silwue bearbeitet: Tue. 7. July 2009, 17:54


--------------------
----------------------------------------------------------------------------------------------

Webdesign | Webhostaing von wembastaz gmbh
Hosting zu super fairen Preisen - auch für dein Sefrengo-Projekt!

----------------------------------------------------------------------------------------------
Go to the top of the page
 
+Quote Post
toto
Beitrag Wed. 8. July 2009, 07:46
Beitrag #11


Advanced Member
******

Gruppe: AdvancedMembers
Beiträge: 236
Mitglied seit: 14.07.2006
Wohnort: Bad Oeynhausen
Mitglieds-Nr.: 138



Tach zusammen,

hab die Dateien ausgetauscht, aber bei mir passiert rein gar nix. ich hab da nix mit resize stehen??? Muß ich cache löschen oder ähnliches??

gruß toto


--------------------
Corporate Design, Printdesign, Webdesign, Podcast, Videocast und Beratung bei Junggebauer Grafik & Design
Go to the top of the page
 
+Quote Post
silwue
Beitrag Thu. 9. July 2009, 09:09
Beitrag #12


Member
**

Gruppe: Members
Beiträge: 35
Mitglied seit: 20.09.2006
Wohnort: Graubünden
Mitglieds-Nr.: 247



ZITAT(toto @ Wed. 8. July 2009, 08:46) *
Tach zusammen,

hab die Dateien ausgetauscht, aber bei mir passiert rein gar nix. ich hab da nix mit resize stehen??? Muß ich cache löschen oder ähnliches??

gruß toto


Hallo toto

Ich musste auch noch die Anpassungen gem. dieser bereits beschriebenen Anpassung machen. Dann klappte es super.

Grüsse
Silvan


--------------------
----------------------------------------------------------------------------------------------

Webdesign | Webhostaing von wembastaz gmbh
Hosting zu super fairen Preisen - auch für dein Sefrengo-Projekt!

----------------------------------------------------------------------------------------------
Go to the top of the page
 
+Quote Post
tsunami
Beitrag Fri. 10. July 2009, 06:47
Beitrag #13


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 186
Mitglied seit: 27.10.2006
Mitglieds-Nr.: 317



Hätte noch ein Frage zu dem Feld (Grösse) wo ja die voreingestellte Grösse steht z.b. 600 (600px). Möchte ich jetzt aber mal doch ein Originalbild hochladen geht dies nicht. Habe mal das Feld
leer gelassen und ein Bild hochgeladen...die Grösse beträgt dann 5x3px. Wäre gut wenn man auch die Option hätte das Originalbild hochzuladen.
Oder geht dies bei euch ? Natürlich via SF-Dateimanager und nicht FTP.

Gruss Tsunami
Go to the top of the page
 
+Quote Post
paulinsche
Beitrag Fri. 10. July 2009, 07:16
Beitrag #14


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 154
Mitglied seit: 03.07.2006
Mitglieds-Nr.: 91



Gib dann doch einfach in das Feld die max. Pixelgröße ein, also in diesem Fall die Originalgröße…
Go to the top of the page
 
+Quote Post
tsunami
Beitrag Wed. 15. July 2009, 06:45
Beitrag #15


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 186
Mitglied seit: 27.10.2006
Mitglieds-Nr.: 317



Hallo

Danke für die Info !

Habe noch folgendes festgestellt. Wenn ich im Dateimanager das gleiche Bild (1877x1447/502KB) in einer tieferen "Verschachtelung" z.b.

ab Basisverzeichnis.....dateien/04_angebote/angebote/

ablegen bzw. uploaden möchte, bekomme ich diese Fehlermeldung:

ZITAT
Warning: getimagesize(../media/dateien/04_angebote/angebote/Unwetter-307_0737-bearbeitet.jpg): failed to open stream: No such file or directory in /home/www/web200/html/backend/inc/mod.upl_resize.php on line 79
Das Bildformat wird leider nicht unterstüzt. Nur JPEG, GIF und PNG.

wenn ich das gleiche auf

dateien/04_angebote/

uploaden möchte, funktioniert es !

Sobald ich also 3 Unterordner in der Struktur habe, schlägt der Upload fehl....An was kann es liegen ?

Gruss Tsunami
Go to the top of the page
 
+Quote Post
paulinsche
Beitrag Wed. 15. July 2009, 07:09
Beitrag #16


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 154
Mitglied seit: 03.07.2006
Mitglieds-Nr.: 91



Hallo Tsunami,

kann ich leider nicht nachvollziehen. Ich bin grad 6 Ebenen tief gegangen ohne jegliche Fehlermeldung.
Vielleicht musst du den "refresh"-Wert in Zeile 88 etwas höher setzen? Nur eine vage Vermutung, bin kein Programmierer…
Go to the top of the page
 
+Quote Post
tsunami
Beitrag Wed. 15. July 2009, 08:50
Beitrag #17


Advanced Member
*****

Gruppe: AdvancedMembers
Beiträge: 186
Mitglied seit: 27.10.2006
Mitglieds-Nr.: 317



Habe ich versucht - nützte leider nichts.
Ich habe nun in einem anderen Ordner (Dateimanager) testhalber eine neue Ebene erstellt. In diese habe ich das gleiche Bild nochmals hochgeladen. Der Upload funktionierte...mal geht's mal nicht.
Danach löschte ich das Bild zuerst und wollte nachher den Ordner löschen. Dann bekomme ich aber die Meldung:

ZITAT
Verzeichnis konnte nicht gelöscht werden!


Dies hängt denke ich auch mit den geänderten Dateien betreffend "Upload Resize" zusammen...oder wieso lässt sich dieser einfach nicht löschen ? Es befindet sich ja nichts mehr in diesem Ordner...
Go to the top of the page
 
+Quote Post
silwue
Beitrag Mon. 20. July 2009, 15:37
Beitrag #18


Member
**

Gruppe: Members
Beiträge: 35
Mitglied seit: 20.09.2006
Wohnort: Graubünden
Mitglieds-Nr.: 247



ZITAT(tsunami @ Wed. 15. July 2009, 09:50) *
Habe ich versucht - nützte leider nichts.
Ich habe nun in einem anderen Ordner (Dateimanager) testhalber eine neue Ebene erstellt. In diese habe ich das gleiche Bild nochmals hochgeladen. Der Upload funktionierte...mal geht's mal nicht.
Danach löschte ich das Bild zuerst und wollte nachher den Ordner löschen. Dann bekomme ich aber die Meldung:



Dies hängt denke ich auch mit den geänderten Dateien betreffend "Upload Resize" zusammen...oder wieso lässt sich dieser einfach nicht löschen ? Es befindet sich ja nichts mehr in diesem Ordner...


Hallo
Das hängt sicher mit dem Owner zusammen. Wenn der Ordner mit Sefrengo erstellt wurde (php) kann es bei manchen Provider sein, dass es einen anderen Owner bekommen hat. Dann kann man Ordner mit FTP nicht mehr löschen.

Ich schätze auch, dass ein so neu erstellter Ordner nicht die nötigen Rechte hat (777) - darum der Fehlschlag.

Hoffe das Hilfe....
Grüsse
swu


--------------------
----------------------------------------------------------------------------------------------

Webdesign | Webhostaing von wembastaz gmbh
Hosting zu super fairen Preisen - auch für dein Sefrengo-Projekt!

----------------------------------------------------------------------------------------------
Go to the top of the page
 
+Quote Post
toto
Beitrag Tue. 11. August 2009, 13:40
Beitrag #19


Advanced Member
******

Gruppe: AdvancedMembers
Beiträge: 236
Mitglied seit: 14.07.2006
Wohnort: Bad Oeynhausen
Mitglieds-Nr.: 138



bei mir kommt das im Dateimanager und darunter die Fileliste.

QUELLTEXT
get_parent_directories($iddirectory=$_POST['iddirectory'], $idclient); $folder = $_POST['iddirectory']; //get file-IDs of selected Directory $db_dir = $fm->get_files_in_directory($folder, $client); while($db_dir->next_record()) { $idfile_dir = $db_dir->f('idupl'); $folderscan = $folderscan.'//'.$idfile_dir; } $folderarray = explode ('//',$folderscan); //sort file-IDs to extract the latest file-ID function sortiere($m, $n) { if ($m == $n) return 0; return ($m < $n) ? 1 : -1; } usort($folderarray, sortiere); //get filename of uploaded file, delete special characters (german) $file_path = $_FILES['userfile']['name']['0']; $file_path = preg_replace('/[^ a-zA-Z0-9._]/', '#', $file_path); $file_path = str_replace('##','-',$file_path); $file_path = str_replace(' ','-',$file_path); $file_path = str_replace('#','-',$file_path); //write relative path to file $img = '../media/'.$fm->get_directory_name($folder_kompl).$file_path; //generate lower case file name $img_kl = strtolower($file_path); //set path for reloading $uri = $_SERVER['PHP_SELF'].'?area=upl&viewtype=compact&idexpand='.$folder_kompl; //get new picture size - min. 5px if($_POST['newpicsize']<5){ $maxsize = 5; } else{ $maxsize = $_POST['newpicsize']; } //get actual picture information $imagesize = getimagesize($img); $hoehe = $imagesize[1]; $breite = $imagesize[0]; $typ = $imagesize[2]; //check if jpeg,gif or png - if not die if(($typ != 1)&&($typ != 2)&&($typ != 3)){ echo "Das Bildformat wird leider nicht unterstüzt. Nur JPEG, GIF und PNG."; header("refresh:4;url=$uri"); die(); } //if width is longer side - rezise if($hoehe < $breite){     $ratio = $hoehe / $breite; if($breite < $maxsize){ $hoehe_n = $hoehe; $breite_n = $breite; } else{ $hoehe_n = $maxsize * $ratio; $breite_n = $maxsize; }} //if height is longer side - rezise else{     $ratio = $breite / $hoehe; if($hoehe < $maxsize){ $hoehe_n = $hoehe; $breite_n = $breite; } else{ $hoehe_n = $maxsize; $breite_n = $maxsize * $ratio; } } //overwrite existing, original sized image /* //save as GIF if ($typ == 1) { $src = imagecreatefromgif($img); $dest = imagecreatetruecolor($breite_n,$hoehe_n); imagecopyresampled($dest,$src,0,0,0,0,$breite_n,$hoehe_n,$breite,$hoehe); imagegif($dest,$img,$quality); } */ //save as JPEG if ($typ == 2) { $src = imagecreatefromjpeg($img); $dest = imagecreatetruecolor($breite_n,$hoehe_n); imagecopyresampled($dest,$src,0,0,0,0,$breite_n,$hoehe_n,$breite,$hoehe); imagejpeg($dest,$img,$quality); } /* //save asPNG if ($typ == 3) { $src = imagecreatefrompng($img); $dest = imagecreatetruecolor($breite_n,$hoehe_n); imagecopyresampled($dest,$src,0,0,0,0,$breite_n,$hoehe_n,$breite,$hoehe); imagepng($dest,$img,$quality); } */ //file name to lower case $fm->rename_file_fs( $idupl = $folderarray[0], $img_kl ); //update file and reload page $fm->update_file($idupl = $folderarray[0],$idclient,$filename = $img_kl,$directory,$filetype,$status,$description,$used); header("refresh:0;url=$uri"); } /****************************************************************************** End of PICTURE RESIZE ******************************************************************************/ ?>


--------------------
Corporate Design, Printdesign, Webdesign, Podcast, Videocast und Beratung bei Junggebauer Grafik & Design
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 Besucher lesen dieses Thema (Gäste: 1 | Anonyme Besucher: 0)
0 Mitglieder:

 



RSS Vereinfachte Darstellung Aktuelles Datum: 28.3.24 - 16:36

Sefrengo ist ein eingetragenes Markenzeichen und urheberrechtlich geschützt.
Copyright 2009 Design & Daten, Alle Rechte vorbehalten.