"../", "version" => "", "project" => "../" . $HTTP_SESSION_VARS[project_dir] . "/"); /******************************************************************************* Dateiübertragung auswerten *******************************************************************************/ if ($submit) { // userfile_name bearbeiten $replace_arr = array(" " => "_", "ä" => "ae", "ö" => "oe", "ü" => "ue"); $userfile_name = strtr($userfile_name, $replace_arr); $convert_sizes = array( ".s" => 100, ".m" => 300, ".l" => 500 ); $result = convert_image($userfile, $userfile_name, $convert_sizes, $msg); if ($result) header("Location: ../$paths[root]$caller2"); $err_msg .= "
Fehler: $msg
"; } /******************************************************************************* Formular anzeigen (evtl. mit Fehlermeldung) *******************************************************************************/ $str .= "
"; // $str .= ""; $str .= "Grafikdatei:


"; $str .= ""; $str .= "
"; include_once($paths[version] . "output_functions.php"); include_once($paths[version] . "dlg_box.php"); $box = new dlg_box(); $box->head = table_two_items( "Neues Bild hinzufügen", "abbrechen"); $box->center = $err_msg . $str; include($paths[version] . "form_html.php"); /******************************************************************************* Konvertiert hochgeladenes auf verschiedene Größen Angabe von Datei-Größenextension => Maximale Breite/Höhe (z.B. ".m" => 250) *******************************************************************************/ function convert_image($org_file, $org_filename, $convert_sizes, &$msg) { global $paths, $HTTP_SESSION_VARS; // Basisname der Originaldatei $dot_pos = strrpos($org_filename, "."); // Extension überprüfen $ext = strtolower(substr($org_filename, $dot_pos + 1)); if (!($ext == "gif" or $ext == "jpg" or $ext == "jpeg")) { $msg = "Die Datei $org_filename hat keine gültige Extension (.gif, .jpg, .jpeg)"; return FALSE; } // Existenz der Datei überprüfen if (!file_exists($org_file)) { $msg = "Die Datei $org_file existiert nicht.
"; return FALSE; } // Größe des Bildes auslesen und Dateiformat überprüfen $image_info = getimagesize($org_file); $width = $image_info[0]; $height = $image_info[1]; $msg .= "Breite des Bildes $width, Höhe des Bildes $height
"; // Basisnamen für konvertierte Dateien ermitteln $base = substr($org_filename, 0, $dot_pos); $msg .= "Basisnamen für Dateien: $base
"; if ($HTTP_SESSION_VARS[local]) //$image_magick_path = "c:\\programme\\imagemagick\\convert"; $image_magick_path = "convert"; else $image_magick_path = "convert"; if ($ext == "jpg" or $ext == "jpeg") // $quality_option = "-quality 50"; foreach ($convert_sizes as $a_size_ext => $a_size) { $msg .= "Konvertieren in Größe $a_size_ext ($a_size).
"; $size_option = ($width > $height) ? "-geometry $a_size" : "-geometry x$a_size"; $new_file = $paths[project] . "user/images/" . $base . $a_size_ext . "." . $ext; if ($HTTP_SESSION_VARS[local]) { $new_file = strtr($new_file, "/", "\\"); } $msg .= $exec_str . "
"; $size2 = getimagesize($new_file); $x = $size2[0]; $y = $size2[1]; $quelldatei = imagecreatefromjpeg($new_file); $factor = 100/$x*$a_size; $height2 = round(($factor*$y)/100); $zieldatei = imagecreate ($a_size, $height2); $test = imagecopyresized($zieldatei,$quelldatei,0,0,0,0,$a_size,$height2,$x,$y); // echo "Test:".$test; ImageJPEG($zieldatei,$new_file) ; if ($return_var != 0) { $msg = "Fehler bei der Ausführung von Image-Magick $exec_str: $return_var
"; return FALSE; } $msg .= "Rückgabewert exec(): $return_var
"; $msg .= implode("
", $output); } return TRUE; } ?>