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 :

fonction ouverture de fichier


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de charlene44
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 87
    Par défaut fonction ouverture de fichier
    bonjour tout le monde!

    voila j'ai un petit problème, moi et le javascript ca fait 2 mais je dois ouvrir des documents a partir d'un chemin UNC (type file:///C:/ machin) à partir d'un bouton, or le problème c'est que j'ai une fonction php qui me construit un tableau en fonction de ce qu'il y a dans ma base de donnée, dont le chemin d'accès au fichier... il y a aussi une autre chose, dans l'action de mon <form> j'appelle une page php car il faut que je mette a jour la date de derniere modification du fichier dans ma bdd. donc voila ma question : comment je pourrai faire pour ouvrir un fichier et mettre a jour ma bdd juste en cliquant sur le bouton? je n'arrive pas a trouver la fonction javascript qui m'ouvre le fichier, parce que c'est compliqué, dans mon tableau j'affiche le nom du fichier et du chemin d'accès donc en clair il faudrai d'abord qu'a partir des données affichées dans le tableau je puisse faire : chemin_unc = "file:///+chemin+nom_fichier" (dsl je ne sais pas comment concaténer en javascript) et qu'après je puisse ouvrir ce chemin tout en mettant a jour ma bdd

    je vous poste mes portions de code :

    code PHP (donc les lignes du tableau) :

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    function construire_tableau($login)
      {
        // on selectionne les informations relatives à tous les fichiers présents dans la base pour un utilisateur donné
        $req = mysql_query(r_donne_caracteristiques_fichier($login)) or die ('erreur lors de l\'exécution de la requête, veuillez réessayer');
     
    	// tant qu'il y a des lignes retournées par la requête, on ajoute une ligne pour chaque fichier
    	while($row = mysql_fetch_row($req)) 
    		{
    		  $code_doc = $row[0];
    		  $chemin = $row[1];
    		  $chemin = substr($row[1],7);
    		  $heure_der_modif = substr($row[2],10,10);
    		  $jour = substr($row[2],8,2);
    		  $mois = substr($row[2],5,2);
    		  $annee = substr($row[2],0,4);
    		  $date_der_modif = "$jour-$mois-$annee";
    		  $lib_document = trouver_nom_fichier($chemin);
     
    		  echo '<tr>
    		          <td class="td1">'.$lib_document.'</td>
    				  <td class="td2">'.$chemin.'</td>
    				  <td class="td3">Le <u>'.$date_der_modif.'</u> à '.$heure_der_modif.'</td>
    				  <td class="td4">
    				    <form action="action_ouverture_fichier.php" method="get">
     
    					     <input type="hidden" value='.$code_doc.' name="code" />
                             <input type="submit" value="Ouvrir" name="ouvrir" />
     
                        </form>
    				  </td>
    				</tr>';
    	    };
      };
    code PHP/javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
      $id = $_GET['code'];
      $date = date("Y-m-j");
      $heure = date("H:i:s");
      $date_courante = "$date $heure";
      require ("dm.php"); /*ma page php avec toutes mes fonctions*/
      connexion_bdd();
      mise_a_jour_date($id,$date_courante);
      
    ?>
      <script language="javascript">
      // ouverture du fichier je pense
      </script>
    si vous avez une meilleur solution ou une autre maniere d'organiser le code n'hésitez pas.

    pour une meilleur visibilité du tableau : RENDU

  2. #2
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    J'ais du mal à comprendre ce que tu veux faire... tu veux ouvrir une page sur un fichier local après avoir mis à jour une variable... utilise ajax

    je vais pas te construire le code en entier mais ça donnerais...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    ... code de préparation requete ajax en post avec la variable à mettre à jour... 
     
    monObjet.onreadystatechange = function() 
    {
        if(monObjet.readyState == 4)
              window.location.href = "file:///"+chemin+nom_fichier;
    };
     
    ... code d'envoi de la requete ajax avec les données à mettre à jour...
    Ou alors si tu veux ouvrir un popup en pleine page

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    ... code de préparation requete ajax en post avec la variable à mettre à jour... 
     
    monObjet.onreadystatechange = function() 
    {
        if(monObjet.readyState == 4)
              window.open("file:///"+chemin+nom_fichier, '', "fullscreen=yes,toolbar=yes,status=yes,resizable=yes,scrollable=yes,scrollbars=auto,location=yes,menubar=yes,directories=yes");
    };
     
    ... code d'envoi de la requete ajax avec les données à mettre à jour...
    Au passage...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $jour = substr($row[2],8,2);
    $mois = substr($row[2],5,2);
    $annee = substr($row[2],0,4);
    $date_der_modif = "$jour-$mois-$annee";

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    list($jour,$mois,$annee) = explode('-',$row[2]);
    $date_der_modif = $jour.'-'.$mois.'-'.$annee;
    @ tchaOo°

  3. #3
    Membre confirmé Avatar de charlene44
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 87
    Par défaut
    désolé mais je ne connais pas du tout ajax, en fait il faudrai juste que je mette a jour ma bdd, mais ca j'ai déja préparé la fonction php, il suffit juste que je l'execute et que tout de suite après, ou en meme temps, enfin n'importe quoi, j'ouvre le fichier

    ps : j'ai créé un champ de type "hidden" dans mon form avec comme value le chemin unc, est ce que je peux faire

    window.open(window.form.chemin_unc)?

  4. #4
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    Oui tu peux... .. .

    @ tchaOo°

  5. #5
    Membre confirmé Avatar de charlene44
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 87
    Par défaut
    voila ce que j'ai écrit, je ne sais pas du tout si c'est bon vu que je n'y connait rien en javascript, mais en tout cas ce dont je suis sur c'est que la partie php marche!

    exemple d'une ligne du tableau :

    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
     
    <tr>
      <td class="td1">machin.xls</td>
     
      <td class="td2">Le <u>15-06-2006</u> à  11:45:25</td>
      <td class="td3">
        <form action="action_ouverture_fichier.php" method="get">
     
          <input type="hidden" value="file:///C:/zegfz/zegazg/erbgqeb/machin.xls" name="chemin_unc" />
          <input type="hidden" value=4 name="code" />
          <input type="submit" value="Ouvrir" name="ouvrir" />
     
        </form>
      </td>
    </tr>
    page action_ouverture_fichier.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
     
    <?php
      $id = $_GET['code'];
      $date = date("Y-m-j");
      $heure = date("H:i:s");
      $date_courante = "$date $heure";
      require ("dm.php");
      connexion_bdd();
      mise_a_jour_date($id,$date_courante);
     
    ?>
     
      <script language="javascript">
      window.open(window.form.chemin_unc)
      </script>
    j'ai mis un bout de javascript apès ma balise de fin de php, je ne sais même pas si le code est interprété. svp aidez moi.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Ajouter un filtre dans une fonction d'ouverture de fichier
    Par Orakle dans le forum VBA Access
    Réponses: 2
    Dernier message: 27/05/2011, 12h05
  2. [XL-2003] ouverture de fichier en fonction des derniers chiffres de l'année
    Par bosk1000 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 16/11/2009, 06h03
  3. Empecher "l'ouverture" des sous fonctions d'un fichier-m
    Par lapinoufly dans le forum MATLAB
    Réponses: 1
    Dernier message: 01/07/2009, 10h07
  4. Appel des fonctions, ouverture d'un fichier.
    Par seijuro2347 dans le forum C++
    Réponses: 1
    Dernier message: 24/09/2008, 01h12
  5. Réponses: 11
    Dernier message: 10/07/2007, 20h31

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