Ik had bij mijn vorige vraag dit antwoord gekregen:

ini_set("upload_max_filesize", "2M");

Dit werkt perfect. Maar nu wil ik dat er een Foutmelding pagina komt als een bestand groter is.
Hoe kan ik dat erbij zetten welke codes ?

Deze error page moet er komen : ./add.image.php?error=filetype

Dit is het script als je die eventueel nodig moet hebben.

<?php
ini_set("upload_max_filesize", "1M");
///////////////////////////////////////////////////////////////////////////////
// //
// Program Name : ProPhotoHost //
// Release Version : 1.0 //
// Home Page : http://www.prophotohost.com //
// Program Author : Jake P //
// Supplied by : drew010 //
// Nullified by : CyKuH [WTN] //
// Distribution : via WebForum, ForumRU and associated file dumps //
// //
///////////////////////////////////////////////////////////////////////////////


session_start();
include('i.setup.php');
include('i.connection.php');
include('i.function.php');

if($mode == "upload") {
$num_files = count($file);
for($i = 0; $i < $num_files; $i++) {
if($file_size[$i] != 0) {
if($file_type[$i] != "image/pjpeg" and $file_type[$i] != "image/gif" and $file_type[$i] != "image/x-png") {
if($page == "more") {
header("location: ./add.image.php?mode=more&error=filetype");
exit;
}
else {
header("location: ./add.image.php?error=filetype");
exit;
}
exit;
}
}
}
for($i = 0; $i < $num_files; $i++) {
if($file_size[$i] != 0) {

$size = $file_size[$i];
$base = random(32, "");
$original = $file_name[$i];

switch($file_type[$i]) {
case "image/pjpeg":
$ext = "jpg";
break;
case "image/gif":
$ext = "gif";
break;
case "image/x-png":
$ext = "png";
break;
}

$name = $base . "." . $ext;

$image_size = getimagesize($file[$i]);
$width = $image_size[0];
$height = $image_size[1];

copy($file[$i], "./hosted/" . $name);

if($width > $height) {
$new_width = 50/$image_size[0];
$new_height = $image_size[1] * $new_width;
$new_width = 50;
}
else {
$new_height = 50/$image_size[1];
$new_width = $image_size[0] * $new_height;
$new_height = 50;
}

//print($file_type[$i]);
//exit;

switch($file_type[$i]) {
case "image/pjpeg":

$dst_img = ImageCreate($new_width, $new_height);
$src_img = ImageCreateFromJPEG("./hosted/" . $name);

imagecopyresized($dst_img, $src_img, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

imagejpeg($dst_img, "./hosted/thumb_" . $name, 100);

break;
case "image/x-png":

$dst_img = ImageCreate($new_width, $new_height);
$src_img = ImageCreateFromPNG("./hosted/" . $name);

imagecopyresized($dst_img, $src_img, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

imagepng($dst_img, "./hosted/thumb_" . $name, 100);

break;
}

$date = now();

$sql = "INSERT INTO image (image_name,image_original,image_ext,image_size,image_width,image_height,image_caption,image_member_id,image_status,created_on,updated_on) VALUES ('$base','$original','$ext','$size','$width','$height','$caption[$i]','$session_member_id','A','$date','$date')";
$result = mysql_query($sql);
}
}

header("location: ./home.php");
}
?>
if($file_size[$i] != 0) {
echo ' file is te groot?';
$size = $file_size[$i];
$base = random(32, "");
$original = $file_name[$i];

switch($file_type[$i]) {
case "image/pjpeg":
$ext = "jpg";
break;
case "image/gif":
$ext = "gif";
break;
case "image/x-png":
$ext = "png";
break;
}
sec :S
Het werkt wel er komt file is te groot? te staan maar daar onder nog de foutmelding. Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 2073 bytes)

Ik heb liever dat hij dan naar deze pagina gaat:

./add.image.php?error=filetype
euh dan moet je inplaats van die file is te groot een redirect scripte plaatsen ej?:s
Laat maar het is al gelukt!

Reageren