par
x@v » 31 mai 2007, 01:23
Bonjour,
j'ai une fonction d'upload de fichier qui devrai m'envoyer un fichier mais elle me renvoie trois warnings.
Code : Tout sélectionner
Warning: move_uploaded_file(/var/www/test_connexion/images/geekscottes_002.png) [function.move-uploaded-file]: failed to open stream: No such file or directory in /var/www/caddie/test_connexion/inc/output_fns.php on line 34
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpTqYLaf' to '/var/www/test_connexion/images/geekscottes_002.png' in /var/www/caddie/test_connexion/inc/output_fns.php on line 34
Warning: chmod() [function.chmod]: No such file or directory in /var/www/caddie/test_connexion/inc/output_fns.php on line 35
L'article ssssssssssss à été ajouté à la base.
La fonction
Code : Tout sélectionner
function charger_fichier()
{
if(isset($_FILES['photo']))
{
// params
unset($erreur);
$extensions_ok = array('png', 'gif', 'jpg', 'jpeg', 'txt', 'doc', 'odt', 'ods', 'html', 'htm', 'php', 'css', 'pdf', 'swf', 'fla');
$taille_max = 1000000;
$dest_dossier ='/var/www/test_connexion/images/';
// utilisez également des slashes sous windows : $dest_dossier = 'd:/xav/photos/';
// vérifications
if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ) )
{
$erreur = 'Veuillez sélectionner un fichier de type png, gif, jpg, txt, odt, doc, ods, html, php, css, pdf, 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 10000Ko !';
}
// 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);
chmod($dest_dossier . $dest_fichier, 0777);
}
}
if(isset($erreur)){
echo '<p>', $erreur ,'</p>';
}
}
Merci
Bonjour,
j'ai une fonction d'upload de fichier qui devrai m'envoyer un fichier mais elle me renvoie trois warnings.
[code]
Warning: move_uploaded_file(/var/www/test_connexion/images/geekscottes_002.png) [function.move-uploaded-file]: failed to open stream: No such file or directory in /var/www/caddie/test_connexion/inc/output_fns.php on line 34
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpTqYLaf' to '/var/www/test_connexion/images/geekscottes_002.png' in /var/www/caddie/test_connexion/inc/output_fns.php on line 34
Warning: chmod() [function.chmod]: No such file or directory in /var/www/caddie/test_connexion/inc/output_fns.php on line 35
L'article ssssssssssss à été ajouté à la base.
[/code]
La fonction
[code]
function charger_fichier()
{
if(isset($_FILES['photo']))
{
// params
unset($erreur);
$extensions_ok = array('png', 'gif', 'jpg', 'jpeg', 'txt', 'doc', 'odt', 'ods', 'html', 'htm', 'php', 'css', 'pdf', 'swf', 'fla');
$taille_max = 1000000;
$dest_dossier ='/var/www/test_connexion/images/';
// utilisez également des slashes sous windows : $dest_dossier = 'd:/xav/photos/';
// vérifications
if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ) )
{
$erreur = 'Veuillez sélectionner un fichier de type png, gif, jpg, txt, odt, doc, ods, html, php, css, pdf, 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 10000Ko !';
}
// 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);
chmod($dest_dossier . $dest_fichier, 0777);
}
}
if(isset($erreur)){
echo '<p>', $erreur ,'</p>';
}
}
[/code]
Merci