par
Invité » 13 nov. 2007, 12:50
salut ryle.
bon, je crois que je dois arreter de coder facon "Banzaiiiiiiiiiiiiiiiii"... je vais me trouver un tuto sur la syntaxe ca me fera du bien
par contre: ca marche pour le nom du fichier (avec un _ au lieu d'un -)
mais l'upload quand a lui ne e fait toujours pas
le chemin que tu me demdandes de changer fonctionnait auparavant.
maintenant j'ai ca:
<?php
session_start();
if (isset($_SESSION['level']) && $_SESSION['level'] == 2)
{
}
else
{
$_SESSION['error'] = "3";
header('Location: ../../error.php');
}
require("../../includes/config.php");
require('../../includes/functions.tpl.php');
while(list($key,$value) = each($_FILES['image']['name']))
{
if(!empty($value))
{
$filename = $value;
//echo $_FILES[image][name][$key]; equivalent to print "$filename<br>";
$uploaddir = "../../gifts";
$allowed_ext = array( 'jpg', 'gif', 'jpeg', 'png' );
$max_size = "50000";
$max_height = "300";
$max_width = "300";
$upload = '';
//get the file's extension
$ext = pathinfo($_FILES['image']['name'][$key]);
$extension = $ext['extension'];
//compare uploaded file with authorized extensions
if (in_array($extension,$allowed_ext))
{
//check the file's size in kb
if($_FILES['image']['size'][$key] > $max_size)
{
print "File '$key' size is too big!";
$upload = false;
}
//check the file's dimension WxH
if ($max_width && $max_height)
{
list($width, $height, $type, $w) = getimagesize($_FILES['image']['tmp_name'][$key]);
if($width > $max_width || $height > $max_height)
{
print "<br>File '$key' height and/or width are too big!";
$upload = false;
}
//upload the file!
else
{
if(empty($upload) && is_uploaded_file($_FILES['image']['tmp_name'][$key]))
{
//create a random name for the uploaded file
$date = date ("Ymd");
$name = random_string();
$uploadname = $date.'_'.$name.'.'.$extension;
print "$uploaddir/$uploadname<br>";
move_uploaded_file($_FILES['image']['tmp_name'][$key],$uploaddir/$uploadname);
}
}
}
}
}
}
?>
je ne pense pas que cela vienne du chemin ou sont stockes les images mais plutot dans ma maniere d'appeller les variables. je pensais a une erreur de { } mais apparement ca me semble ok (il y a pas un soft ou une fonction qui te dit si les { } sont ok?? )
par ailleurs: une fois que j'aurais fini l'upload je dois stocker le chemin vers les images dans une table: ca se recupere toujours avec le $key ?
merci!
salut ryle.
bon, je crois que je dois arreter de coder facon "Banzaiiiiiiiiiiiiiiiii"... je vais me trouver un tuto sur la syntaxe ca me fera du bien ;)
par contre: ca marche pour le nom du fichier (avec un _ au lieu d'un -)
mais l'upload quand a lui ne e fait toujours pas
le chemin que tu me demdandes de changer fonctionnait auparavant.
maintenant j'ai ca:
[php]
<?php
session_start();
if (isset($_SESSION['level']) && $_SESSION['level'] == 2)
{
}
else
{
$_SESSION['error'] = "3";
header('Location: ../../error.php');
}
require("../../includes/config.php");
require('../../includes/functions.tpl.php');
while(list($key,$value) = each($_FILES['image']['name']))
{
if(!empty($value))
{
$filename = $value;
//echo $_FILES[image][name][$key]; equivalent to print "$filename<br>";
$uploaddir = "../../gifts";
$allowed_ext = array( 'jpg', 'gif', 'jpeg', 'png' );
$max_size = "50000";
$max_height = "300";
$max_width = "300";
$upload = '';
//get the file's extension
$ext = pathinfo($_FILES['image']['name'][$key]);
$extension = $ext['extension'];
//compare uploaded file with authorized extensions
if (in_array($extension,$allowed_ext))
{
//check the file's size in kb
if($_FILES['image']['size'][$key] > $max_size)
{
print "File '$key' size is too big!";
$upload = false;
}
//check the file's dimension WxH
if ($max_width && $max_height)
{
list($width, $height, $type, $w) = getimagesize($_FILES['image']['tmp_name'][$key]);
if($width > $max_width || $height > $max_height)
{
print "<br>File '$key' height and/or width are too big!";
$upload = false;
}
//upload the file!
else
{
if(empty($upload) && is_uploaded_file($_FILES['image']['tmp_name'][$key]))
{
//create a random name for the uploaded file
$date = date ("Ymd");
$name = random_string();
$uploadname = $date.'_'.$name.'.'.$extension;
print "$uploaddir/$uploadname<br>";
move_uploaded_file($_FILES['image']['tmp_name'][$key],$uploaddir/$uploadname);
}
}
}
}
}
}
?>
[/php]
je ne pense pas que cela vienne du chemin ou sont stockes les images mais plutot dans ma maniere d'appeller les variables. je pensais a une erreur de { } mais apparement ca me semble ok (il y a pas un soft ou une fonction qui te dit si les { } sont ok?? )
par ailleurs: une fois que j'aurais fini l'upload je dois stocker le chemin vers les images dans une table: ca se recupere toujours avec le $key ?
merci!