voila tout mon code
1/ la page recup.php
Code : Tout sélectionner
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<form name="form1" method="post" action="donnees.php">
<input type="text" name="id">
<input type="submit" name="Submit" value="ok">
</form>
</body>
</html>
2/ la page fich.php
<?php
/*define ("MACHINE", "serveur.mondomaine") ;
define ("UTILISATEUR", "mon_nom") ;
define ("BASE", "ma_base") ;
define ("MOT_DE_PASSE", "mon_mot_de_passe") ;*/
define ("TABLE", "fichiers") ;
$fich=$HTTP_POST_FILES['fich']['tmp_name'];
include("connexion.php");
define ("FICHIER", "$fich") ;
$c = @mysql_connect("localhost","root","") ;
if ( $c == 0 ) {
die ("Serveur inaccessible\n") ;
}
if (mysql_select_db("webmail") == false )
die ("Base de donnée inaccessible\n") ;
$titre =$HTTP_POST_FILES['fich']['name'];
$type =$HTTP_POST_FILES['fich']['type'] ;
if (!$r=@fopen($fich, "r")) die("Erreur d'accès au fichier ".FICHIER."\n") ;
$size=$HTTP_POST_FILES['fich']['size'];
$donnees = addslashes(fread($r, $size));
$req= "INSERT INTO ".TABLE." ( Titre, Donnees, Type )".
" VALUES ('$titre','$donnees','$type')";
mysql_query($req) or die("Pas moyen d'ajouter le fichier à la table !!!");
$id= mysql_insert_id();
print "Numéro d'identifiant dans la table: $id<br>\n";
?>
3/la page donnees.php
<?
/*define ("MACHINE", "serveur.mondomaine") ;
define ("UTILISATEUR", "mon_nom") ;
define ("BASE", "ma_base") ;
define ("MOT_DE_PASSE", "mon_mot_de_passe") ;*/
define ("TABLE", "fichiers") ;
include("connexion.php");
$c = @mysql_connect("localhost","root","") ;
if ( $c == 0 ) {
die ("Serveur inaccessible\n") ;
}
if (mysql_select_db("webmail") == false )
die ("Base de donnée inaccessible\n") ;
$id=intval($_POST['id']); // un minimum de securite !
$req= "SELECT Titre, Donnees, Type ".
"FROM ".TABLE." where Id='$id'";
$r = @mysql_query($req ) or die ("Erreur: pas d'accès au fichier");
if(mysql_num_rows($r) == 1) {
$type = @mysql_result($r, 0, "Type");
$donnees = @mysql_result($r, 0, "Donnees");
header("Content-type: $type");
echo $donnees;
}
else {
echo "Erreur, pas trouvée le fichier";
};
$zone_accessible='/usr/ma_zone_accessible/';
$id=intval($_POST['id']); // un minimum de securite !
$req= "SELECT Titre, Donnees ".
"FROM ".TABLE." where Id='$id'";
$r = @mysql_query($req ) or die ("Erreur: pas d'accès au fichier");
if(mysql_num_rows($r) == 1) {
$titre = @mysql_result($r, 0, "Titre");
$donnees = @mysql_result($r, 0, "Donnees");
echo $zone_accessible;
if (!$r=@fopen($zone_accessible.$titre, "w")) die("Erreur: pas pu créer
$titre<br>\n");
fwrite($r,$donnees);
fclose($r);
echo "Fichier '$titre' créé dans $zone_accessible<br>\n";
}
else {
echo "Erreur, pas trouvé le fichier";
};
?>
en plus d'une page de connexion a la base de données qui a la structure suivante :
field==>type==>collation==>attributs==>null==>default==>extra
Id==>int(11)==> ==> ==>no==> ==>auto_increment
Titre==> varchar(50)==>latin... ==> ==>yes==>null==>
Donnees==>longblob==> ==>binary==>yes==> null==>
Type==> varchar(50)==>latin... ==> ==>yes==>null==>
[/quote]