Upload d'image via serveur ftp

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Upload d'image via serveur ftp

Re: Upload d'image via serveur ftp

par AB » 27 août 2010, 19:10

Tu peux essayer cette classe

Re: Upload d'image via serveur ftp

par stealth35 » 27 août 2010, 19:00

pourquoi FTP ? tu met ça sur un serveur distant ?

Upload d'image via serveur ftp

par chachadu44 » 27 août 2010, 11:04

Bonjour,

Voila j'ai un petit problème, je voudrais uploader des images 533x400 .jpg avec le nom du fichier qui doit s'appeler par un numéro (1...99.jpg) via un formulaire sur une interface d'administration avec une connexion ftp quand je clique sur le bouton upload
Voici le code:
<?php
echo '<form action="importimg.php" method="post" enctype="multipart/form-data">';
echo 'Click the Browse button to find the file you wish to upload';
echo '<input type="file" name="imagefile">';
echo '<INPUT TYPE="submit" name="upload" value="upload">';
echo '</form>';
$conn_id = ftp_connect("XXXX.XXXX.com") or die("Connexion au FTP impossible");
$ftp_user = "xxxxx";
$ftp_pass = "xxxxxxxx";
 // Tentative d'identification
if (@ftp_login($conn_id, $ftp_user, $ftp_pass)) {
   echo "Connection au FTP r&eacute;ussi\n";
   } 
 else
 {
 echo "Connexion impossible\n";
   }
?>  
<?php
echo'coucou';
/************************************************************
 * Definition des constantes / tableaux et variables
 *************************************************************/
 
// Constantes
define('TARGET', '../mosaique/');    // Repertoire cible
define('MAX_SIZE', 100000);    // Taille max en octets du fichier
define('WIDTH_MAX', 533);    // Largeur max de l'image en pixels
define('HEIGHT_MAX', 400);    // Hauteur max de l'image en pixels
 
// Tableaux de donnees
$tabExt = array('jpg','jpeg');    // Extensions autorisees
$infosImg = array();
 
// Variables
$extension = '';
$message = '';
$nomImage = '';
 
/************************************************************
 * Creation du repertoire cible si inexistant
 *************************************************************/
if( !is_dir(TARGET) ) {
  if( !mkdir(TARGET, 0755) ) {
    exit('Erreur : le répertoire cible ne peut-être créé ! Vérifiez que vous diposiez des droits suffisants pour le faire ou créez le manuellement !');
  }
}
 
/************************************************************
 * Script d'upload
 *************************************************************/
if(!empty($_POST))
{
  // On verifie si le champ est rempli
  if( !empty($_FILES['fichier']['name']) )
  {
    // Recuperation de l'extension du fichier
    $extension  = pathinfo($_FILES['fichier']['name'], PATHINFO_EXTENSION);
 
    // On verifie l'extension du fichier
    if(in_array(strtolower($extension),$tabExt))
    {
      // On recupere les dimensions du fichier
      $infosImg = getimagesize($_FILES['fichier']['tmp_name']);
 
      // On verifie le type de l'image
      if($infosImg[2] = 2)
      {
        // On verifie les dimensions et taille de l'image
        if(($infosImg[0] <= WIDTH_MAX) && ($infosImg[1] <= HEIGHT_MAX) && (filesize($_FILES['fichier']['tmp_name']) <= MAX_SIZE))
        {
          // Parcours du tableau d'erreurs
          if(isset($_FILES['fichier']['error']) 
            && UPLOAD_ERR_OK === $_FILES['fichier']['error'])
          {
            // On renomme le fichier
            $nomImage = md5(uniqid()) .'.'. $extension;
 
            // Si c'est OK, on teste l'upload
            if(move_uploaded_file($_FILES['fichier']['tmp_name'], TARGET.$nomImage))
            {
              $message = 'Upload réussi !';
            }
            else
            {
              // Sinon on affiche une erreur systeme
              $message = 'Problème lors de l\'upload !';
            }
          }
          else
          {
            $message = 'Une erreur interne a empêché l\'uplaod de l\'image';
          }
        }
        else
        {
          // Sinon erreur sur les dimensions et taille de l'image
          $message = 'Erreur dans les dimensions de l\'image !';
        }
      }
      else
      {
        // Sinon erreur sur le type de l'image
        $message = 'Le fichier à uploader n\'est pas une image !';
      }
    }
    else
    {
      // Sinon on affiche une erreur pour l'extension
      $message = 'L\'extension du fichier est incorrecte !';
    }
  }
  else
  {
    // Sinon on affiche une erreur pour le champ vide
    $message = 'Veuillez remplir le formulaire svp !';
  }
}
?>
le probleme c'est que la connexion ftp reussi bien mais avant que je ne clik sur le bouton upload et ensuite quand je met l'image il ne se passe rien
et aucun message d'erreur ne saffiche.

Comment faire?
Avez vous un script mieux que celui la?

Merci