Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1427 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/Bootstrap] Problème de pièce jointe et d'envoi de données

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP/Bootstrap] Problème de pièce jointe et d'envoi de données

n°2277953
MiamiVince​33
Posté le 18-03-2016 à 13:04:27  profilanswer
 

Bonjour,  
 
J'ai un soucis, je suis en train de voir pour upload une pièce jointe dans un fichier et d'avoir le lien dans ma BDD, mais avant de modifier mon code d'upload je souhaiterai résoudre un problème vraiment génant. Pour les pièces jointe il faut un encodage enctype sauf que lorsque je le rajoute dans ma balise form les données de mon formulaire ne s’insèrent plus dans ma BDD alors que sans cela fonctionne.
 
Voici mon code:
 
HTML:
 

Code :
  1. <div class="row">
  2.   <div class="col-md-8 col-md-offset-2">
  3.     <div class="cform" id="contact-form">
  4.       <form action="#finFormu" method="post" role="form" class="">
  5.         <div class="form-group">
  6.           <label for="oui">Civilité :</label>
  7.           <br/>
  8.           <input type="radio" name="candid_civi" value="Mr" id="oui" checked="checked" /> <label for="oui"> Mr.</label>
  9.           <input type="radio" name="candid_civi" value="Mme" id="non" /> <label for="non"> Mme</label>
  10.           <div class="validation"></div>
  11.         </div>
  12.         <div class="form-group">
  13.           <label for="name">Nom</label>
  14.           <input type="text" name="candid_nom" class="form-control" id="name" placeholder="Votre nom" data-rule="maxlen:4" data-msg="Please enter at least 4 chars"/>
  15.           <div class="validation"></div>
  16.         </div>
  17.         <div class="form-group">
  18.           <label for="name">Prénom</label>
  19.           <input type="text" name="candid_prenom" class="form-control" id="name" placeholder="Votre prénom" data-rule="maxlen:4" data-msg="Please enter at least 4 chars" />
  20.           <div class="validation"></div>
  21.         </div>
  22.         <div class="form-group">
  23.           <label for="born">Date de naissance</label>
  24.           <input type="date" class="form-control" name="candid_born" id="born" placeholder="Votre date naissance" data-rule="born" data-msg="Entrez une date valide" />
  25.           <div class="validation"></div>
  26.         </div>
  27.         <div class="form-group">
  28.           <label for="email">Adresse E-mail</label>
  29.           <input type="email" class="form-control" name="candid_mail" id="email" placeholder="Votre Email" data-rule="email" data-msg="Entrez une adresse email valide" />
  30.           <div class="validation"></div>
  31.         </div>
  32.         <div class="form-group" id="finFormu">
  33.           <label for="subject">Adresse</label>
  34.           <input type="text" class="form-control" name="candid_adresse" id="address" placeholder="Adresse" data-rule="maxlen:4" data-msg="Please enter at least 8 chars of subject" />
  35.           <div class="validation"></div>
  36.         </div>
  37.         <div class="form-group">
  38.           <label for="subject">Numéro de téléphone</label>
  39.           <input type="text" class="form-control" name="candid_phone" id="phone" placeholder="Format attendu : 06 47 ..." data-rule="maxlen:25" data-msg="Please enter at least 8 chars of subject" />
  40.           <div class="validation"></div>
  41.         </div>
  42.         <div class="form-group">
  43.           <label for="subject">Joindre les documents nécessaires (Archive)</label>
  44.                 <input type="hidden" class="form-control" name="MAX_FILE_SIZE" id="size" value="6291456">
  45.                 <input type="file" name="fichier">
  46.             <div class="validation"></div>
  47.         </div>
  48.            
  49.             <input type="submit" class="btn btn-theme pull-left" name="envoi" value="Soumettre"></input>
  50.       </form>
  51.       <div id="sendmessage">
  52.         Votre demande à été envoyée avec succès. Merci beaucoup !
  53.       </div>
  54.     </div>
  55.     <!-- ./span12 -->
  56.   </div>
  57. </div>


 
PHP:
 

