{MySQL} script de mise à jour listant fichier

toto -  
giheller Messages postés 1960 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Je cherche à écrire un petit script sur un server Fedora, qui me permettrait d'actualiser une liste de documents dans une base MySQL.
J'ai un site web qui liste les fichier (des .doc) sur une page et je voudrais que le script puisse ajouter automatiquement (une fois par jour) les nouveaux fichiers présents dans le dossier. Le site utilisant une base MySQL, il me faudrait un script la mettant à jour en scannant les fichiers présents dans le dossier.
Malheureusement, après quelques recherches, je ne vois pas du tout vers quoi m'orienter.
Quelqu'un a-t-il une idée de comment démarrer?

Merci!

[question posée précédemment, mais j'ai oublié le titre..]

4 réponses

  1. giheller Messages postés 1960 Date d'inscription   Statut Membre Dernière intervention   146
     
    bonsoir,

    ce script liste les fichiers contenus dans le répertoire
    $rep = "./";
    $dir = opendir($rep);

    while ($f = readdir($dir)) {
    if(is_file($rep.$f)) {
    echo $f."<br>";
    }
    0
    1. toto
       
      Merci beaucoup pour votre réponse rapide,

      Ce script est en php, je comprend en gros ce qu'il fait, mais comment puis-je l'utiliser sur un serveur.
      Un appel du script php tout les jours à une heure précise est-il possible?
      Comment entrer cette liste dans une base MySQL?
      (oui je pars de loin, je n'y connais pas grand chose...)

      Merci!
      0
  2. giheller Messages postés 1960 Date d'inscription   Statut Membre Dernière intervention   146
     
    bonsoir,

    il faudrait tout d'abord mieux préciser les choses et sérialiser les problèmes.
    donc serveur fedora = linux donc :

    un script en langage de commande. autant que je me souvienne sh, bash ou un truc comme ça.

    ensuite pour le lancer régilièrement il faut voir du côté cron (crontab)

    dans le script on peux faire des commande en ligne mysql.
    0
  3. toto
     
    Ok pour cron, par contre je ne sais pas comment faire les requêtes sur ma base de donnée.
    J'ai cherché un peu comment faire un script en shell sh et voilà ce que ça donne:

    [code]
    #!/bin/sh

    # Doc path on server
    cd /doc/

    # Scan each .doc
    for files in *.doc
    do
    # Test if already in database
    present = (Requete MySQL pour savoir si le fichier est déjà présent dans la base)
    # If not in database, SQL request to update
    if $present == "no"
    then (Requete MySQL pour rentrer le fichier dans la base)
    fi
    done
    [/code]

    Il me manque donc la requete MySQL pour voir si le fichier est déjà présent dans la base et la requete pour le rentrer dans la base. Et puis sûrement quelques corrections du script, mais ça je verrais les erreurs en l'executant ;)
    0
  4. giheller Messages postés 1960 Date d'inscription   Statut Membre Dernière intervention   146
     
    bonsoir

    en ligne de commande ou en script, autant que je me souvienne c'est les mêm commandes.

    si c'est du mysql il doit y avoir un tuto
    > man mysql

    il doit donner des chose du genre
    mysql_connet
    mysql_query

    etc
    0