Accueil > Forum > > > > Enregistrer dans mysql upload fichier
Enregistrer dans mysql upload fichier
jeudi 9 décembre 2004 à 12:48:34 |
Enregistrer dans mysql upload fichier

jeiragne
|
Bonjour et merci de me répondre, j'essaye d'enregistrer un .doc (fichier word) dans un champ blob de mysql mais le problème est que je ne sais pas où est le fichier, le code qui suit ne copie pas dans le blob champ1. Que faut-il faire ? Merci de m'aider $uploaddir = '/var/www/uploads/'; move_uploaded_file($_FILES[$doc]['tmp_name'], $uploaddir . $_FILES[$doc]['name']) ; print_r($_FILES); $lien = mysql_connect("","","") ; mysql_select_db("") ; $query = "insert into temp (champ1) values ('".$_FILES[$doc]['tmp_name']."')" ; $result = mysql_query($query) ; mysql_close($lien) ;
|
|
jeudi 9 décembre 2004 à 18:31:56 |
Re : Enregistrer dans mysql upload fichier

HecToR_coCHON
|
Tu peux enregistrer du texte dans une base SQL mais là t'es entrain de lui demander d'enregistrer l'adresse d'un fichier qui n'est même pas au bon format je pense.
Ce que tu peu faire, c'est soit lire le fichier doc que t'as enregistrer avec move_uploaded_file et enregistrer son contenu dans ton champs blob. Sinon tu peux juste enregistrer le chemin d'accès vers ton fichier move_uploaded_filé ( super verbe ) et après pour le relire juste l'appellé en lisant son adresse dans la table sql.
|
|
jeudi 9 décembre 2004 à 19:37:38 |
Re : Enregistrer dans mysql upload fichier

elnawak
|
salut jeiragne !
oui en effet HecToR_coCHON a raison la tu enregistre l'adresse du fichier et non son contenu (ce qui en soit est une bonne idée ca ne surchargera pas ta base pour rien ) mais le probleme c'est que le chemin que tu enregistre dans dans base n'est pas le bon .... tu enregistre "$_FILES[$doc]['tmp_name']" alors qu'il faut faut "$uploaddir . $_FILES[$doc]['name']" c'est la qu'est sotcké ton fichier sur le serveur (et c'est la que tu le trouveras ) sinon si la fonction move_uploaded_file te pose PB utilise copy . (ca marche parieil)
voila j'espere t'avoir aidé @+
|
|
jeudi 9 décembre 2004 à 19:40:34 |
Re : Enregistrer dans mysql upload fichier

jeiragne
|
Merci de t'interesser à mon pb et de m'avoir répondu. Je dois ajouter que j'ai un peux progresser mais j'ai toujours une erreur, voici le dernier code :
$uploaddir = '/var/www/uploads/';
move_uploaded_file($_FILES[$doc]['tmp_name'], $uploaddir.$_FILES[$doc]['name']) ;
$handle = fopen($uploaddir.$_FILES[$doc]['name'], "rb"); $contents = ''; while (!feof($handle)) { $contents .= fread($handle, 8192); } fclose($handle);
$lien = mysql_connect("","","") ; mysql_select_db("") ; $query = "insert into temp (champ1) values ('".$contents."')" ;
Merci de voir le pb du dernier source, je précise que mon site est sur free.
|
|
jeudi 9 décembre 2004 à 20:02:13 |
Re : Enregistrer dans mysql upload fichier

elnawak
|
re salut !
la en effet y a un pb tu fais :
while (!feof($handle)) { $contents .= fread($handle, 8192); } en fait tu combine deux methodes je m'explique : soit tu fais $contents=fread($handle, filesize ($handle)); et non pas 8192 car fread lis un fichier du debut jusqu'a l'endroit specifie par le 2 param (en octect) autrement dis si tu veux tout le fichier filesize ("ton_fichier") .
sinon tu fait :
while (!feof($handle)) { $contents .= fgets($handle, "nb_octet_arbitraire"); //ex 1024 }
mais pas les deux en meme temps , je sais on veut bien faire mais en prog moins y en a, moins y a d'erreurs ...
sinon le reste de ton code me parait correct mais n'hesite pas si tu as d'autre PB.
@+ et bon courage !
|
|
jeudi 9 décembre 2004 à 20:40:25 |
Re : Enregistrer dans mysql upload fichier

jeiragne
|
re bonjour,
j'ai encore progresser mais il reste 2 erreurs qui se répètent avec la boucle while et voici les messages d'erreurs :
Warning: feof(): supplied argument is not a valid stream resource in ... Warning: fgets(): supplied argument is not a valid stream resource in ... ---------------------------------- Source final ------------------------------ move_uploaded_file($_FILES[$doc]['tmp_name'], $_FILES[$doc]['name']) ;
$handle = fopen($_FILES[$doc]['name'], "r"); $contents = ""; while (!feof($handle)) { $contents .= fgets($handle, 1024); } fclose($handle);
Merci de me répondre.
|
|
jeudi 9 décembre 2004 à 21:09:47 |
Re : Enregistrer dans mysql upload fichier

elnawak
|
on va essayer une autre methode beacoup plus simple !
$texte=file_get_contents($handle); //solution a privilegier plus de boucle while, $texte contient tout ton fichier ! et en plus c'est plus rapide ! (mais je sais pas si ca marche avec tous les type de fichiers faut tester ) sinon si tu veux garder ta boucle while essaie de mettre "rb" (mode binaire ) dans fopen. et si vraiment rien ne marche utilise fread(),je pense que c'est mieux.
PS : je te conseille de faire un file_exits ($handle) (renvoie true ou false) avant toute chose histoire de voir si le fichier est la ou tu pense.on est jamais trop prudent !
en esperant que ca finira pas marcher comme tu le souhaite !
@+
|
|
jeudi 9 décembre 2004 à 23:05:45 |
Re : Enregistrer dans mysql upload fichier

jeiragne
|
bonsoir,
j'ai testé l'existence du fichier et malheureusement, il n'existe pas. Peut-être que chez free ce n'est pas possible de lire un fichier de puis un $_FILES ? j'ai essayé avec $HTTP_POST_FILES, ça ne marche pas mieux dans mon form il y a bien enctype ..., si je ne met pas enctype ... dans le form, je récupère un nom de fichier lisible d://mes documents ... mais ça ne marche pas mieux !! j'ai essayé avec "rb" ou "r" c'est pareil !!
merci de réfléchir encore sur ce problème
:)
|
|
vendredi 10 décembre 2004 à 07:48:17 |
Re : Enregistrer dans mysql upload fichier

elnawak
|
essaie ca : ton form doit etre : enctype="multipart/form-data" $avatar_tmp=$_FILES["file"]["tmp_name"]; if ($avatar_tmp!=NULL){ copy($avatar_tmp,"avatar/". $file_name); } je pense que l'upload marche chez free, y pas de raison, mais le fichier que tu recoit dois etre enregistre on ne sait ou .... aller ca va bien finir par marcher ! 
|
|
vendredi 10 décembre 2004 à 11:23:04 |
Re : Enregistrer dans mysql upload fichier
|
Cette discussion est classée dans : fichier, enregistrer, mysql, doc, files
Répondre à ce message
Sujets en rapport avec ce message
MYSQL et enregistrer un fichier [ par ]
Salut ,Je voudrais savoir enregistrer un enregistrement de MYSQL et enregistrer un fichier sur le serveur(l'enrigistrement de MYSQL est fais avec Drea
Les fichiers [ par Bumcello ]
Bonjour,Le script suivant sert à uploader des images de types differents. Et donc si je choisis un fichier jpeg cela ne fonctionne pas cela m'affiche
Uploder un fichier .doc ou .pdf dans un serveur distant [ par rachidphp93 ]
bonjour tout le monde; Est ce que quelqu'un à une idée pour uploder un fichie
Probleme Fichier [ par sabou94 ]
Bonjour,Voilà mon soucis :C'est simple je veux faire un browse de fichier et enregistrer ce fichier sur mon serveur.Je précise que je reprend une appl
Taille max pour une img [ par guisx00 ]
Salut voila j'ai un petit upload d'image et j'aimerais lui dire que si la taille de l'image est superieur à 90x90 on ne cree pas seul prob je vois pas
svp quelqu'un peut me corriger [ par soumabm ]
svp quelqu'un peut me corriger cette page ,son principe est de deposer une annonce dans un site.j'ai une table pays,raison_social,compte_utilisateur,a
inserer donnes dans une base mysql [ par kelm_by ]
salut tous le monde,j'ai un fichier txt ou il ya 1000ligne du genre:محمد هنيديمح
inclusion d'une classe provenant d'un autre fichier [ par lilippx ]
salut, je me suis mis au php ce matin mais je bute sur un petit truc (dès le premier jour, ce n'est pas motivant...)je n'arrive pas à instancier un ob
j'ai un bug dans mon script upload HELP!!! [ par ptiloup73 ]
Voila j'ai fais un forumulaire d'upload avec un check de l'extention mais bon .. je ne comprends pas pourquoi il plante.. je débute en php donc je pen
problème avec upload [ par 01cod10 ]
Bonsoir à tous,je n'arrive toujours pas uploader une photo dans mon répertoire et ma base comme je voulais. je vous présente les scripts que je compte
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio [WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|