upload

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

duaura
 

upload

Message le Ven Jan 02, 2004 22:37

Je cherche à pouvoir proposer à mes visiteurs d'uploader des images sur mon site.

Pour ceci j'ai trouvé ce petit script:

Dans un dossier appelé 'upload' j'ai mis ceci:

dans 'index.php'

Code: Tout sélectionner
<html>
<head>
<title>Upload script</title>
</head>
<body>

<form method="post" action="upload.php3" ENCTYPE="multipart/form-data">
<input type="file" name="file_name" enctype="multipart/form-data"><br>
<input type="hidden" name="MAX_FILE_SIZE" value="10000000">
<input type="submit" value="Envoyer">
</form>

</body>
</html>




Dans le même dossier, fichier 'upload.php3'

Code: Tout sélectionner
<?
if ($file_name == "none")
   {
   print "Spécifier un fichier à envoyer.";
   }

else
   {   
   /* indiquer $dest_file qui correspond au répertoire de destination */
   $dest_file="www/upload/";

   /* enlève un "\"  */
   $source_file=stripslashes($file_name);
   
   /* copie du fichier */
   $res_copy=copy($source_file , $dest_file);
   
   print "Fichier envoyé.";
   }
?>


Si je laisse le chmod de ce dossier 'upload' à 755 j'obtient ceci sur la page de confirmation:
Code: Tout sélectionner
Warning: copy(www/upload/): failed to open stream: No such file or directory in /home/allgsm/www/upload/upload.php3 on line 16


Si je met le chmod à 777 (comme il faut normalement faire je pense): erreur 500.


Merci de votre aide!

duaura
 

Message le Mer Jan 07, 2004 20:37

Personne n'a une idée :roll:


yannouk
WRInaute accro
WRInaute accro
 
Messages: 2138
Inscription: Sam Oct 11, 2003 12:35

Message le Mer Jan 07, 2004 22:15

si ca peut t'aider, chez mio j'ai ca:

Code: Tout sélectionner
<?
$url = "images/immo/";
$urlmini = "images/immo/mini/";
$tab = split('\.',$Fichier_name);
$tmp = $url;
while(file_exists($url)) {
   $url = $tmp;
   $num = mt_rand(0,9999999999).".".$tab[count($tab)-1];
   $url .= $num;
}
//$num correspond au nom du fichier, $tmp correspond au chemin d'acces, $url c'est le chemin complet
copy($Fichier,$url);

// fonction qui reduit une image a partir d un fichier et l enregistre dans un ti_fichier
// Nom du fichier, tx de compression, Taille hauteur max, Taille largeur Max, rep source, rep de destination, prefixe a mettre
function reduit_fichier($fichier_image,$scale,$max_v,$max_h,$source,$destination,$prefixe)
{
    // MAX_V = HAUTEUR -- MAX_H = LARGEUR
    // le nom de l'image "scalée" commencera par ti_ et le nom du fichier original
   $tmp = getimagesize($source.$fichier_image);
    $ti_fichier_image=$prefixe.$fichier_image;
    global $nomfichier;
   if($tmp[2] == 1) {
      return;
   } else if($tmp[2] == 2) {
      $im = ImageCreateFromJpeg("$source"."$fichier_image");
   } else if($tmp[2] == 3) {
      $im = ImageCreateFromPng("$source"."$fichier_image");
   }
    $v=ImageSY($im); // $v prend la hauteur
    $h=ImageSX($im); // $h prend la largeur
    //Floor Arrondi à l'entier inférieur
   
    //ON GERE LA HAUTEUR
    if ($v > $max_v) // Si la hauteur Img, est plus grand que le max, on reduit
    {
        $taux_hauteur=$v/$max_v;    // On recupere le taux necessaire pour retrecir
        $ti_v=(int)floor($max_v); // ti_v = taille final de la hauteur
        $ti_h=(int)floor($h/$taux_hauteur); // ti_h = taille final de la largeur
    }
    else $ti_v=$v; // Sinon on fixe la hauteur

    // Si il n'a pas deja subbit une modification de la taille
    if ($ti_h!="") $h_comp = $ti_h; else $h_comp = $h;
    if ($ti_v!="") $v_comp = $ti_v; else $v_comp = $v;

    //ON GERE LA LARGEUR
    if ($h_comp > $max_h)
    {
        $taux_largeur=$h_comp/$max_h;
        $ti_h=(int)floor($max_h);
        $ti_v=(int)floor($v_comp/$taux_largeur);
    }
    else $ti_h=$h_comp;
    $ti_im = ImageCreate($ti_h,$ti_v);
    imagecopyresized($ti_im,$im,0,0,0,0,$ti_h,$ti_v,$h,$v);
    imagejpeg($ti_im,"$destination"."$ti_fichier_image",$scale);
    $nomfichier = $destination.$ti_fichier_image;
}
reduit_fichier("$num",75,75,108,"$tmp","$urlmini","st_");

?>



mais c'est largement simplifiable etant donné que mon script prend l'image uploadée, et en cree une miniature "a la volée"
A+++


yannouk
WRInaute accro
WRInaute accro
 
Messages: 2138
Inscription: Sam Oct 11, 2003 12:35

Message le Mer Jan 07, 2004 22:16

je precise ca c'est un fichier que j'utilise en include

duaura
 

Message le Ven Jan 09, 2004 16:19

yannouk a écrit:je precise ca c'est un fichier que j'utilise en include

Je comprend pas trop, ça veut dire quoi concrètement?

Sinon à part les lignes 2 et 3 j'ai rien besoin de personnaliser dans le script?

Si j'ai bien compris il faut aussi que je rajouter un dossier (dont le nom figure aux lignes 2 et 3) et que je lui mette un chmod 777?

Merci de ton aide!


Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités