Enregistrer un fichier dans la base de données

Fermé
java99 Messages postés 11 Date d'inscription mercredi 10 juin 2015 Statut Membre Dernière intervention 5 mai 2016 - 10 juin 2015 à 16:50
java99 Messages postés 11 Date d'inscription mercredi 10 juin 2015 Statut Membre Dernière intervention 5 mai 2016 - 12 juin 2015 à 13:41
je souhaite enregistré un fichier dans la base et ces fichiers st stockées dans le serveur. kan je fai sa enregistre juste le nom du fichier mais pas le contenu

1 réponse

hharchi9 Messages postés 567 Date d'inscription mercredi 18 décembre 2013 Statut Membre Dernière intervention 1 juillet 2015 23
10 juin 2015 à 16:52
Bonjour,

Tout d'abord, je vous déconseille d'enregistrer directement le fichier dans la base de données. Préférez enregistrer le chemin d'accès au fichier sur le serveur (qui est beaucoup moins lourd !).

Sinon, lorsque vous avez un problème avec un script, il est préférable de le donner pour que l'on puisse voir ce qui ne va pas,

Cordialement,

hharchi9.
1
java99 Messages postés 11 Date d'inscription mercredi 10 juin 2015 Statut Membre Dernière intervention 5 mai 2016
11 juin 2015 à 13:44
okay merci du conseil
mais maintenant j'aimerai avoir le script pour enregistrer le chemin d'accès du fichier
0
java99 Messages postés 11 Date d'inscription mercredi 10 juin 2015 Statut Membre Dernière intervention 5 mai 2016
11 juin 2015 à 13:46
$cv=$_FILES['cv'];
$motivation=$_FILES['motivation'];
$demande=$_FILES['demande'];
//echo "test1";
if(isset($cv) && isset($motivation) && isset($demande))
{
$infos = pathinfo($cv['name']);
$infos1 = pathinfo($motivation['name']);
$infos2 = pathinfo($demande['name']);
$extension_upload = $infos['extension'];
$extension_upload1 = $infos1['extension'];
$extension_upload2 = $infos2['extension'];
$extensions_autorisees = array('jpg','pdf','txt','docx');

/*$File = new FileFromDB($_FILES['file']['name']);
$File->upload($_FILES['file']);
$message = 'Votre fichier à bien été ajouté';
echo "test2";*/
if(in_array($extension_upload ,$extensions_autorisees) && in_array($extension_upload1 , $extensions_autorisees) && in_array($extension_upload2 , $extensions_autorisees))
{
if($cv['size']<=100000000 || $motivation['size']<=100000000 || $demande<=100000000)
{
move_uploaded_file($cv['tmp_name'],"../fichier/".$cv['name']);
move_uploaded_file($motivation['tmp_name'],"../fichier/".$motivation['name']);
move_uploaded_file($demande['tmp_name'],"../fichier/".$demande['name']);

$doc=new Document(4,$_SESSION['id'],4,null,null,null,null,$cv.",".$motivation.",".$demande);
$docu=new DocumentDAO();
$docu->Add($doc);

$prod="CALL sp_suiviaction_insert('".$_SESSION['id']."')";
mysql_query($prod);
?><script>alert('Docoment envoye avec success');
window.parent.location = "services.php";
</script>
<?php
}
else
{
?><script>alert('Docoment trop gros');
window.parent.location = "services.php";
</script>
<?php
}
}
else
{
?><script>alert('Vous n''avez pas entré l''extension demandé');
window.parent.location = "stage.php";
</script>
<?php
}
}
else
{
?><script>alert('Aucun fichier selectionner');
window.parent.location = "stage.php";
</script>
<?php
}
voici le script que j'utilise
0
hharchi9 Messages postés 567 Date d'inscription mercredi 18 décembre 2013 Statut Membre Dernière intervention 1 juillet 2015 23
11 juin 2015 à 18:15
Il suffit d'ajouter le script de connexion à la bdd en haut (ici en PDO):

try
{
	// On se connecte à MySQL 
	$bdd = new PDO(sprintf('mysql:host=%s;dbname=%s', $host, $dbname), $user, $pass); //paramètres à définir !
	$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(Exception $e)
{
	// En cas d'erreur, on affiche un message et on arrête tout
	die('Erreur : '.$e->getMessage());
}


Après l'upload, on fait une requête :

$chemin="../fichier/".$motivation['name'];
$query=$bdd->prepare('INSERT INTO table (nom,chemin) VALUES (:nom, :chemin)');
$query->execute(array(
':nom' => $nom,
':chemin' => $chemin));
$query->CloseCursor(); //On ferme le curseur



A toi d'adapter le code à ton script
0
java99 Messages postés 11 Date d'inscription mercredi 10 juin 2015 Statut Membre Dernière intervention 5 mai 2016 > hharchi9 Messages postés 567 Date d'inscription mercredi 18 décembre 2013 Statut Membre Dernière intervention 1 juillet 2015
12 juin 2015 à 13:41
:-) merci
0