Bonjour,
J’ais un souci avec un script d’upload.
Lorsque je vais dans l’espace membre, chez chaque membre j’ais un lien vers sa galerie photos
Voici le code de la pge d’upload
// Définition des variable globales, modifiables à volonté //
// ############################################################ //
// Récupération du dossier dans lequel le fichier sera uploadé //
$DESTINATION_FOLDER = $_POST["up/"]; //
// Taille maximale de fichier, valeur en bytes //
$MAX_SIZE = 10000000; //
// Récupération de l'url de retour //
$RETURN_LINK = $_SERVER['HTTP_REFERER']; //
// Définition des extensions de fichier autorisées (avec le ".")//
$AUTH_EXT = array(".htm", ".html?quot;, ".jpg", ".txt", ".png", //
".bmp", ".gif", ".php", ".php3", ".rar", ".ace", ".zip", ".mp3", ".wav"); //
// ############################################################ //
// Fonction permettant de créer un lien de retour automatique
function createReturnLink(){
global $RETURN_LINK;
echo "<a href='".$RETURN_LINK."'>Retour</a><br>";
}
// Fonction permettant de vérifier si l'extension du fichier est
// autorisée.
function isExtAuthorized($ext){
global $AUTH_EXT;
if(in_array($ext, $AUTH_EXT)){
return true;
}else{
return false;
}
}
// On vérifie que le champs contenant le chemin du fichier soit
// bien rempli.
if(!empty($_FILES["file"]["name"])){
// Nom du fichier choisi:
$nomFichier = $_FILES["file"]["name"];
// Nom temporaire sur le serveur:
$nomTemporaire = $_FILES["file"]["tmp_name"];
// Type du fichier choisi:
$typeFichier = $_FILES["file"]["type"];
// Poids en octets du fichier choisit:
$poidsFichier = $_FILES["file"]["size"];
// Poids en Kilo-octets du fichier choisit:
$poidsFichierK = $poidsFichier/1024;
// Pré formatage en affichage avec 0 chiffre après la virgule , donc pas de virgule.
$poidsFichierK = sprintf("%.0f", $poidsFichierK);
// Code de l'erreur si jamais il y en a une:
$codeErreur = $_FILES["file"]["error"];
// Extension du fichier
$extension = strrchr($nomFichier, ".");
// Si le poids du fichier est de 0 bytes, le fichier est
// invalide (ou le chemin incorrect) => message d'erreur
// sinon, le script continue.
if($poidsFichier <> 0){
// Si la taille du fichier est supérieure à la taille
// maximum spécifiée => message d'erreur
if($poidsFichier < $MAX_SIZE){
// On teste ensuite si le fichier a une extension autorisée
if(isExtAuthorized($extension)){
// Ensuite, on copie le fichier uploadé ou bon nous semble.
$uploadOk = move_uploaded_file($nomTemporaire, $DESTINATION_FOLDER.$nomFichier);
if($uploadOk){
echo "L'upload a réussi !<br><br>";
echo "Nom du Fichier : $nomFichier<br>";
echo "Taille du Fichier : $poidsFichierK Ko<br>";
echo "URL du Fichier : http://URL du site/upload/up/$nomFichier<br><br>";
echo "Aperçu:<br><br>";
switch ($extension) { //Tu fais écrire du html par le php
case ".jpeg": echo "<IMG SRC='$nomFichier'>";break;
case ".bmp": echo "<IMG SRC='$nomFichier'>";break;
case ".gif": echo "<IMG SRC='$nomFichier'>";break;
case ".png": echo "<IMG SRC='$nomFichier'>";break;
case ".jpg": echo "<IMG SRC='$nomFichier'>";break;
case ".rar": echo "<IMG SRC='error/archive.gif'>";break;
case ".ace": echo "<IMG SRC='error/archive.gif'>";break;
case ".zip": echo "<IMG SRC='error/archive.gif'>";break;
case ".php": echo "<IMG SRC='error/web.gif'>";break;
case ".htm": echo "<IMG SRC='error/web.gif'>";break;
case ".html?quot;: echo "<IMG SRC='error/web.gif'>";break;
case ".php3": echo "<IMG SRC='error/web.gif'>";break;
case ".mp3": echo "<IMG SRC='error/son.gif'><bgsound src='$nomFichier'><br>Si vous utilisez [internet explorer](http://www.clubic.com/telecharger-fiche18706-internet-explorer.html) ,vous pourrez entendre votre son.";break;
case ".wav": echo "<IMG SRC='error/son.gif'><bgsound src='$nomFichier'><br>Si vous utilisez internet explorer ,vous pourrez entendre votre son.";break;
default: echo "<IMG SRC='error/inconnu.gif'>"; }
echo "<br><br>";
echo(createReturnLink());
}else{
echo("L'upload a échoué !<br><br>");
echo(createReturnLink());
}
}else{
echo ("Les fichiers avec l'extension $extension ne peuvent pas être uploadés !<br>");
echo (createReturnLink()."<br>");
}
}else{
$tailleKo = $MAX_SIZE / 1000;
echo("Vous ne pouvez pas uploader de fichiers dont la taille est supérieure à : $tailleKo Ko.<br>");
echo (createReturnLink()."<br>");
}
}else{
echo("Le fichier choisi est invalide !<br>");
echo (createReturnLink()."<br>");
}
}else{
echo("Vous n'avez pas choisi de fichier !<br>");
echo (createReturnLink()."<br>");
}
?>
et le code de la galerie
html?gt;<head>
<link rel="stylesheet" type="text/css" href="style-gal.css">
<TITLE><? echo(":: Galerie d'images du service d'upload de VOTRE NOM / PSEUDO ::"); ?></TITLE>
</head><body>
<!-- DEBUT DU SCRIPT -->
<script language="JavaScript1.2">
/*
SCRIPT EDITE SUR L'EDITEUR JAVASCRIPT
http://www.editeurjavascript.com
*/
function ejs_nodroit()
{
alert('Désolé, le clic droit a été désactivé sur cette page. ');
return(false);
}
document.oncontextmenu = ejs_nodroit;
</script>
<!-- FIN DU SCRIPT -->
<body bgcolor="#000000">
<script LANGUAGE="JavaScript">
table_photo = new Array;
table_noms = new Array;
table_type = new Array;
<?
$a = 0;
$handle = opendir("up");
while (($file = readdir())!=false) {
clearstatcache();
$extension = strrchr($file, ".");
if($file!=".." && $file!="." && ($extension==".jpg" || $extension==".jpeg" || $extension==".gif" || $extension==".png" || $extension==".bmp"))
{
// RECHERCHE DU FICHIER
echo "table_photo[$a] = 'up/$file';";
// RECHERCHE DU TYPE DE FICHIER
$file_type = strrchr($file, ".");
$file_type = str_replace(".", "", $file_type);
$file_type = strtoupper($file_type);
echo "table_type[$a] = '$file_type';";
// RECHERCHE DU NOM :
$file_name = strtolower($file);
$file_name = str_replace(".jpg", "", $file_name);
$file_name = str_replace(".jpeg", "", $file_name);
$file_name = str_replace(".gif", "", $file_name);
$file_name = str_replace(".png", "", $file_name);
echo "table_noms[$a] = '$file_name';";
$a++;
}
}
closedir($handle);
?>
function showing_photos(num)
{
if(document.getElementById)
{
diaporama_fin = "";
if(num!=0)
diaporama_fin += "<td height=20><p align=center><A HREF=# onClick='showing_photos("+(num-1)+");return(false)'><img border=0 src=im/suiv.gif></A></td>";
if(num!=(table_photo.length-1))
diaporama_fin += "<td height=20><p align=center><A HREF=# onClick='showing_photos("+(num+1)+");return(false)'><img border=0 src=im/prec.gif></A></td>";
document.getElementById("affichage_photos").innerHTML = "<div align=center><center><table border=0 width=640 cellspacing=0 cellpadding=5 height=500><tr><td colspan=2 valign=middle width=100% bgcolor=#000000 height=20><table border=0 width=100% cellspacing=0 cellpadding=0><tr><td width=50%><img align=absmiddle border=0 src=im/nom-gal.gif width=16 height=16> Nom de l'image : "+table_noms[num]+"</td><td width=50%><img align=absmiddle border=0 src=im/typ-gal.gif width=16 height=16> Type d'image : "+table_type[num]+"</td></tr></table></td></tr><tr><td width=100% colspan=2 valign=middle height=380><table border=0 width=100% cellspacing=1 cellpadding=0 bgcolor=#FF0000 height=100%><tr><td width=100% bgcolor=#000000 height=380><center><img src='"+table_photo[num]+"' BORDER=0></center></td></tr></table></td></tr><br><br><tr>"+diaporama_fin+"</tr></table></center></div>";
}
}
window.onload = new Function("showing_photos(0)")
</SCRIPT>
<DIV align="center" ID="affichage_photos"></DIV>
<a href = "index.php">Retourner au service d'upload ?<a/>
</body>
</html?gt;
mais là je vois toutes les photos uploadée au lieu de voir les photos de la personne pourtant dans le fichier uploader.php on doit envoyer des photos avec le pseudo+1 ou 2etc… pour différencier les différentes personnes.
Si quelqu’un saurait comment faire au mieux cela m’aiderais beaucoup.
Merci d’avance