"../",
"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 .= "
";
include_once($paths[version] . "output_functions.php");
include_once($paths[version] . "dlg_box.php");
$box = new dlg_box();
$box->head = table_two_items(
"",
"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;
}
?>