Code :
  1. <?php
  2. try {
  3. if(isset($_POST['envoi']))
  4. {
  5.   if( !empty($_POST["candid_civi"]) && !empty($_POST["candid_nom"]) && !empty($_POST["candid_prenom"]) && !empty($_POST['candid_born'])
  6.       && !empty($_POST["candid_mail"]) && !empty($_POST["candid_adresse"]) && !empty($_POST["candid_phone"]) && !empty($_POST["fichier"]))
  7.     {
  8.     $req = $con->prepare("CALL inscriptionEtudiant(:nom_eleve, :prenom_eleve, :civilite_eleve, :naissance_eleve, :email_eleve, :adresse_eleve, :tel_eleve, :fichier)
  9.                         " );
  10.       $req->execute(array(
  11.         "nom_eleve" => $_POST["candid_nom"],
  12.         "prenom_eleve" => $_POST["candid_prenom"],
  13.         "civilite_eleve" => $_POST["candid_civi"],
  14.         "naissance_eleve" => $_POST['candid_born'],
  15.         "email_eleve" => $_POST["candid_mail"],
  16.         "adresse_eleve" => $_POST["candid_adresse"],
  17.         "tel_eleve" => $_POST["candid_phone"],
  18.         "fichier" => $_POST["fichier"]
  19.         ));
  20.      
  21.         /*
  22.  
  23.         //Testons si le fichier a bien ete envoye et s'il n'y a pas d'erreur
  24.           if (isset($_FILES['fichier']) AND $_FILES['fichier']['error'] == 0);
  25.              
  26.           {
  27.         //Testons si le fichier n'est pas trop gros
  28.           if ($_FILES['file']['size'] <=6000000)
  29.           {
  30.         //Testons si l'extension est autorisée
  31.           $infosfichier = pathinfo($_FILES['fichier']['name']);
  32.           $extension_upload = $infosfichier['extension'];
  33.           $extensions_autorisees = array('rar', 'zip','');
  34.           if (in_array($extension_upload, $extensions_autorisees))
  35.           {
  36.         //on peut valider le fichier et le stocker definitivement
  37.         move_uploaded_file($_FILES['fichier']['tmp_name'], './upload/' . basename($_FILES['fichier']['name']));
  38.         echo "l'envoi a bien ete effectue !";
  39.           }
  40.         }
  41.       }                     
  42.  
  43.     */
  44.       $error = '';
  45.       ?>
  46.       <script>document.getElementById('sendmessage').style.display = "block";</script>
  47.       <?php
  48.   }
  49. }
  50. }
  51. catch (Exception $e)
  52. {
  53.   echo $e->getMessage();
  54. }
  55. ?>


 
Merci d'avance, là je suis complètement bloqué même un prof n'arrive pas à le résoudre.  :ange:


Message édité par MiamiVince33 le 18-03-2016 à 13:06:16

---------------
Amateur de grosses et belles configurations
mood
Publicité
Posté le 18-03-2016 à 13:04:27  profilanswer
 

n°2277969
yoyopouce
Posté le 18-03-2016 à 14:44:49  profilanswer
 

j'ai testé ton code sur mon serveur et il marche bien avec le enctype

Code :
  1. <form action="test.php" role="form" class="" enctype="multipart/form-data" method="post">


 
Peux tu nous afficher ce qu'il y a dans le $_POST et le $_FILES en ajoutant ceci dans ton fichier php
 

Code :
  1. echo '<pre>'.var_dump($_POST).'</pre>';
  2. echo '<pre>'.var_dump($_FILES).'</pre>';

n°2278022
MiamiVince​33
Posté le 19-03-2016 à 16:45:01  profilanswer
 

Merci de ta réponse,  
 
 :pt1cable: sa marche sur ton serveur, des fois l'informatique...  
 
A vrai dire il m'affiche rien du tout (dans le action du form le lien c'est une ancre je me demande si elle fait pas conflit et le fait que tu ais mis une page en lien change la donne)
 


---------------
Amateur de grosses et belles configurations
n°2278059
MiamiVince​33
Posté le 20-03-2016 à 16:03:48  profilanswer
 

:bounce:


---------------
Amateur de grosses et belles configurations
n°2278546
yoyopouce
Posté le 29-03-2016 à 09:48:20  profilanswer
 

re j'avais pas vu ta reponse, mais du coup quand tu clique sur le bouton submit ta page ne se recharge pas du coup ?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/Bootstrap] Problème de pièce jointe et d'envoi de données

 

Sujets relatifs
Insérer des données CSV dans un graph sur une page CSS/HTMLAutomatisation d'un script PHP avec CRON
[HTML + JAVA] probleme appli android ou navigateurprobleme formule exel
[Symfony/Php] vers Application mobileImporter des données de plusieurs fichiers, sous condition
[Python] Problème de frameplateforme d'envoi de sms automatique
probleme inversion matrice 
Plus de sujets relatifs à : [PHP/Bootstrap] Problème de pièce jointe et d'envoi de données


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR