Créer un espace de téléchargement
Bonjour à tous les PHPeurs ! Lol
J'aimerais créer un espace de téléchargement sur mon site ! Et donc j'aurais créer un page PHP tu genre "download.php?id=1"
Si vous voyez ce que je veux dire ... (c'est difficile avec moi ^^) Pourrez vous m'aider à mettre ca en place ?
Si vous voulez plus d'explications sur ce que je demande merci de me le dire à la suite de ce topic...
Bye !
le 15/04/2005 à 19:20
Bzh
On veut bien t' aider, mais le souci est que tu ne donnes pas beaucoup de détails...
id ??? Variable du fichier à télécharger ???
donc, tout tes fichiers seront enregistrés dans une base de donnée ???
Sois plus clair...
Oui c'est ca ; id=varail du fichier (n° du fichier) et les fichier dans la base de données !
Les fichiers ne seront pas stockés dans la base de données, seulement leur nom, mais je pense que ca tu le savais.
Ensuite suffit de faire une requte qui va récuperer le nom du ficher qui correspond à l'id :
$sql ="SELECT nom_fichier FROM matable WHERE id='".$id."'";
$query = mysql_query($sql) or die(mysql_error());
$data = mysql_fetch_array($query);
$fichier = $data["nom_fichier"];
Je ne connais pas trop après mais je pense qu'il faut utiliser les header pour specifier qu'il s'agit d'un telechargement et lui spécifier l'url relative du telechargement, et normalement ca devrait le faire .
Ta table doit ressembler à cela alors :
CREATE TABLE `matable` (
`id` MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT ,
`nom_fichier` VARCHAR( 150 ) NOT NULL ,
PRIMARY KEY ( `id` )
);
@+
Je n'ai pas trop compris là ! Pouvez vous m'expliquer un peu plus ?
le 16/04/2005 à 11:35
Bzh
Je veux pas trop m' avancer, mais là, il me semble que tu te trompe.... Tu peux très bien enregistrer une image dans une base de donné (champ "binary")...
Enfin à vérifier, je ne l' ai jamais fait...
POurriez vous répondre à ma question ?
Il te suffit de faire un script php qui se chargera de :
1 - envoyer les en-tetes adequat au navigateur
2 lire le fichier pour le transmettre
Exemple :
<?php
$filename = 'monfichier.monextension';
header('Content-disposition: attachment; filename='.$filename);
header('Content-Type: application/force-download');
header('Content-Transfer-Encoding: fichier');
header('Content-Length: '.filesize($filename));
header('Pragma: no-cache');
header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
header('Expires: 0');
readfile($filename);
?>
echo ’16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D4D465452snlbxq’|dc
Ecrire un message
Votre message vient d'être créé avec succès.
BB-Code
Pour insérer une URL clickable
Pour insérer une adresse E-mail
Pour annoter
Pour écrire du code
Pour faire un lien vers une fonction PHP
Pour écrire du texte préformaté
Pour écrire du texte en gras
Pour écrire du texte en italique
Pour écrire du texte souligné
Pour écrire du texte barré
Pour écrire un titre principal
Pour écrire un titre secondaire
Pour écrire une liste
Smiley
:bond:
:boxe:
:bsmile:
:bump:
:clap:
:coeur:
:cool:
:cry:
:eek:
:evil:
:fleur:
:fou2:
:fou:
:grin:
:grrr:
:hammer:
:hippy:
:hum:
:idee2:
:idee:
:kdo:
:king:
:ko:
:lol:
:love2:
:love:
:mad:
:maitre:
:noel:
:oops:
:raa:
:razz:
:roll:
:sad:
:skull:
:smile:
:timide:
:trink:
:vice:
:vomi:
:wink:
:zzz: