RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Srv: irc.moteurprog.com
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 déclaration d'un fichier dans une BDD

Forum : PHP
Sous Catégorie : Aucune
Type du sujet : Sujet Normale
FAQ : FAQ PHP

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGE : [1]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM PHP

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
gabi27685
Nouveau membre
Inscrit : 23/03/2008
Messages : 5
Message
#151011
Posté le 23/03/08 à 20:14
1-comment je peux déclarer un fichier dans une BDD
exp de déclaration:
nom de type varchar
id de type int
fichier de type ?????
je veux que ce soit visible sur une page web (exp: ll.php) pour être téléchargé en cliquant sue ce lien.
merci

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

RoCk_4_EvEr
Admin Projet
Superviseur :
- Bavardages
- Langages Web
Modérateur :
- XP / 2000 / .
- Défis 3D
- Mathématique.
- MySQL
Chef de projet(s) :
- AdminServ
- Irc-Land
- MoteurProg Bot

Avatar de RoCk_4_EvEr
Inscrit : 20/11/2005
Messages : 1228
Message
#151013
Posté le 24/03/08 à 00:05
Bonsoir Gabi, pourrais-tu être plus précis stp ? je comprend pas trop... soit plus clair ;)
__________________________
Votre Serviteur Rock_4_Ever Smiley

Je m'excuse des fautes faites.

Je suis présentement: Image sur msn.

N'oubliez pas non plus la mention Résolu Image

Venez nous rejoindre sur le chat de MoteurProg, par Java ou mIRC

Lecteur de Flux RSS de MoteurProg

Image Image

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Mab
Modérateur :
- PHP
- IRC
Avatar de Mab
Inscrit : 13/05/2004
Messages : 418
Message
#151188
Posté le 26/03/08 à 16:17
Pour stocker un fichier dans une base de données, tu peux utiliser le type BLOB qui est prévu pour cela.
Mais je ne peux que te conseiller de ne pas faire ça. Il est bien plus facile de récupérer uniquement l'adresse du fichier sur le serveur et de l'inscrire dans un VARCHAR.

Par exemple, le fichier zipzip-pouetpouet.doc est dans le dossier goulougoulou :

VARCHAR(200) [ nom ] = "Mon fichier doc"
INT(11) [ id ] = AUTO_INCREMENT
VARCHAR(200) [ fichier ] = "goulougoulou/zipzip-pouetpouet.doc"

++

Mab
__________________________
Image

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

gabi27685
Nouveau membre
Inscrit : 23/03/2008
Messages : 5
Message
#151190
Posté le 26/03/08 à 16:43
merci,
et lorsque je veux faire l'inverse, c-a-d:
faire le download à partir de ces liens, que'est ce qu'il faut faire.
merci d'avance

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Mab
Modérateur :
- PHP
- IRC
Avatar de Mab
Inscrit : 13/05/2004
Messages : 418
Message
#151195
Posté le 26/03/08 à 18:15
Il faut lire les octets du fichier et les renvoyer au navigateur en ayant pris soin de spécifier le type mime du fichier envoyé.

Step 0) Récupérer les infos du fichier
$infoFichier = mysql_fetch_array($res);
( $res est le résultat de ta requête SQL, je te laisse cette partie à tes aises )

$fileName = basename($infoFichier['name']); // Le nom du fichier
$fileDir = dirname($infoFichier['name']); // le nom du répertoire

Step 1) Nettoyer l'envoi du fichier au niveau de PHP :
# Purge de PHP
@ob_end_clean();
@ini_set('zlib.output_compression', 'Off');

Step 2) Nettoyer l'envoi du fichier au niveau du navigateur :
# Purge du navigateur
header('Pragma: public');
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
header('Cache-Control: must-revalidate, pre-check=0, post-check=0, max-age=0');

Step 3) Spécifier l'encodage

# Spécification de l'encodage
header('Content-Transfer-Encoding: none');

Step 4) Indiquer le nom du fichier à télécharger et son type :

# Forcer le téléchargement
header("Content-type: application/zip; name=\"$fileName\"");
header("Content-Disposition: attachment; filename=". $fileName);
( On peut également indiquer un autre nom par convenance )
( application/zip => pour les fichiers zip. Il te faut renseigner le type mime correspondant à ton fichier )


Step 5) Indiquer la taille du fichier
# Taille du fichier
header("Content-length: ".(string)(filesize($fileDir . $fileName)));

Step 6) Récupérer le flot d'octets pour le renvoyer au navigateur par tranche de 4096 :
# On envoi la sauce
$hand = fopen ($fileDir . $fileName,'rb');
while ( !feof($hand) ) {
print( fread($hand, 4096));
flush();
}
fclose ($hand);

++

Mab
__________________________
Image

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM PHP



    PAGE : [1]



.: Site Web développé par Julien Pichot et l'équipe MPWG avec www.evolvia-web.com :.