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 :

Ouvrir un fichier situé côté serveur


Sujet :

JavaScript

  1. #1
    Membre émérite Avatar de KibitO
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2004
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2004
    Messages : 616
    Par défaut Ouvrir un fichier situé côté serveur
    Bonjour à tous,

    Dans le cadre d'un développement, je souhaiterais ouvrir un fichier Excel placé sur un disque dur d'un serveur.

    Je développe en .NET C#.

    Dans une page, je récupère le contenu d'une variable de session :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string monContenu = Session["url_fichier_a_ouvrir"].ToString();
    Ensuite, sur l'évènement "onClick" d'un bouton web, j'écris dans la page web ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Response.Write("<script language=javascript>window.open('file:///" + monContenu + "','','toolbar=no')</script>");
    Le contenu de ma variable monContenu est le suivant :

    \\monServeur\monFichier.xls
    Seulement lorsque je clique sur le bouton pour tester l'ouverture du fichier, le javascript me supprime les "\" et du coup l'url n'est plus du tout valide puisque tous les termes sont collés les uns aux autres.

    Comment faire pour que javascript interprète mes "\" ? Est-ce possible par une telle méthode d'exécuter un fichier situé sur le serveur côté client ?

    Merci beaucoup de votre attention.

  2. #2
    Invité
    Invité(e)
    Par défaut
    salut

    le backslash est le caractère d'échappement. t'as essayé de les doubler tes backslashs ? il considèrera le premier comme caractère d'échappement, et prendra le second en compte.

    par contre, je ne pense pas qu'il faille mettre le "file://" devant l'adresse de ton fichier...

  3. #3
    Membre émérite Avatar de KibitO
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2004
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2004
    Messages : 616
    Par défaut Auto réponse
    J'ai trouvé la solution de remplacer les "\" par des "\\" car javascript interprète le caractère "\" que s'il est précédé par lui même.

    Une application de la méthode Replace() sur ma variable aura suffit.

    EDIT
    -------------

    Salut torvalds17, en effet j'étais au boût, j'ai doublé mes antislashes.

    Pour ce qui est du "file:///" je l'ai rajouté pour faire comprendre à mon navigateur que j'allais traiter un fichier mais en le supprimant ça me l'ouvre quand même.

    Autre point purement javascript, j'ai pourtant supprimé la barre de statut dans ma fenetre (pas dans le code que j'ai mis en exemple au dessus car je voulais faire bref) mais ça me la rajoute quand même.

    J'ai mis : status=no.... Faut-il mettre : statusBar=no ? status=0 ?

    Merci.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par KibitO
    Autre point purement javascript, j'ai pourtant supprimé la barre de statut dans ma fenetre (pas dans le code que j'ai mis en exemple au dessus car je voulais faire bref) mais ça me la rajoute quand même.

    J'ai mis : status=no.... Faut-il mettre : statusBar=no ? status=0 ?
    ça dépend de ton navigateur. Firefox par exemple décide que ce n'est pas au développeur de choisir si l'utilisateur aura une barre d'état, donc même le status=no ne fonctionne pas. C'est pourtant la seule bonne syntaxe

  5. #5
    Membre émérite Avatar de KibitO
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2004
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2004
    Messages : 616
    Par défaut
    Ok. Et pour renommer un titre de la nouvelle fenetre par exemple ? Je n'ai pas trouvé... Ca doit être faisable je pense.

    Si je lui attribut un nom, en retrouvant la fenetre par son nom, je peux affecter des valeurs à ses propriétés. N'y a-t-il pas une propriété "Title" ou quelque chose dans le genre pour titrer une fenêtre ?

    Merci de tes réponses.

    Et comme mon nouvel avatar, mon navigateur est Internet Explorer 7 ou antérieur (v.6 ou v.5.5)

  6. #6
    Membre chevronné
    Avatar de Eric Berger
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2002
    Messages
    346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2002
    Messages : 346
    Par défaut
    Vi vi, y'a ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.title = "ton nouveau titre"
    Tout simplement

  7. #7
    Membre émérite Avatar de KibitO
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2004
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2004
    Messages : 616
    Par défaut
    Très bien. Je pense qu'il est aussi possible d'attribuer automatiquement la propriété Title sur l'ouverture de la fenêtre, avec un window.open ?

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

Discussions similaires

  1. Ouvrir un fichier d'un serveur distant en c#
    Par cocobelle89 dans le forum C#
    Réponses: 8
    Dernier message: 15/05/2013, 12h52
  2. Ouvrir un fichier sur le serveur
    Par j0hn01 dans le forum ASP.NET
    Réponses: 3
    Dernier message: 06/05/2009, 15h21
  3. impression d'un fichier situé sur le serveur
    Par Phiss dans le forum ASP
    Réponses: 6
    Dernier message: 21/06/2007, 14h48
  4. Réponses: 2
    Dernier message: 31/07/2006, 16h26

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