par
Ascari » 06 août 2005, 04:12
Bonjour.
Je fais appel à vous pour m'aider à securiser l'upload de mon site.
Mon probleme est que je n'arrive pas a limiter la hauteur & largeur des images j'ai seulement put mettre une restriction sur la taille.
Le second probleme est que l'utilisation de ma gallerie peut uploader n'importe quel type de fichier j'aimerais que mon site accept que les fichiers ayant l'extension attendue (jpg)
Et enfin 3eme probleme j'aimerais que le fichier uploader soit renomer car j'ai des problemes de fichier ecrassé.
Voici le code du traitement de l'upload de mon site si vous savez m'expliquer comment faire ou modifier mon code.
Je vous remercie d'avance.
<?php
$max_size = 200000;
$today = date("d-m-Y");
if ($Fichier_size > $max_size || $Fichier_size == 0) {
header("location: ../membres.php?up=bad");
}
elseif ($Fichier_2_size > $max_size || $Fichier_2_size == 0) {
header("location: ../membres.php?up=bad");
}
else {
include("../config.php");
session_start();
if(!session_is_registered('username') ||!session_is_registered('smartid')) {
exit;
}
db_connect();
$req = "SELECT * FROM $dbtable WHERE id='$smartid'";
$res = mysql_query($req);
$email = mysql_result($res,$i,"email");
$url = mysql_result($res,$i,"url");
$niveau = mysql_result($res,$i,"niveau");
$ville = mysql_result($res,$i,"ville");
// Image 1
$file_name = str_replace(" ","_",$Fichier_name);
copy($Fichier, $file_name);
$nom = $file_name;
$nom_mini = 'mini_'.$file_name;
$size = getimagesize($nom);
$largeur = $size[0];
$hauteur = $size[1];
$dest_width = ($size[0]/3); // La largeur de la miniature est égale un tiers de celle de l'originale
$dest_eight = ($size[1]/3); // La hauteur de la miniature est égale un tiers de celle de l'originale
$src_img = imagecreatefromjpeg($nom);
$dst_img = imagecreatetruecolor($dest_width,$dest_eight);
imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_eight, $size[0], $size[1]);
imagejpeg($dst_img, $nom_mini, 60);
imagedestroy($src_img);
imagedestroy($dst_img);
$requete2 = "insert into Web_Galerie VALUES('', '$cat', '$username', '$titre', '$email', '$datecrea', '$niveau', '$ville', '$url', '$nom', '$largeur', '$hauteur', '$logiciel', '$today', '$commentaire', '$smartid', '$nom_mini')";
mysql_query($requete2);
header("location: ../membres.php?up=ok");
}
?>
Bonjour.
Je fais appel à vous pour m'aider à securiser l'upload de mon site.
Mon probleme est que je n'arrive pas a limiter la hauteur & largeur des images j'ai seulement put mettre une restriction sur la taille.
Le second probleme est que l'utilisation de ma gallerie peut uploader n'importe quel type de fichier j'aimerais que mon site accept que les fichiers ayant l'extension attendue (jpg)
Et enfin 3eme probleme j'aimerais que le fichier uploader soit renomer car j'ai des problemes de fichier ecrassé.
Voici le code du traitement de l'upload de mon site si vous savez m'expliquer comment faire ou modifier mon code.
Je vous remercie d'avance.
[php]<?php
$max_size = 200000;
$today = date("d-m-Y");
if ($Fichier_size > $max_size || $Fichier_size == 0) {
header("location: ../membres.php?up=bad");
}
elseif ($Fichier_2_size > $max_size || $Fichier_2_size == 0) {
header("location: ../membres.php?up=bad");
}
else {
include("../config.php");
session_start();
if(!session_is_registered('username') ||!session_is_registered('smartid')) {
exit;
}
db_connect();
$req = "SELECT * FROM $dbtable WHERE id='$smartid'";
$res = mysql_query($req);
$email = mysql_result($res,$i,"email");
$url = mysql_result($res,$i,"url");
$niveau = mysql_result($res,$i,"niveau");
$ville = mysql_result($res,$i,"ville");
// Image 1
$file_name = str_replace(" ","_",$Fichier_name);
copy($Fichier, $file_name);
$nom = $file_name;
$nom_mini = 'mini_'.$file_name;
$size = getimagesize($nom);
$largeur = $size[0];
$hauteur = $size[1];
$dest_width = ($size[0]/3); // La largeur de la miniature est égale un tiers de celle de l'originale
$dest_eight = ($size[1]/3); // La hauteur de la miniature est égale un tiers de celle de l'originale
$src_img = imagecreatefromjpeg($nom);
$dst_img = imagecreatetruecolor($dest_width,$dest_eight);
imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_eight, $size[0], $size[1]);
imagejpeg($dst_img, $nom_mini, 60);
imagedestroy($src_img);
imagedestroy($dst_img);
$requete2 = "insert into Web_Galerie VALUES('', '$cat', '$username', '$titre', '$email', '$datecrea', '$niveau', '$ville', '$url', '$nom', '$largeur', '$hauteur', '$logiciel', '$today', '$commentaire', '$smartid', '$nom_mini')";
mysql_query($requete2);
header("location: ../membres.php?up=ok");
}
?>[/php]