upload de fichier
Posté : 01 févr. 2007, 15:55
Bonjour,
j'ai un problème au niveau des droits de fichiers enfin d'après mon hébergeur.
il m'a conseillé la fonction chmod()
j'ai donc réjouter ça au moment du déplacement du fichier
j'ai un problème au niveau des droits de fichiers enfin d'après mon hébergeur.
il m'a conseillé la fonction chmod()
j'ai donc réjouter ça au moment du déplacement du fichier
$fichier=chmod($dest_dossier . $dest_fichier, 777);
Mais sa ne fonctionne pas avec mon code <?php
if(isset($_FILES['photo']))
{
// params
unset($erreur);
$extensions_ok = array('png', 'gif', 'jpg', 'jpeg', 'php', 'css', 'pdf', 'swf', 'fla');
$taille_max = 1000000;
//$dest_dossier ='C:/apachefriends/xampp/htdocs/assoc_arsys/images/';
$dest_dossier = '/var/www/vhost/courant-alternatif.org/home/html/images/';
// utilisez également des slashes sous windows : $dest_dossier = 'd:/damien/photos/';
// vérifications
if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ) )
{
$erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg et swf ou fla !';
}
elseif( file_exists($_FILES['photo']['tmp_name'])
and filesize($_FILES['photo']['tmp_name']) > $taille_max)
{
$erreur = 'Votre fichier doit faire moins de 100000Ko !';
}
// copie du fichier
if(!isset($erreur))
{
$dest_fichier = basename($_FILES['photo']['name']);
// formatage nom fichier
// enlever les accents
$dest_fichier = strtr($dest_fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
// remplacer les caracteres autres que lettres, chiffres et point par _
$dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier);
// copie du fichier
move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);
}
}
if(isset($erreur)){
echo '<p>', $erreur ,'</p>';
}
print "<form method=\"POST\" action=\"#\" enctype=\"multipart/form-data\">
<!-- Limiter la taille des fichiers à 500Ko -->
<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"1000000\" />
<fieldset>
<legend>Envoi de fichiers</legend>
<!-- champs d'envoi de fichier, de type file -->
<p><label for=\"photo\">Photo, document, script...etc :
Type de fichiers acceptés :<br />
png, gif, jpg et swf<br />
</label></p>
<p><input type=\"file\" name=\"photo\" /></p>
<!-- bouton d'envoi -->
<p><input type=\"submit\" name=\"envoi\" value=\"Envoyer les fichiers\" /></p>
</legend>
</fieldset>
</form>";
echo "<p>Votre ip est le <span class=\"red\">".$_SERVER["REMOTE_ADDR"]."</p></span>";
?>
Merci