Insérer élément d'une liste dans BD avec PHP
Résolu/Fermé
birdsfly
Messages postés
240
Date d'inscription
mercredi 20 mai 2009
Statut
Membre
Dernière intervention
11 octobre 2013
-
Modifié par birdsfly le 3/04/2010 à 04:54
birdsfly Messages postés 240 Date d'inscription mercredi 20 mai 2009 Statut Membre Dernière intervention 11 octobre 2013 - 4 avril 2010 à 19:58
birdsfly Messages postés 240 Date d'inscription mercredi 20 mai 2009 Statut Membre Dernière intervention 11 octobre 2013 - 4 avril 2010 à 19:58
A voir également:
- Insérer élément d'une liste dans BD avec PHP
- Liste déroulante excel - Guide
- Insérer une vidéo dans powerpoint - Guide
- Insérer signature word - Guide
- Liste déroulante en cascade - Guide
- Insérer sommaire word - Guide
4 réponses
Utilisateur anonyme
Modifié par irongege le 27/02/2011 à 15:05
Modifié par irongege le 27/02/2011 à 15:05
perso je me suis fais ca pour base ...
// fichier de conection a la BDD
<?php require_once('config.php'); ?>
<?php
if (isset($_POST['pseudo']) AND isset($_POST['message'])) // Si les variables existent
{
if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer
{
// On utilise la fonction PHP htmlentities pour éviter d'enregistrer du code HTML dans la table
$message = htmlentities ($_POST['message'], ENT_QUOTES);
$pseudo = htmlentities ($_POST['pseudo'], ENT_QUOTES);
// Ensuite on enregistre le message
mysql_query("INSERT INTO minichat VALUES('', '$pseudo', '$message')");
// On se déconnecte de MySQL
mysql_close();
}
}
?>
ps: ca te va ?
__
_/ \_____________________
\__/ -
// fichier de conection a la BDD
<?php require_once('config.php'); ?>
<?php
if (isset($_POST['pseudo']) AND isset($_POST['message'])) // Si les variables existent
{
if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer
{
// On utilise la fonction PHP htmlentities pour éviter d'enregistrer du code HTML dans la table
$message = htmlentities ($_POST['message'], ENT_QUOTES);
$pseudo = htmlentities ($_POST['pseudo'], ENT_QUOTES);
// Ensuite on enregistre le message
mysql_query("INSERT INTO minichat VALUES('', '$pseudo', '$message')");
// On se déconnecte de MySQL
mysql_close();
}
}
?>
ps: ca te va ?
__
_/ \_____________________
\__/ -
birdsfly
Messages postés
240
Date d'inscription
mercredi 20 mai 2009
Statut
Membre
Dernière intervention
11 octobre 2013
15
3 avril 2010 à 15:22
3 avril 2010 à 15:22
Merci DiabloBros, mais mon problème est seulement avec les variables postées venant d'une liste(menu).
Car dans le formulaire j'ai une liste où l'utilisateur doit sélectionner un élément (à coté d'autres zones de texte qu'il doit remplir), et lorsqu'il clique le bouton "valider", cela doit mener vers une autre page contenant du code php pour faire l'insertion des données postées par l'utilisateur dans la table, pour les données venant des zones de texte, aucun problème, elles s'insèrent dans la table, mais le champ réservé à la variable venant de la "liste" reste vide. Alors je pense que la manière de poster un élément sélectionné dans une liste est peut être différente de celle que je connais pour les zones de texte?!. Pour être plus claire voici mon code:
page "ajout.php":
page "ajout_post.php":
Je pense que le problème est dans $var2 :(
Car dans le formulaire j'ai une liste où l'utilisateur doit sélectionner un élément (à coté d'autres zones de texte qu'il doit remplir), et lorsqu'il clique le bouton "valider", cela doit mener vers une autre page contenant du code php pour faire l'insertion des données postées par l'utilisateur dans la table, pour les données venant des zones de texte, aucun problème, elles s'insèrent dans la table, mais le champ réservé à la variable venant de la "liste" reste vide. Alors je pense que la manière de poster un élément sélectionné dans une liste est peut être différente de celle que je connais pour les zones de texte?!. Pour être plus claire voici mon code:
page "ajout.php":
<form action="ajout_post.php" method=POST> <table> <tr><td align=right>Nom ou e-mail :</td> <td><input type=text name="email"></td></tr> <tr><td>Rubrique :</td> <td><select name="rub"> <option value="" selected> Internet <option value=""> Free software <option value=""> Multimédia <option value=""> Communication <option value=""> Commerce <option value=""> Technologie <option value=""> Loisirs <option value=""> Manifestations </select></td></tr> <tr><td align=right>Titre de la nouvelle :</td> <td><input type=text name="titre"></td></tr> <tr><td align=right>Texte :</td> <td><textarea name="texte" rows="12" cols="70"></textarea></td></tr> <tr><td colspan=2 align=center><input type=submit value="Envoyer"></td></tr> </table> </form>
page "ajout_post.php":
<?php try { $bdd=new PDO('mysql:host=localhost;dbname=nouvelles', 'root', ''); } catch(Exception $e) { die('Erreur : ' . $e->getMessage()); } $var1=addslashes($_POST['email']); $var2=$_POST['rub']; $var3=addslashes($_POST['titre']); $var4=addslashes($_POST['texte']); $req=$bdd->query("INSERT INTO nouvelle (email, rubrique, titre, texte, date, statut) VALUES ('$var1','$var2','$var3','$var4',NOW(),'attente')") or die(print_r($bdd->errorInfo())); echo "Merci pour votre contribution...Dans quelques instants, vous serez automatiquement reconduit sur la page d'acceuil"; ?>
Je pense que le problème est dans $var2 :(
birdsfly
Messages postés
240
Date d'inscription
mercredi 20 mai 2009
Statut
Membre
Dernière intervention
11 octobre 2013
15
3 avril 2010 à 17:54
3 avril 2010 à 17:54
UP
Utilisateur anonyme
Modifié par irongege le 27/02/2011 à 15:04
Modifié par irongege le 27/02/2011 à 15:04
ton code a l'air bon , donc je dirais, as tu assayé en GET plutot quand POST
c'est a dire pare une page intermediaire , dans la quel tu reafiche les données
et tu marque est ce sure c'est bien ca que vous voulez Up , un valider
et ca devrai etre bon...
(aprés re et re lecture, lol)
Haaaa sinon j'ai vu , il faut que $_POST['rub']; le rub soit rubrique
là tu post une variable appellé "rub" et tu lui dit mets rub dans "rubrique"
et du coup il comprend pas...
essai sinon avec $_POST['rubrique'];
ou alors appelé ca ligne de la BDD " rub " et pas rubtique
__
_/ \_____________________
\__/ -
c'est a dire pare une page intermediaire , dans la quel tu reafiche les données
et tu marque est ce sure c'est bien ca que vous voulez Up , un valider
et ca devrai etre bon...
(aprés re et re lecture, lol)
Haaaa sinon j'ai vu , il faut que $_POST['rub']; le rub soit rubrique
là tu post une variable appellé "rub" et tu lui dit mets rub dans "rubrique"
et du coup il comprend pas...
essai sinon avec $_POST['rubrique'];
ou alors appelé ca ligne de la BDD " rub " et pas rubtique
__
_/ \_____________________
\__/ -
birdsfly
Messages postés
240
Date d'inscription
mercredi 20 mai 2009
Statut
Membre
Dernière intervention
11 octobre 2013
15
4 avril 2010 à 18:39
4 avril 2010 à 18:39
salut :)
j'ai essayé avec $_POST['rubrique'] mais cela n'a pas réglé le problème :(
Merci pour votre aide
j'ai essayé avec $_POST['rubrique'] mais cela n'a pas réglé le problème :(
Merci pour votre aide
birdsfly
Messages postés
240
Date d'inscription
mercredi 20 mai 2009
Statut
Membre
Dernière intervention
11 octobre 2013
15
Modifié par birdsfly le 4/04/2010 à 19:58
Modifié par birdsfly le 4/04/2010 à 19:58
Problème résolu, il me fallait juste remplir les "value" des balises <option> du menu. par l'option que je veux.
Exemple:
<select name="rubrique"><option value="Internet">Internet</option>
<option value="Commerce ">Commerce</option></select>
Et merci beaucoup DiabloBros ^^
"La haine est la voix de celui qui a laissé la souffrance planter son drapeau aisément sur son encéphale"
Exemple:
<select name="rubrique"><option value="Internet">Internet</option>
<option value="Commerce ">Commerce</option></select>
Et merci beaucoup DiabloBros ^^
"La haine est la voix de celui qui a laissé la souffrance planter son drapeau aisément sur son encéphale"
3 avril 2010 à 05:00
<?php
// Parametres mysql
define('DB_SERVER', 'localhost'); // serveur mysql
define('DB_SERVER_USERNAME', 'root'); // nom d'utilisateur
define('DB_SERVER_PASSWORD', ''); // mot de passe
define('DB_DATABASE', 'votre_base'); // nom de la base
define('DB_TABLE_CHAT', 'minichat');
// Connexion au serveur mysql
$connect = mysql_pconnect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD)
or die('Impossible de se connecter : ' . mysql_error());
// sélection de la base de données
mysql_select_db(DB_DATABASE, $connect);
?>