problème d'écriture sur le disque

problème d'écriture sur le disque - PHP - Programmation

Marsh Posté le 22-11-2005 à 18:31:59    

Salut,
Je rencontre un incident lors de l'envoi d'un fichier sur un serveur apache.
Il refuse d'envoyer le fichier dans le répertoire /tmp ni meme aucun autre répertoire
celui-ci est en root:root chmod 777  
Voici le code :
// Définit le répertoire ou sera stoké les images
$directory = "/tmp/";
 
// test si l'image du formulaire précédent a bien été réceptionner methode POST
if($image !="none" ){
 $taille=filesize($image);
 
            // Vérifie que la taille soit bien inférieur a 100 Ko
             if($taille <100000){
  $nom_vrai = $HTTP_POST_FILES['image']['name'];
  $point    = strrpos($nom_vrai,"." );
  if($point){
   $extention = substr($nom_vrai,$point);
  }
  else{
   $extention= "";
  }
                          // le fichier est bien une image
  if($extention==".gif" || $extention==".jpg" ){
                                       // accède au répertoire /tmp  
   chdir("$directory" );
   if (file_exists($nom_vrai)){
    echo"<FONT COLOR='red'>rename the file</FONT>";
    }
    // Copie le fichier sur le disque  
                                                   else{
     if (@move_uploaded_file($image,$nom_vrai)){   :hello:  
      echo "<FONT COLOR='red'>Transfer completed</FONT>";
      mysql_query("UPDATE themes SET img_th = '$directory$nom_vrai'
            WHERE num_th='$num'" );
     }
     else{
      echo "<FONT color='red'>UPLOAD FAILED !!!</FONT>";
     }
    }
   }
  else{
   echo "must be an img file !";
  }
 }
 else{
  echo"too big file";
 }
}
 
Il me met a chaque fois "upload failed !!!"
Je viens de changer ma version mandrake pour une debian 3.1 sarge avec apache / php / mysql installé avec apt-get
Cette fonctionnalité fonctionnait tres bien sous mandrake.
Je me dis qu'il est possible qu'il me menque des modules pour permettre l'upload ?
Ou alors que je l'ai mal configurer dans php.ini ou http2.conf ?
 
*************************
De meme pour une fonctionne de traitement de fichier, quand je fais
$cmd = "ls -lhtcRX /home/waxx/download/ >/tmp/webdwd.txt";
 system($cmd);
 
Il me créer le fichier webdwd.txt mais refuse d'écrire quoi que ce soit a l'interieur.
 
************************
Merci de m'aiguiller afin que je comprenne pouquoi cela ne fonctionne pas.


Message édité par waxx_ganja le 22-11-2005 à 19:26:58
Reply

Marsh Posté le 22-11-2005 à 18:31:59   

Reply

Marsh Posté le 22-11-2005 à 18:40:59    

Commence par virer ce @ devant move_uploaded_file, elle renvoie false donc elle doit balancer une alerte en passant.


Message édité par sielfried le 22-11-2005 à 18:41:15

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 22-11-2005 à 18:56:54    

chose faite, cela ne change rien
j'ai supprimer le @ et le else {  
      echo "<FONT color='red'>UPLOAD FAILED !!!</FONT>";
     }  
et la, il ne m'affiche aucun message d'erreur mais ne copie toujours rien sur le disque dur.

Reply

Marsh Posté le 22-11-2005 à 19:06:06    

avec une balise code, un peu de commentaires et d'intentation... on comprendrait ptêt mieux. Parce que là c'est un peu bordélique...


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Marsh Posté le 22-11-2005 à 19:14:14    

waxx_ganja a écrit :

chose faite, cela ne change rien
j'ai supprimer le @ et le else {  
      echo "<FONT color='red'>UPLOAD FAILED !!!</FONT>";
     }  
et la, il ne m'affiche aucun message d'erreur mais ne copie toujours rien sur le disque dur.


 
Rajoute error_reporting(E_ALL); en haut de ton script et relance-le.
 
Et ce que dit TotalRecall. -_-


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 22-11-2005 à 19:56:56    

//formulaire ajouter un theme  
 echo "
        <FORM method='POST' action='/forum/adm/thadd.php'  ENCTYPE='multipart/form-data'>
 <input type='text' name='libel'>
        <TEXTAREA name='description' cols='30' rows='10'></TEXTAREA>
 <input type='hidden' name='enter' value='$enter'>
 <input type='file' name='image'>
        <input type='submit' value='OK'>
         ";
 
*********************
Les variables $libel, $description, $enter passe bien par contre pour la variable $image il me dit :
 Undefined variable: image in /opt/serv/forum/adm/thadd.php


Message édité par waxx_ganja le 22-11-2005 à 19:59:59
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed