IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

remplacer une image par une autre image


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 187
    Points : 50
    Points
    50
    Par défaut remplacer une image par une autre image
    voila j'upload une image correspondant a un article dont id est 1
    au passage je renomme du l'image de l'id de l'article soit 1
    elle s'appellera donc 1.jpg si l'image de base était un jpg
    mais si je veux changer cette image et ce coup ci je mets un png,
    une nouvelle image appeler 1.png va être crée

    comment faire pour que la première image soit écrasée ou effacée

    comment ça se passe en général dans ce genre de cas?

    merci

  2. #2
    Membre régulier Avatar de Vicrabb
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2010
    Messages : 66
    Points : 102
    Points
    102
    Par défaut
    Pour l'effacement: unlink()

    Tu peux donc effacer l'ancienne image et ensuite mettre la nouvelle dans le dossier.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 187
    Points : 50
    Points
    50
    Par défaut
    c'est en général ce qui se fait dans les sites
    ou ce que tu fais sur tes sites
    ou y a t'il d'autre technique?

  4. #4
    Membre régulier Avatar de Vicrabb
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2010
    Messages : 66
    Points : 102
    Points
    102
    Par défaut
    J'utilise unlink() et je suppose que c'est ce qui se fait le plus souvent.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 187
    Points : 50
    Points
    50
    Par défaut
    donc je dois aller voir si une image 1.jpg ou 1.png existe dans mon dossier images
    puis récupérer son extention, ($extention)
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    unlink('../images/1.'.$extention);
    c'est bien ça ou il y a plus simple

    merci

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Si tu veux une gestion plus sérieuse, utilise une base de données.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 187
    Points : 50
    Points
    50
    Par défaut
    genre j'enregistre le nom et l'extention de mon image dans une table dédiée aux images
    et ensuite je lie cette image a mon article?
    ok je verrais ça plus tard mais pour aujourd'hui je vais restée sur la première solution plus facile a mettre en place
    merci je vais quand même m'y pencher

    mais je pense que dans mon cas j'ai juste a renommer une image pour un article
    l'enregistrer directement dans un fichier suffit
    et m'évite ainsi des requêtes

    sinon j'en reviens a ma question au dessus :

    "donc je dois aller voir si une image 1.jpg ou 1.png existe dans mon dossier images
    puis récupérer son extention, ($extention)
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    unlink('../images/1.'.$extention);
    c'est bien ça ou il y a plus simple"

    merci

  8. #8
    Membre régulier Avatar de Vicrabb
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2010
    Messages : 66
    Points : 102
    Points
    102
    Par défaut
    Si tu n'as qu'un article oui, ca pourrait marcher, sinon, si tu as plusieurs articles:
    - tu dois récupérer l'id de ton article
    - renommer l'image que tu envoies en idarticle en conservant son extension (puisque c'est cela que tu veux faire)
    - chercher l'image qui correspond dans ton dossier
    - vérifier les extensions
    - si l'image a la même extension, pas besoin d'un unlink()
    - si l'image a une extension différente de celle que tu envoies, alors, oui, tu peux utiliser l'unlink() pour l'image qui doit disparaître
    - enfin, tu mets la nouvelle dans le dossier

    En gros, c'est la marche que je suivrais. Bien entendu, adapte-la à tes besoins.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 187
    Points : 50
    Points
    50
    Par défaut
    bon la j'en suis au moment ou je fais un preg_match()
    pour vérifier qu'il existe bien une image commençant par 1
    problème je ne sais pas en suite comment récupérer l'extension de l'image commençant pas 1
    merci

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 187
    Points : 50
    Points
    50
    Par défaut
    Voila je vérifie si dans $dossier une image commencant par 1 existe
    puis, je voudrais récupérer l'extention de cette image, c'est la que je suis coincé (je pensais a un pathinfo () ???)
    pour pouvoir ensuite la supprimer avec unlink()

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    $dossier = '../images/uploads-atelier/normal;
    $open=opendir($dossier);
    	
    while (($search = readdir($open)) !== false)
    {
    	if(preg_match("#^1#",$search))	//analyse $search pour trouver l'expression qui correspond à ce qui est avant la virgule
    	{
    		 $infosfichier2  = pathinfo('$dossier .'/'. $search .'/); //pour récupérer l'extention du fichier
    		 $extension = $infosfichier2['extension'];
    		 unlink('$dossier .'/'. $search .'/1.'$extention);
    	}
    }
    closedir($open);
    ?>

  11. #11
    Membre régulier Avatar de Vicrabb
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2010
    Messages : 66
    Points : 102
    Points
    102
    Par défaut
    Si je peux me permettre de corriger une erreur, tu as oublié de fermer par un ' ta variable dossier:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dossier = '../images/uploads-atelier/normal';
    pathinfo() me semble adapté. Mais étant donné que je ne manie pas souvent cette fonction, il vaut mieux que quelqu'un plus expérimenté te réponde.

Discussions similaires

  1. Remplacer lettres contenues dans une variable par d'autres lettres
    Par AZzjeioafh dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 02/12/2009, 18h53
  2. Remplacer un mot ou une expression par un autre via XSLT?
    Par poisson03 dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 03/06/2009, 01h55
  3. [RegEx] Remplacer dernière occurence d'une chaine par une autre
    Par webjoujou dans le forum Langage
    Réponses: 3
    Dernier message: 12/11/2008, 17h58
  4. Réponses: 1
    Dernier message: 19/01/2008, 14h51
  5. [Debutant] changer des images dans une div par une fonction javascript
    Par raul_le_vieux dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/06/2007, 09h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo