Se connecter avec
S'enregistrer | Connectez-vous

Listing d'avatar

Dernière réponse : dans Programmation

Salut tout le monde,
Voila aujourd'hui je me confronte a un nouveau soucis.
J'aimerai realiser une sorte de bibliotheque d'avatar pour mon site...
Le soucis est que je ne sais pas reelement comment m'y prendre!
Dois je passer par une bdd? Genre: AVATAR avec la precision de son pti nom et de son chemin d'acces?
Ensuite pour afficher tout les avatar dans une liste je fais un tableau repertoriant les avatar present dans la bdd...

Je vous demande car je sent que je pars dans la mauvaise direction et qu'il dois surement y avoir plus simple...

Merci d'avance a tous :) 

Autres pages sur : listing avatar

Lassé par la pub ? Créez un compte

Meilleure solution

Expert Programmation

Ahhhhhggggggggg x_X

N'importe quoi. Mais quel est ce crétin brave type qui vient de te proposer ça ???????
Jamais au grand jamais il faut mettre des chemins de type Windows dans une base de données de fichiers à publier sur le net :pfff: 

Il faut mettre des URLs, ou plus exactement, des portions d'URLs.

Tes fichiers sont dans des sous-dossiers par rapport à la racine de ton site.

Donc il faut transformer les
C:\Users\la_lvlouche\Mes Documents\Mon site en cours de constructions\images\avatars\la_lvlouche.jpg
En
/images/avatars/la_lvlouche.jpg


(J'étais en train de déjeuner peinard quand j'ai réalisé, je ne sais pas pourquoi, que je t'avais balancé une énorme connerie).

Allez :
  1. file_sql.WriteLine "INSERT INTO ma_table_des_avatars (chemin) VALUES (""/images/avatar/" & file_img.Name & """ );"

D'ailleur j'ai déjà toute une liste d'avatar dispo... comment puis je faire pour les entrer automatiquement dans une base de donnée?
exemple:
j'ai dans un dossier 'AVATARS' 50 fichiers images (des avatars).
Comment faire pour que chacun d'entre eux soit une entrée dans la base de donnée 'avatar'?
Expert Programmation

Salut,

Automatiquement ?
Euh.... Il va te falloir faire un script SQL qui contienne tous tes chemins (ce sont bien les chemins vers les images et non pas les images que tu veux mettre dans la BdD ?)

Tu exploites quel système ?

Oui c'est bien ca ;) ?
Mais le script si je laisse tout dans le meme dossier... seul le nom du fichier change! Donc est ce qu'il est possible avec SQL de dire dans ce dossier combien y a t'il de fichier? Faire une boucle sur ce nombre de fichier .... pour rentrer le nom et le chemin du fichier 1a 1 dans la base.

Quand tu parles de systeme tu parles de quoi???
MySQL?
Expert Programmation

Non, je demandais quel système d'exploitation, quel operating system.
SQL est un langage incapable d'interagir avec l'environnement et le système.

Il te faut donc créer un script correspondant à ton OS qui va créer le script SQL.

Si tu es sous Windows, un script batch ou un vbs peuvent faire l'affaire.
Si tu es sous Linux, c'est encore plus facile. Un ptit shell et zou...

Oki je suis donc actuellement sous Windows... mais lorsque je vais le mettre sur un serveur pour l'hebergeur... comment je vais savir si il est sous windows ou Linux??
VBS ne fonctionne pas pour les deux systeme?
Sinon comment m'y prendre pour le vbs? Enfait pour faire le lien entre vbs et SQL?
Expert Programmation

Han, c'est pas du one-shot ?
Le but du jeu, c'est
  • charger la base une fois pour toute avec beaucoup de données (50 noms de fichiers)
  • charger la base dynamiquement à chaque fois qu'un fichier est ajouté
    ?
    Expert Programmation

    Alors tu prends le problème à l'envers.

    Quand l'utilisateur dépose un fichier, il le fait non pas directement par FTP mais par ton site et tu enregistres alors dans la base une correspondance entre cet utilisateur et son fichier.

    Tu n'as pas à ramasser les fichiers sur le serveur.
    Expert Programmation

    Je n'en sais rien : Tu as d'un côté des noms de fichiers dans un répertoire, et de l'autre une table d'utilisateur. Le lien se fait comment ?

    Si tu as une table pour les images, je suppose qu'elle a un champ chemin. Voici comment la remplir rapidement. Reste que le lien avec les autres données n'est pas fait :
    1. Dim FSO
    2. Dim file_img
    3. Dim file_sql
    4.  
    5. Set FSO = CreateObject("Scripting.FileSystemObject")
    6. Set file_sql = FSO.CreateTextFile("monscript.sql", True)
    7.  
    8. For Each file_img In FSO.GetFolder("chemin_vers_images\").Files
    9. file_sql.WriteLine "INSERT INTO ma_table_des_avatars (chemin) VALUES (""" & file_img.Path & """);"
    10. Next
    11.  
    12. file_sql.Close

    zeb a dit :
    Oups, oui, c'est un VBScript. Le fichier doit impérativement s'appeler la_lvlouche_charge_ses_avatars_dans_sa_BDD.vbs sinon il ne marchera pas. :o 

    J'ai failli mettre l'élire meilleure réponse... lol
    Non oki dommage je l'ai nommé zeb_auto.vbs ca risque de coincer? :kaola:  ^^


    Mais plus serieusement enfait il me met une erreur a son execution...chemin d'acces introuvable...a la ligne
    1. For Each file_img In FSO.GetFolder("chemin_vers_images\" ).Files


    Pour ce chemin j'ai mis:
    1. C:\Users\la_lvlouche\Documents\site\avatar\


    Mais le probleme ne viendrai pas plutot de For Each file_img?
    Lassé par la pub ? Créez un compte