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

JavaScript Discussion :

Sauvegarder l'affichage d'une image dans un dossier avec un bouton !


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 607
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 607
    Par défaut Sauvegarder l'affichage d'une image dans un dossier avec un bouton !
    Bonjour à toutes et à tous,

    Avec ce code, j'affiche le screenshot de la vue par mon vidéoparlophone et j'aurai aimé copier cette photo dans un dossier ou se trouve la page Html avec le bouton.

    Chemin du dossier : C:\Data\Parlophone\

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ...
    <center><div class="bloc-variable">
     <IMG src="http://192.168.1.73:80/snapshot.cgi?user=admin&pwd=&t=" name="refresh" width="790" height="495" border="5" id="refresh" onload='reload()'></div>
    <br>
    <br>
    <div id="p" onclick="">
    <p>SnapShot</p></div>
      </BODY>
    </html>

    En vous remerciant,

    @+,

    Cincap

  2. #2
    Membre très actif
    Homme Profil pro
    rien
    Inscrit en
    Décembre 2015
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : rien

    Informations forums :
    Inscription : Décembre 2015
    Messages : 282
    Par défaut
    Salut

    En javascript je pense pas qu'on puisse sauver dans un fichier, mis à part le cookie, il faut donc que tu utilises le langage php, regarde comment créer un fichier avec php

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 607
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 607
    Par défaut
    Bonjour à toutes et à tous,

    @ progdebutant, merci pour ta réponse.

    Je n'avais rien trouvé sur le net pour cette question ce qui est étonnant c'est quand j'ouvre le fichier html, la photo apparait indépendamment du code concernant le timing de l'affichage et si je maintiens l'image pour l'ouvrir sur un autre onglet de Iexploreur, j'obtiens bien une photo qui se nomme snapshot.JPG

    De là, je pensais que l'on pourrait la sauver.

    Maintenant en php, je n'ai jamais codé.

    @+,

    cincap

  4. #4
    Membre très actif
    Homme Profil pro
    rien
    Inscrit en
    Décembre 2015
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : rien

    Informations forums :
    Inscription : Décembre 2015
    Messages : 282
    Par défaut
    Salut

    Pour sauver dans un fichier une image qui se trouve sur une page HTML il n'y a que deux méthodes à mon avis, soit à la main directement en cliquant dessus avec le bouton droit de la souris puis en cliquant sur "enregistrer l'image sous..." soit avec un petit code javascript qui va détecter l'image sur la page et lancer un petit code PHP pour enregistrer l'image trouvée directement vers un fichier.
    Moi j'en sais pas plus malheureusement, car si l'image est sur ton site le petit code javascript ça serait un truc dans le genre :

    Dans le fichier HTML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="adresse de l'image" id="nom de l'image" alt="description de l'image" onclick="enregistre(this.id);" />

    Dans le fichier javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function enregistre(image){
    // ici le code PHP pour enregistre l'image dans un fichier.
    }
    Je t'aide pas beaucoup avec ce code incomplet, c'est pour te donner une idée c'est tout, je ne sais pas mélanger le javascript avec le PHP pour le moment
    Et ça mettra les pros dans le principe pour te donner une meilleure solution plus précise

  5. #5
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 420
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

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

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 420
    Par défaut
    Oui je confirme, avec javascript côté client tu ne pourras pas directement charger un fichier sur le serveur. Tu peux éventuellement passer l'adresse de l'image dans une requête ajax et dans le script php :
    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
    16
    $url = 'http://www.developpez.net/template/images/logo.png';
     
    $path = pathinfo($url);
    // vérification de l'extension pour ne pas télécharger n'importe quoi
    $extension = isset($path['extension']) ? strtolower($path['extension']) : null;
    if(in_array($extension, array('jpg','jpeg','png','gif')))
    {
    	$dossier = 'dossier_destination/';
            // ajoute un préfixe 'copy_'
    	$nouveau_nom = 'copy_'.$path['basename'];
     
    	// Ouvre un fichier pour lire un contenu existant
    	$current = file_get_contents($url);
    	// Ecrit dans la destination
    	file_put_contents($dossier.$nouveau_nom, $current);
    }
    Attention sans vérification les nouveaux fichiers écraseront les anciens de même nom.

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 607
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 607
    Par défaut
    Bonjour à toutes et à tous,

    @ ABCIWEB et @ progdebutant, grand merci pour vos suggestions.

    En fait, l'image se trouve sur ma page Web dès que le fichier html est ouvert car cette image provient de mon vidéo parlophone et à l'ouverture le screenshot est actif.

    Et avec une routine en JavaScript, cette image est dynamique en temps réel et me permet donc de voir les voitures qui s'introduisent dans le chemin qui mène à ma propriété.

    Si avec le click droit je fais "Enregistrer sous", un nom apparait avec son extension soit "Snapshot.JPG" alors que je ne la nomme pas.

    Je vais tester vos suggestions et je reviens vers vous.

    @+,

    cincap

  7. #7
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 212
    Par défaut
    Bonjour,
    @progdebutant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function enregistre(image){
    // ici le code PHP pour enregistre l'image dans un fichier.
    }
    • Javascript = coté client
    • PHP = coté serveur
    coté client les commandes PHP sont inconnues.
    Je ne commente pas le reste !

    @cincap :
    Si ce fichier est affiché dans ta page c'est qu'il existe quelque part donc pourquoi ne pas le sauvegarder à la source ?

    Un autre façon de faire serait de mettre cette image dans un <canvas> pour en récupérer le "data:image/png;base64" puis de l'envoyer sur le serveur pour enregistrement.
    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
    16
    17
    18
    19
    20
      var canvas = document.getElementById('id_canvas'),
          context = canvas.getContext('2d'),
          oImage = new Image();
      // fonction sur le load
      oImage.onload = function() {
          var larg = this.width,
              haut = this.height,
              dataURL;
          // dimensionne le canvas
          canvas.width = larg;
          canvas.height = haut;
          // dessine image
          context.drawImage( this, 0, 0);
          // récup. data:image/png;base64
          dataURL = canvas.toDataURL();
          // juste pour voir
          window.open( dataURL, 'image');
      };
      // affectation source
      oImage.src = 'le_nom_de_l_image';

  8. #8
    Membre très actif
    Homme Profil pro
    rien
    Inscrit en
    Décembre 2015
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : rien

    Informations forums :
    Inscription : Décembre 2015
    Messages : 282
    Par défaut
    Javascript = coté client
    PHP = coté serveur
    Je vois ce que tu veux dire, merci Nosmoking !
    C'est vrai que c'est mieux de séparer, mais j'avais pas d'autres solutions.
    Ton idée du canvas c'est génial ! +10 heu non on peut pas :/

Discussions similaires

  1. Pb d'affichage d'une image dans un DC
    Par vanitom dans le forum MFC
    Réponses: 2
    Dernier message: 03/03/2006, 09h59
  2. Exemple affichage d'une image dans un bouton
    Par had182 dans le forum MFC
    Réponses: 2
    Dernier message: 12/01/2006, 18h38
  3. [PHP-JS] Affichage d'une image dans une popup à la taille
    Par urbanspike dans le forum Langage
    Réponses: 3
    Dernier message: 27/09/2005, 20h53
  4. Réponses: 1
    Dernier message: 11/05/2005, 17h28
  5. [DEBUTANT][HTML] affichage d'une image dans une page
    Par nimport nawak dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 12/04/2005, 19h50

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