Réécriture dans un fichier PHP
parousky
Messages postés
325
Date d'inscription
Statut
Membre
Dernière intervention
-
parousky Messages postés 325 Date d'inscription Statut Membre Dernière intervention -
parousky Messages postés 325 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Sur mon site, j'ai la possibilité de charger des images et de les écrire dans un fichier placé dans le répertoire du site. J'ai fais la manip une fois et j'ai écris dans le fichier une image que j'appelle Image.png.
Maintenant, j'aimerais pouvoir modifier cette image en en chargeant une autre (Image2.png).
Alors plutôt que de supprimer Image.png pour ensuite écrire Image2.png, j'ai essayé d'écrire directement Image2.png à l'emplacement Image.png, mais ça ne marche pas vraiment...
Voilà ce que j'ai écris :
Dans ce code, $Photo correspond à Image.png.
Voyez-vous une erreur ?
Merci d'avance !
Sur mon site, j'ai la possibilité de charger des images et de les écrire dans un fichier placé dans le répertoire du site. J'ai fais la manip une fois et j'ai écris dans le fichier une image que j'appelle Image.png.
Maintenant, j'aimerais pouvoir modifier cette image en en chargeant une autre (Image2.png).
Alors plutôt que de supprimer Image.png pour ensuite écrire Image2.png, j'ai essayé d'écrire directement Image2.png à l'emplacement Image.png, mais ça ne marche pas vraiment...
Voilà ce que j'ai écris :
$Photo = $donneesPerso['Photo'];
$content_dir = 'Images/'.$Photo.''; // dossier où sera déplacé le fichier
$tmp_file = $_FILES['fichier']['tmp_name'];
if( !is_uploaded_file($tmp_file) )
{
header('Location: Inscription.php?ErrorLocation=1');
//exit("Le fichier est introuvable");
}
// on vérifie maintenant l'extension
$type_file = $_FILES['fichier']['type'];
if( !strstr($type_file, 'png') && !strstr($type_file, 'jpg') && !strstr($type_file, 'jpeg') && !strstr($type_file, 'bmp') && !strstr($type_file, 'gif') )
{
header('Location: Inscription.php?ErrorPicture=1');
//exit("Le fichier n'est pas une image");
}
if( !move_uploaded_file($tmp_file, $content_dir) )
{
header('Location: XInscription.php?ErrorCopy=1');
//exit("Impossible de copier le fichier dans $content_dir");
}
Dans ce code, $Photo correspond à Image.png.
Voyez-vous une erreur ?
Merci d'avance !
A voir également:
- Réécriture dans un fichier PHP
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
2 réponses
Bonjour,
Pourquoi ne supprimes-tu pas l'ancienne photo avant d'importer la nouvelle ? Il se pourrait que le php n'ai pas les droits pour remplacer l'image, quel est ton hébergeur ?
Cordialement
Pourquoi ne supprimes-tu pas l'ancienne photo avant d'importer la nouvelle ? Il se pourrait que le php n'ai pas les droits pour remplacer l'image, quel est ton hébergeur ?
Cordialement
Merci pour ta réponse !
Je parle de mon site, mais je travaille pour l'instant sur serveur local.
Et alors c'est vrai qu'il est plus facile de supprimer la photo pour ensuite la remplacer. Alors j'ai utilisé pour ça la fonction unlink.
Donc l'image est bien modifiée dans mon fichier et s'appelle pareil que la précédente.
Par contre, l'image qui s'affiche sur le site est toujours la même !
Pour afficher l'image, je vais chercher dans ma base de données le nom de la photo de l'utilisateur, et ensuite le code va chercher dans mon fichier Images la photo correspondante.
Mais là ça ne change pas !
Je n'ai pas vraiment de bout de code à montrer pour ce problème, mais as-tu déjà rencontrer un problème similaire ?
Merci d'avance !
Je parle de mon site, mais je travaille pour l'instant sur serveur local.
Et alors c'est vrai qu'il est plus facile de supprimer la photo pour ensuite la remplacer. Alors j'ai utilisé pour ça la fonction unlink.
Donc l'image est bien modifiée dans mon fichier et s'appelle pareil que la précédente.
Par contre, l'image qui s'affiche sur le site est toujours la même !
Pour afficher l'image, je vais chercher dans ma base de données le nom de la photo de l'utilisateur, et ensuite le code va chercher dans mon fichier Images la photo correspondante.
Mais là ça ne change pas !
Je n'ai pas vraiment de bout de code à montrer pour ce problème, mais as-tu déjà rencontrer un problème similaire ?
Merci d'avance !