Conversion données formulaires HTM à Excel
GW3D
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
Zep3k!GnO Messages postés 2025 Date d'inscription Statut Membre Dernière intervention -
Zep3k!GnO Messages postés 2025 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je n'arrive pas à avoir mes données de formulaire dans différentes colonnes dans Excel.
J'ai donc un formulaire HTML, une page avec du code PHP et un fichier .csv.
Il doit y avoir une erreur quelques parts, mais je ne la trouve pas.
Je pense que c'est au niveau de mon PHP avec tout simplement les /t, mais je ne sais pas sinon.
Voici mon code formulaire HTML:
Et ma page PHP:
Les doctypes ont été modifiés. Mais je ne pense pas que c'est le problème.
En théorie ce code devrait fonctionner. J'ai en tout cas les résultats quand j'ouvre mon fichier .csv dans Excel, mais tout dans la seul et même colonne A.
D'avance, je vous remercie pour votre aide et participation.
J'ai mis les balises < code > et < /code > mais ...
Edit: Identifiants de connexion supprimés.
Je n'arrive pas à avoir mes données de formulaire dans différentes colonnes dans Excel.
J'ai donc un formulaire HTML, une page avec du code PHP et un fichier .csv.
Il doit y avoir une erreur quelques parts, mais je ne la trouve pas.
Je pense que c'est au niveau de mon PHP avec tout simplement les /t, mais je ne sais pas sinon.
Voici mon code formulaire HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8" /> <title>Ki-oon</title> <link href="css/reset.css" rel="stylesheet" type="text/css" /> <link href="css/style_css.css" rel="stylesheet" type="text/css" /> <link href="css/enquete.css" rel="stylesheet" type="text/css" /> <script src="js/page_enquete_valid.js" type="text/javascript"></script> </head> <?php mysql_connect("XXXXXXXXXX", "XXXXXXXXXX", "XXXXXXXXXX"); mysql_select_db("bgraphkioon"); ?> <body> <div id="global"> <?php include("header.php"); ?> <!-- ------------------- Contenu ------------------ --> <div id="contenu_enquete"> <div class="enquete_tittle">Enquête</div> <!-- ------------------------ Enquête ------------------------- --> <h1>Enquête de satisfaction</h1> <div class="txt"> <form name="abonnement" method="post" action="page_enquete_mail.php" id="abonnement" onsubmit="return validation_contact()"> <h1>Contactez-nous</h1> <p class="">Afin d'améliorer nos offres. Nous proposons ce formulaire qui nous permettra de récolter et de traiter vos données.</p> <p>Celui-ci est totalement anonyme.</p> <p>Nous vous remercions d'avance pour votre participation?</p> <div class="colonneContact"> <li> <label>Age <span class="small"></span> </label> <input type="radio" name="age" id="age" value="Entre 6 et 12 ans" />Entre 6 et 12 ans <input type="radio" name="age" id="age" value="Entre 12 et 18 ans" />Entre 12 et 18 ans <input type="radio" name="age" id="age" value="Entre 18 et 26 ans" />Entre 18 et 26 ans <input type="radio" name="age" id="age" value="Entre 26 ans et 40 ans" />Entre 26 ans et 40 ans <input type="radio" name="age" id="age" value="Plus de 40 ans" />Plus de 40 ans </li> <li> <label>Appartenance sexuelle <span class="small">*</span> </label> <input type="radio" name="sexe" id="sexe" value="femme" />Femme <input type="radio" name="sexe" id="sexe" value="homme" />Homme </li> <li> <label>Pays : <span class="small">*</span> </label> <input type="text" name="pays" id="pays" /> </li> <li> <label>Quel est le titre de votre manga préféré aux éditions Ki-oon ? <span class="small">*</span> </label> <input type="text" name="titre1" id="titre1" /> </li> <li> <label>Quel est le titre de votre manga préféré toutes maisons d'édition confondues ? <span class="small">*</span> </label> <input type="text" name="titre2" id="titre2" /> </li> <li> <label>Quel type de manga préférez-vous ? <span class="small"></span> </label> <input type="radio" name="type" id="type" value="Seinen" />Seinen <input type="radio" name="type" id="type" value="Shôjo" />Shôjo <input type="radio" name="type" id="type" value="Shonen" />Shonen <input type="radio" name="type" id="type" value="Yaoi" />Yaoi <input type="radio" name="type" id="type" value="Yuri" />Yuri </li> <li> <label>Quel est votre auteur favori ? <span class="small">*</span> </label> <input type="text" name="auteur" id="auteur" /> </li> <li> <label>Souhaiterez-vous voir plus de choix de mangas de type: <span class="small"></span> </label> <input type="radio" name="choix" id="choix" value="Seinen" />Seinen <input type="radio" name="choix" id="choix" value="Shôjo" />Shôjo <input type="radio" name="choix" id="choix" value="Shonen" />Shonen <input type="radio" name="choix" id="choix" value="Yaoi" />Yaoi <input type="radio" name="choix" id="choix" value="Yuri" />Yuri <input type="radio" name="choix" id="choix" value="C'est bien actuellement" />C'est bien actuellement </li> <li> <label>Trouvez vous toutes les informations souhaitées sur notre site ? <span class="small">*</span> </label> <input type="radio" name="info" id="info" value="Oui" />Oui <input type="radio" name="info" id="info" value="Non" />Non </li> <li> <label>Laissez votre commentaire ici :<br/> </label> <textarea value="texte" wrap="VIRTUAL" name="texte"></textarea><br> <button name="submit" type="submit">Envoyer</button> </li> </div> </form> </div> <div class="footer"></div> </div> <?php include("footer.php"); ?> </div> </body> </html>
Et ma page PHP:
<?php //definition des entêtes $entetes = 'From: '.$_POST['courriel']."\r\n"; $entetes .= 'Content-Type: text/plain; charset=utf-8'."\r\n"; //Content-type: text/html; charset=iso-8859-1\r\n"; $entetes .= 'Content-Transfer-Encoding: 8bit'; //sujet $sujet = "Question/demande d'un internaute" ; //création du contenu du mail $texte = 'Age : '.$_POST['age']."\n"; $texte .= 'Sexe : '.$_POST['sexe']."\n"; $texte .= 'Pays : '.$_POST['pays']."\n"; $texte .= 'Titre1 : '.$_POST['titre1']."\n"; $texte .= 'Titre2 : '.$_POST['titre2']."\n"; $texte .= 'Type : '.$_POST['type']."\n"; $texte .= 'Auteur : '.$_POST['auteur']."\n"; $texte .= 'Choix : '.$_POST['choix']."\n"; $texte .= 'Info : '.$_POST['info']."\n"; $texte .= 'Message :'."\n"; $texte .= stripslashes($_POST['texte']) ; $email ="e-mail@caché.com"; $envoi_mail = mail($email, $sujet, $texte, $entetes); if (!$envoi_mail) { header('Location: envoi.php'); } else { header('Location: envoi_ok.php'); } $age = $_POST['age']; $sexe = $_POST['sexe']; $pays = $_POST['pays']; $titre1 = $_POST['titre1']; $titre2 = $_POST['titre2']; $type = $_POST['type']; $auteur = $_POST['auteur']; $choix = $_POST['choix']; $info = $_POST['info']; $message = $_POST['texte']; $today = date("m.d.y, H:m"); $info = $today."\t".$age."\t".$sexe."\t".$pays."\t".$titre1."\t".$titre2."\t".$type."\t".$auteur."\t".$choix."\t".$info."\t".$message."\r\n"; $info = mb_convert_encoding( $info, 'ISO-8859-1', auto); $fp = fopen ('file.csv', "a+"); fputs ($fp, $info); fclose ($fp); ?>
Les doctypes ont été modifiés. Mais je ne pense pas que c'est le problème.
En théorie ce code devrait fonctionner. J'ai en tout cas les résultats quand j'ouvre mon fichier .csv dans Excel, mais tout dans la seul et même colonne A.
D'avance, je vous remercie pour votre aide et participation.
J'ai mis les balises < code > et < /code > mais ...
Edit: Identifiants de connexion supprimés.
A voir également:
- Conversion données formulaires HTM à Excel
- Liste déroulante excel - Guide
- Trier des données excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Aller à la ligne excel - Guide
4 réponses
Le problème vient bien de la structure de ton CSV, (comma separate value) et non avec des tabulations sinon c'est un fichier texte qu'il faut faire et non un CSV.
Pour faire un CSV facilement et pas s'embêter avec ce type de problème de formatage, utilises la fonction fputcsv : https://www.php.net/manual/fr/function.fputcsv.php
A+
Pour faire un CSV facilement et pas s'embêter avec ce type de problème de formatage, utilises la fonction fputcsv : https://www.php.net/manual/fr/function.fputcsv.php
A+
Bonsoir Zep3k!Gno.
J'ai suivi ton lien. J'ai essayé plein de tentatives différentes, et ce même avec des codes copié collé. Je n'y comprend rien. Jamais ça n'a été dans différentes colonnes. Même avec l'essaie basic de ton lien.
C'est toujours dans la colonne A.
Le "split", il le déclare comme une erreur.
Malheureusement je n'ai plus le temps de chercher plus amplement pour le moment ...
Serait possible que le problème vient du fichier .csv même ?
Désolé du retard, je n'avais pas vu ta réponse. Je suis tellement habitué à ne pas avoir de réponse malgré le fait d'être précis.
J'ai suivi ton lien. J'ai essayé plein de tentatives différentes, et ce même avec des codes copié collé. Je n'y comprend rien. Jamais ça n'a été dans différentes colonnes. Même avec l'essaie basic de ton lien.
C'est toujours dans la colonne A.
Le "split", il le déclare comme une erreur.
Malheureusement je n'ai plus le temps de chercher plus amplement pour le moment ...
Serait possible que le problème vient du fichier .csv même ?
Désolé du retard, je n'avais pas vu ta réponse. Je suis tellement habitué à ne pas avoir de réponse malgré le fait d'être précis.
Bonjour,
Si votre fichier Excell est sauvegardé au format XML, il y a un moyen bien plus simple expliqué ici:
https://html5.immo-scope.com/article/php_publiPostageDocumentWord
C'est pour Word, mais à la fin de l'article, c'est expliqué comment adapter pour Excell. Je l'urtilise pour générer par exemple des appels de charges pour copropriété.
A+
un +1 sur mes commentaires - si vous avez apprécié - c'est gentil, merci.
Si votre fichier Excell est sauvegardé au format XML, il y a un moyen bien plus simple expliqué ici:
https://html5.immo-scope.com/article/php_publiPostageDocumentWord
C'est pour Word, mais à la fin de l'article, c'est expliqué comment adapter pour Excell. Je l'urtilise pour générer par exemple des appels de charges pour copropriété.
A+
un +1 sur mes commentaires - si vous avez apprécié - c'est gentil, merci.