Tom's Guide > Forum > Programmation > Importation du contenu d'un fichier html dans une BD

Importation du contenu d'un fichier html dans une BD

Forum Programmation : Importation du contenu d'un fichier html dans une BD

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour,

Je suis nouvelle sur ce forum et j'ai une petite question à vous posez.

Voilà, depuis ce matin, je cherche à importer le contenu d'un fichier html, que je sélectionne grâce à un champ "file" dans mon formulaire.

Quand je clique sur le bouton "Valider" de ma page web, ça importe le chemin du fichier mais pas le contenu.

Il n'y a peut être pas de solution(s), mais je préfère quand même demandé au cas ou.

Si vous avez une réponse à mon soucis, elle seras la bienvenue.

Merci d'avance.

Cordialement.

Miala87


Message édité par Miala87 le 05-12-2008 à 10:52:36
Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Salut,

 
Citation :

Je suis nouvelle sur ce forum et j'ai une petite question à vous posez.


:bienvenue:

 

Pour ton soucis, si ça n'importe pas le fichier, c'est que tu fais ça mal ;)
Il faudrait voir ton code HTML pour ton formulaire et ton code PHP ou autre pour voir comment tu récupères le fichier


Message édité par OmaR le 04-12-2008 à 13:58:30
------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR

Merci pour ta réponse, je peut mettre mon code php mais pas celui du fichier html (car mon entreprise ne veut pas.

 

Voici mon code php:

 
Code :
  1. <?php
  2.     include 'structure/header.php';
  3.     /*Variables*/
  4.         $bdd="****"; /*Base de données*/
  5.         $host="***"; /*Hote (généralement localhost)*/
  6.         $user="***"; /*Utilisateur*/
  7.         $pass=""; /*Mot de passe*/
  8.     /*Connexion bdd*/
  9.         $DB_Link = mysqli_connect($host,$user,$pass,$bdd) or die ("Impossible de se connecter à la base de données" );
  10. ?>
  11.     <form name='Creation' method='post' action="<?php echo $_SERVER[PHP_SELF]; ?>" enctype='multipart/form-data'>
  12.         <input type="hidden" name="action" value="mail">
  13.         <div id="demande_devis">
  14.             <div class="titre_page">Choix du mail </div>
  15.             <div class="form_marge_left2"></div>
  16.             <div class="obligatoire" style="text-align:left;font-size:14px">Choix d'un mail :</div>
  17.             <div class="form_marge_content2" >
  18.                 <br /><br />
  19.                 <p>
  20.                     <label class="labelCreateCompte obligatoire" style="font-size:12px">Contact :</label>
  21.                     <select class="input inputCbo" name="contactID">
  22.                         <?php
  23.                             $req= "SELECT contactID, contact_name FROM contact GROUP BY contact_name";
  24.                             $res = mysqli_query($DB_Link, $req) or die (mysqli_error($DB_Link));
  25.                             echo '<option value="" >--Choisir une contact--</option>';
  26.                             $selected = ' "selected=selected" ' ;
  27.                             while($val=mysqli_fetch_array($res)) {
  28.                                 $sel = ($val["contactID"] == $_POST['contactID']) ? $selected  : '' ;
  29.                                 echo "<option value='". $val["contactID"]. "' $sel >".$val["contact_name"]."</option>\n";
  30.                             }
  31.                         ?>
  32.                     </select>
  33.                 </p>
  34.                 <br /><br />
  35.                 <p style="margin: 0px 0 20px 0;">
  36.                     <label class="labelCreateCompte obligatoire" style="font-size:12px">Sujet :</label>
  37.                     <input type="text" class="input inputCreateCompte" name="subject" value="" />
  38.                 </p>
  39.                 <p style="margin: 0px 0 20px 0;">
  40.                     <label class="labelCreateCompte obligatoire" style="font-size:12px">Choisir un fichier dans la liste :</label>
  41.                     <input type="file" class="input inputCreateCompte" name="fichier_m" value="" />
  42.                 </p>
  43.                 <center><p>
  44.                     <input class="form_submit" type="submit" name="valider" value="Valider" />
  45.                 </p></center>
  46.             </div>
  47.         </div>
  48.     </form>
  49. <?php
  50. $action = $_POST['action'];
  51.         switch($action)
  52.         {
  53.             /*Lecture et ajout des données dans la table*/
  54.             case "mail":
  55.                 $contact= $_POST["contactID"];
  56.                 $mail_subject= $_POST['subject'];
  57.                 $fichier=$_FILES['fichier_m']['tmp_name'];
  58.                 if (file_exists($fichier))
  59.                     $fp = fopen($fichier, "r" );
  60.                 else
  61.                 {/*Le fichier n'existe pas*/
  62.                     echo "Fichier introuvable!<br />Importation stoppée.";
  63.                     exit();
  64.                 }
  65.                 /*Ajouter un nouvel enregistrement dans la table*/
  66.                 $query="INSERT INTO mail (`mail_subject`,`mail_body_html`,`contactID`) VALUES ('$mail_subject','$fichier','$contact')";
  67.                 $result=mysqli_query($DB_Link, $query);
  68.                 if(mysqli_error($DB_Link))
  69.                 {/*Erreur dans la base de données*/
  70.                     echo print "Erreur dans la base de données : ".mysql_error();
  71.                     print "<br />Enregistrement stopé.";
  72.                     exit();
  73.                 }
  74.                 else /*Tout va bien*/
  75.                 {
  76.                     //print "$nom, $description, $date, $dateCrea <br />";
  77.                     confirmation ($_POST);
  78.                 }
  79.         }
  80. function confirmation($_POST)
  81. {
  82.     //print "$nom, $description, $date, $dateCrea <br />";
  83.     echo "<br />Enregistrement terminée, avec succés.";
  84. }
  85. include 'structure/footer.php';
  86. ?>
 

Voilà j'espère qu'il est assez clair.

 

Edit Modération: suppression des identifiants de connexion et ajout de balises code


Message édité par OmaR le 04-12-2008 à 16:28:14
Répondre à Miala87

Alors, en fait le code HTML que je voulais tu me l'as donné, c'était le code du formulaire, pour vérifier que tu avais bien mis le enctype pour pouvoir mettre des fichiers.
Sinon, une fois que tu as ton fichier, il faut utiliser la fonction move_uploaded_file afin d'uploader le fichier où tu veux sur ton serveur.
Une fois que tu l'auras copié dans un autre répertoire (il est dans le répertoire temporaire), tu stockeras le lien vers le fichier dans ta base de données (ou sinon tu peux directement stocker le fichier, mais c'est pas conseillé)

------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR

Merci beaucoup pour ton aide, tout fonctionne correctement maintenant.

J'avais d'autre petit bug derrière mais maintenant c'est bon.

Merci beaucoup et bonne soirée.

Répondre à Miala87

Bonjour,

En faite, j'ai un second soucis que je vient tout juste de remarquer.
Comment on peut récupérer le contenu d'un champ file pour l'important dans un champ d'une base de données?

J'ai mis ça pour récupérer de contenu : $source= $_FILES['fichier_u'];
Mais ça me mais "ARAY" dans la table. Il faut juste que je prenne le nom du fichier.

Si vous avez une petite idée, je vous en remercie.

Cordialement

Répondre à Miala87

Salut,

http://fr.php.net/features.file-upload

Citation :

$_FILES['userfile']['name']

Le nom original du fichier, tel que sur la machine du client web.

------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR

Merci beaucoup pour ta réponse, maintenant tout fonctionne correctement.

Bonne journée

Répondre à Miala87
Tom's Guide > Forum > Programmation > Importation du contenu d'un fichier html dans une BD
Aller à :

Il y a 2074 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens