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 :

Lire un fichier sur mon poste de travail via un serveur c'est possible ?


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 88
    Points : 40
    Points
    40
    Par défaut Lire un fichier sur mon poste de travail via un serveur c'est possible ?
    Bonjour,

    J'ai un petit problème, du moins une interrogation.

    Est-il possible de lire avec PHP, un fichier présent sur mon ordi à cet emplacement par exemple: C:\Users\Yan\Desktop\fichier.txt
    Sachant que mon script de lecture se trouve sur un serveur comme par exemple:
    www.monsite.fr/monScriptDeLecture.php

    ??
    Voila ça semble idiot je sais, mais je me pose toujours la question.

    Merci pour vos réponses.

    Cordialement,
    Yan"

  2. #2
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Salut,

    Bien sûr que NON !!

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 88
    Points : 40
    Points
    40
    Par défaut
    Merci

    Je suis tellement désespéré par ce que je dois faire que j'imagine tout et n'importe quoi en 4ans de programmation lol

    Merci encore de remettre mes idées en place :s

    Cdt,
    Yan"

  4. #4
    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
    Décris nous ce que tu veux mettre en place, on pourra peut etre te proposer quelque chose.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 88
    Points : 40
    Points
    40
    Par défaut
    oh c'est gentil

    Et bien en fait j'ai des 20enes de Go de fichiers textes (entre autre) et je n'ai pas la place de les transferer sur mon FTP pour les parser et les enregistrer sur ma BDD de OVH.

    Donc je voulais créer un script PHP sur mon FTP, qui lisait tous les fichiers présent dans mon dossier de plus de 20 Go présent sur mon poste de travail pour pouvoir enregistrer les infos importantes de ces fichiers dans ma BDD.

    Je ne sais pas si j'ai été clair car un peu fouilli :s

    Merci pour ton aide

  6. #6
    Membre expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Points : 3 947
    Points
    3 947
    Par défaut
    Salut

    Tout dépend du comment tout ça se déclencherait, mais admettons que ce soit manuel, rien t'empêche de le faire en local.

    Si tu as un LAMP (EasyPhp, Wampserver, etc ...) d'installé en local, suffit de créer une petite interface, puis un clic sur un bouton permettra de parcourir tes fichiers, extraire juste le necessaire, puis ensuite via les fonctions ftp_* déposer les données sur ton serveur distant (OVH).
    Tu peux très bien générer/déposer directement des fichier .sql (donc directement du SQL), ce qui peut être intéressant.

    Reste plus qu'à programmer une sorte de cron (tâche planifié) coté serveur distant pour récupérer les fichiers précédemment déposés, les parcourir puis mettre les données dans la Bdd.


    L'opération au départ reste manuel, mais en creusant un peu du coté des tâches planifiés coté local ça devrait pouvoir s'automatiser aussi, ne serait-ce qu'après démarrage du PC par exemple.
    Mais personnellement j'ai jamais eu besoin, donc je ne sais pas.


    C'est une idée, mais certains ont peut être mieux.
    Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
    Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 88
    Points : 40
    Points
    40
    Par défaut
    Oui c'est une bonne idée, donc tu me conseillerai donc de générer des fichier .sql en local puis de les lancer via un cron (une fois ces fichiers mis sur mon ftp) ?
    Ca peut etre bien comme solution mais le problème c'est que ces fichiers sont mis a jour régulierement et que générer des 100 ene de milliers de ligne .sql risque de ne pas me faciliter la tache surtout que lorsque le temps d exécution est trop long et bien ca provoque une erreur de temps d execution que je ne peux pas modifier car je suis en mutualisé et il me semble que je ne peux pas chez ovh :/

    Merci encore pour ta solution

    PS: de quelles fonctions parles tu quand tu dis : "les fonctions ftp_* " stp ?

  8. #8
    Membre expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Points : 3 947
    Points
    3 947
    Par défaut
    Ca peut etre bien comme solution mais le problème c'est que ces fichiers sont mis a jour régulierement et que générer des 100 ene de milliers de ligne .sql risque de ne pas me faciliter la tache surtout que lorsque le temps d exécution est trop long et bien ca provoque une erreur de temps d execution
    L'idée principale que j'évoquais était quand même de déposer coté distant juste le stricte nécessaire, et uniquement.
    Donc théorique la plus grosse charge du travail (code) se ferait en local, donc théoriquement avec quasi aucune limite.

    Si au bout (fichiers .sql coté distant) ça représente quand même énormément de données à traiter, là, ça ne me semble plus une question de langage ou d'espace disque, c'est la formule d'hébergement qui ne serait pas adaptée.
    S'il y a beaucoup de travail à faire, faut les outils adaptés quand même, non ?


    Sinon, peut être faudrait il prévoir que le cron se fasse plusieurs fois par jour (genre toutes les heures), qui au bout le code ne traiterait que des petits paquets de données.
    M'enfin, ça risque fort d'être compliqué à gérer (et à maintenir ce code dans le temps).


    Sinon, regarde s'il n'y aurait pas moyen de le faire directement en distant, c'est à dire requêter la Bdd distante directement depuis son poste en local.
    Ca peu se faire (je dirais que ça dépend de l'hébergeur et de sa formule), mais c'est moins sécurisé (donc faut voir).
    Disons que s'il y a moyen de le faire directement et de suite chaque paquet de données et que cela fera gagner du temps des traitements, etc ... faut voir.


    Disons que je me demande si une formule mutualisée s'y prête dans un tel cas.
    Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
    Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 88
    Points : 40
    Points
    40
    Par défaut
    Je vois bien où se pose le probleme, mais j'ai assez d espace sur ma BDD pour récupérer l ensemble des données.


    Citation Envoyé par RunCodePhp Voir le message
    Sinon, regarde s'il n'y aurait pas moyen de le faire directement en distant, c'est à dire requêter la Bdd distante directement depuis son poste en local.
    Ca peu se faire (je dirais que ça dépend de l'hébergeur et de sa formule), mais c'est moins sécurisé (donc faut voir).
    Disons que s'il y a moyen de le faire directement et de suite chaque paquet de données et que cela fera gagner du temps des traitements, etc ... faut voir.
    => Et bien j'ai déjà demandé sur ce forum et... on m'a répondu que cela n'était pas possible :/ Je reste quand même sceptique car rien n'est impossible (meme si cela demande une sécurité moindre comme tu dis si bien).

    Si tu trouve quelque chose à ce sujet là n'hésite pas à me le faire communiquer.

    Merci pour ton aide

  10. #10
    Membre expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Points : 3 947
    Points
    3 947
    Par défaut
    PS: de quelles fonctions parles tu quand tu dis : "les fonctions ftp_* " stp ?
    J'avais pas vu la question.
    Jette un oeil sur la doc Php : http://fr2.php.net/manual/fr/book.ftp.php
    Toutes ces fonctions permettent de gérer son espace disque d'hébergement via FTP, import/export des fichiers (un peu comme les Soft).


    Et bien j'ai déjà demandé sur ce forum et... on m'a répondu que cela n'était pas possible
    Poser la question sur ce forum, pourquoi pas, mais le mieux n'aurait il pas été de la poser sur leur forum ?
    Il me semble qu'OVH en a un, non ?
    Voir encore mieux, leur poser directement la question.

    Mais j'ai jamais été sur OVH (seulement entendu parlé vu qu'il est très connu), du coup je ne peux rien te dire la dessus.

    Juste pour exemple, mon hébergeur mutualisé aussi m'offre la possibilité d'intéroger ma Bdd de manière distante.
    Cependant, par défaut elle est bloquée, et c'est via leur interface Web où je peux débloquer l'affaire (en m'avertissant bien que c'est moins sécurisé, ce qui est parfaitement normal).

    A toi de prospecter pour en avoir le coeur net la dessus.


    Ceci dit, je te donne peut être de faux espoir, car j'ai jamais pris la peine d'essayer de requêter à distance, du moins, pas essayé les limites.
    Il me semble que c'est assez limité aussi de toute manière.
    Puis entre insérer un paquet de donnée qui vient directement d'un fichier sur le serveur ou via HTTP, si le volume est trop gros, il sera toujours trop gros.


    Question comme ça :
    Quel serait le volume (Ko, Mo) moyen voir les plus gros qu'il y aura à insérer dans la Bdd ?
    (tout ça pour se donner une idée un peu plus précise).


    Fait des recherche du coté des sauvegardes SQL, genre MySQLDumper (les dump MySQL en faite), il y a des solutions qui font des miracles parait il, même pour de gros fichiers.
    Mais là aussi, jamais essayé, juste entendu parlé.
    Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
    Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 88
    Points : 40
    Points
    40
    Par défaut
    Merci pour ces réponses très précises

    Je vais leur demander à OVH dès que j'aurai un moment.
    Sinon je ne sais pas trop estimer la taille de mes insert mais disons que j'ai des 100 ene de milliers d insert à faire qui bouffent en moyenne chacun une taille équivalente à 150 varchar.

    Sinon je vais regarder dumper :p J'avais entendu parlé de ça il y a longtemps mais je ne m'étais jamais penché dessus.

    Merci

Discussions similaires

  1. Installation Debian 8 sur mon poste de travail
    Par nick23 dans le forum Debian
    Réponses: 2
    Dernier message: 08/05/2015, 14h36
  2. Réponses: 2
    Dernier message: 25/09/2007, 16h55
  3. Socket et SSL sur mon poste de travail windows
    Par bigsister dans le forum Langage
    Réponses: 5
    Dernier message: 25/02/2007, 01h25
  4. Réponses: 2
    Dernier message: 14/05/2004, 13h55

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