Nicht mehr ganz neu hier
Hi,
hab da mal wieder ein Problem undzwar möchte ich ein Thumb durch PHP erstellen lassen. Das klappt auch wenn ich es mit einem Bild mache, nun wollte ich aber mal probieren das ganze mit mehr als nur einem Bild zu mache. Aber iwie klappt da nix hab die Vermutung, das es iwie an $_FILES['fupload']['name']; liegt weiß aber nicht genau ich geb euch mal den CODE:
Index.php
FUNCTIONS.php
hab da mal wieder ein Problem undzwar möchte ich ein Thumb durch PHP erstellen lassen. Das klappt auch wenn ich es mit einem Bild mache, nun wollte ich aber mal probieren das ganze mit mehr als nur einem Bild zu mache. Aber iwie klappt da nix hab die Vermutung, das es iwie an $_FILES['fupload']['name']; liegt weiß aber nicht genau ich geb euch mal den CODE:
Index.php
Code:
<?php
session_start();
require 'functions.php';
if(isset($_FILES['fupload'])) {
$_SESSION['groesse'] = $_POST['groesse'];
$path_to_image_directory = 'images/full/';
$path_to_thumbs_directory = 'images/thumbs/';
if(preg_match('/\.(jpg)|(gif)|(png)$/', $_FILES['fupload']['name'])) {
$filename = $_FILES['fupload']['name'];
$source = $_FILES['fupload']['tmp_name'];
$target = $path_to_image_directory . $filename;
move_uploaded_file($source, $target);
createThumbnail($filename);
} else {
echo 'Bitte nur Bilder im Format: *.jpg, *.png, *.gif';
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="css/default.css" />
<link rel="stylesheet" href="css/reset.css" />
<script type="text/javascript" src="script.js"></script>
<title>Untitled Document</title>
</head>
<body>
<div id="container">
<?php if(!isset($_POST['anzahl'])) { ?>
<form method="post" action="<?php $_SERVER['PHP_SELF'] ?>">
<label>Wieviele Thumbs mchtest du erstellen ?</label><br />
<input type="text" name="anzahl" />
<input type="submit" value="o.k" />
</form>
<?php } if(isset($_POST['anzahl'])) { ?>
<form enctype="multipart/form-data" action="<?php $_SERVER['PHP_SELF'] ?>" method="POST">
<label for="groesse">Breite der Thumbs ?</label><br />
<input type="text" name="groesse" id="groesse" /><br />
<br /><br />
<label for="t1">Bilder hochladen</label><br />
<?php
for($i = 0; $i < $_POST['anzahl']; $i++) {
echo '<input type="file" name="fupload" /><br />';
}
?>
<br />
<input type="submit" value="Go!" />
</form>
<?php } ?>
</div>
</body>
</html>
FUNCTIONS.php
Code:
<?php
function createThumbnail($filename) {
$final_width_of_image = $_SESSION['groesse'];
$path_to_image_directory = 'images/full/';
$path_to_thumbs_directory = 'images/thumbs/';
if(preg_match('/[.]jpg$/', $filename)) {
$im = imagecreatefromjpeg($path_to_image_directory . $filename);
} else if(preg_match('/[.]gif$/', $filename)) {
$im = imagecreatefromgif($path_to_image_directory . $filename);
} else if(preg_match('/[.]png$/', $filename)) {
$im = imagecreatefrompng($path_to_image_directory . $filename);
}
$ox = imagesx($im);
$oy = imagesy($im);
$nx = $final_width_of_image;
$ny = floor($oy * ($nx / $ox));
$nm = imagecreatetruecolor($nx, $ny);
imagecopyresized($nm, $im, 0, 0, 0, 0, $nx, $ny, $ox, $oy);
if(!file_exists($path_to_thumbs_directory)) {
if(mkdir($path_to_thumbs_directory)) {
imagejpeg($nm, $path_to_thumbs_directory . $filename);
$tn = '<a href="'. $path_to_image_directory . $filename .'"><img style="border: 0;" src="'. $path_to_thumbs_directory . $filename .'" alt="'. $filename .'" /></a>';
$tn .= '<br />Congrats! Your folder has been successfuly created.';
echo $tn;
}
} else {
imagejpeg($nm, $path_to_thumbs_directory . $filename);
$tn = '<a href="'. $path_to_image_directory . $filename .'"><img style="border: 0;" src="'. $path_to_thumbs_directory . $filename .'" alt="'. $filename .'" /></a>';
$tn .= '<br />Congrats! Your image has been successfuly created.';
echo $tn;
}
}
?>
Zuletzt bearbeitet: