Récupérer des fichiers de mysql avec du php
                                    
                        Utilisateur anonyme                    
                                    -
                                     
Utilisateur anonyme -
        Utilisateur anonyme -
        Bonjour,  
J'essaye de réaliser un site web ou je met différente ressources en ligne. Pour cela, j'ai créer une base de donnée qui contient plusieurs et dans chacune le nom du fichier et le fichier. J'ai créer un script php pour récupérer les informations met j'ai un problème: j'arrive a récupérer correctement le nom du fichier mais pas le fichier. Tout le fichier s'affiche avec des caractère en plus. Je voudrai pouvoir mettre un lien qui permet de télécharger ou bien d'ouvrir le fichier.
Merci de votre aide
            
            
                
            
                
    
    
    
        J'essaye de réaliser un site web ou je met différente ressources en ligne. Pour cela, j'ai créer une base de donnée qui contient plusieurs et dans chacune le nom du fichier et le fichier. J'ai créer un script php pour récupérer les informations met j'ai un problème: j'arrive a récupérer correctement le nom du fichier mais pas le fichier. Tout le fichier s'affiche avec des caractère en plus. Je voudrai pouvoir mettre un lien qui permet de télécharger ou bien d'ouvrir le fichier.
Merci de votre aide
        A voir également:         
- Récupérer des fichiers de mysql avec du php
- Recuperer message whatsapp supprimé - Guide
- Renommer des fichiers en masse - Guide
- Récupérer mon compte facebook désactivé - Guide
- Explorateur de fichiers - Guide
- Fichiers epub - Guide
3 réponses
                        
                    si j'enregistre le lien vers mes cours, je ne pourai pas ouvrir directement mes cours, sa m'ouvrira d'abord le répertoire et après je serai oubligé de cliquer sur le cour pour l'ouvrir? Moi je ve pouvoir ouvrir directement mon cours depui le site web.
                
                
    
                
                        
                    N'enregistre jamais un fichier directement dans ta base de données. Enregistre le plutot dans un dossier puis mets le chemin du dossier dans la basse données, php ensuite récupera le chemin de ce fichier et tu pourras l'utiliser.
                
                
    
                
                        
                    J'ai déjà enregistrer mes fichiers dans la base de données, tu connait pas quand même le code php pour récupérer les fichiers et pour pouvoir les ouvrir depuis une page web
                
                
    
                
    dans ma base g créer une table anglais avec le nom de mes cours et à chaque nom est associé un fichier, il s'agit d'un champ de type blod
je vroudrai créer un tableau sur mon site web qui me retourne tous mes cours avec leurs nom (sa c bon) et le fichier que je souhaite faire apparaitre en lien hypertexte pour pouvoir l'ouvrir quand je clic dessus
    je vroudrai créer un tableau sur mon site web qui me retourne tous mes cours avec leurs nom (sa c bon) et le fichier que je souhaite faire apparaitre en lien hypertexte pour pouvoir l'ouvrir quand je clic dessus
    - Soit tu stocke le contenu des tes cours dans ce champs de typle BLOB, sous forme de texte !  
- Soit, comme ça a été dit plus haut, tu enregistre tes cours dans un répertoire du site, sous forme de PDF ou Fichier WORD ..., et tu enregistre seulement le lien(chemin) vers les cours !
Enregistrer ton fichier sous forme binaire dans ta BD est une très mauvaise idée, car ça surchargera et alourdira tes requêtes !
A éviter !
    - Soit, comme ça a été dit plus haut, tu enregistre tes cours dans un répertoire du site, sous forme de PDF ou Fichier WORD ..., et tu enregistre seulement le lien(chemin) vers les cours !
Enregistrer ton fichier sous forme binaire dans ta BD est une très mauvaise idée, car ça surchargera et alourdira tes requêtes !
A éviter !
 
    
    
    
    
Genre fichiers/cours/cours_num_1.pdf
Certains fichiers, comme Word (Je crois), quand tu clique sur le lien, au lieu de s'ouvrir, ils se téléchargent, c'est possible d''y remédier, mais je sais pas comment !
C'est pas le lien du répertoire que tu dois mettre dans ta BD, c'est le lien vers ton fichier !
Ou juste le nom du fichier !
1 - Tu mets le lien absolu !
Dans ta BD, tu mets le lien complet, Exemple :
http:tonsite.com/fichiers/cours/nom_du_fichier1.pdf
Et lors de l'affichage des liens, tu mets direct !
<?php while($donnees = mysql_fetch_array($req)) { echo '<a href="'.$donnees['lien'].'">'.$donnees['nom'].'</a>'; } ?>2 - Tu mets le lien relatif !
Exemple : fichiers/cours/nom_du_fichier1.pdf
Et lors de l'affichage des liens, tu mets !
<?php while($donnees = mysql_fetch_array($req)) { echo '<a href="http://www.tonsite.com/$donnees['lien'].'">'.$donnees['nom'].'</a>'; } ?>3 - Tu mets juste le nom du fichier !
Dans le champs lien de ta BD, tu aura Exemple : nom_du_fichier1.pdf
Et lors de l'affichage, tu mets ...
<?php while($donnees = mysql_fetch_array($req)) { echo '<a href="http://tonsite.com/fichiers/cours/'.$donnees['lien'].'">'.$donnees['nom'].'</a>'; } ?>Conseil, la dernière implémentation est la meilleure ...
1 - Parce qu'elle sera plus fluide en cas ou tu voudra changer le répertoire ou tu enregistre tes cours , car il suffira de changer l'adresse lors de l'affichage ...
2 - Ta base de données sera moins chargé, car au lieu de stocker une adresse absolu qui comporte au moins 40 caractères, tu tu contentera de (au plus) 10 caractères seulement !
Remarque : Il n'est pas obligatoire de mettre le lien absolu lors de l'affichage, c'est possible de mettre ceci :
<?php while($donnees = mysql_fetch_array($req)) { echo '<a href="./fichiers/cours//'.$donnees['lien'].'">'.$donnees['nom'].'</a>'; } ?>Sauf que ça dépend de l'emplacement de la page appelante !
je doit ajouter le nom du cours juste après?