Tableau + MySQL + PHP
zal3a
Messages postés
4
Date d'inscription
Statut
Membre
Dernière intervention
-
zal3a Messages postés 4 Date d'inscription Statut Membre Dernière intervention -
zal3a Messages postés 4 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'aurais besoin d'aide pour pouvoir insérer les éléments d'un formulaire en php dans une base de donnée.
Je bloque parce que quoi que soit le choix que j'effectue, dans la base de donnée je retrouve toujours ARRAY et non le choix que j'ai effectué.
Donc voici le code du formulaire avec seulement les attributs nom et loisirs.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Inscription</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<form method="post" action="insertion_action.php" id="inscription">
<center>
<fieldset style="width:370px" >
<legend><font face="Calibri"><h1><em>Inscription</em> </h1></font></legend>
<div align="left"><font face="Calibri"><em>Veuillez remplir les champs suivants:</em></font></div>
<table width="279" align="center">
<tr>
<td align="left"><div><font face="Calibri">Nom</font></div></td>
<td><input type="text" name="nom"/></td>
</tr>
<tr>
<td align="left"><div><font face="Calibri">Loisirs</font></div></td>
<td align="left">
<select name="loisirs" multiple="multiple" size="4">
<option value="Cinema"> Cinema </option>
<option value="Musique"> Musique </option>
<option value="Sport"> Sport </option>
<option value="Voyages"> Voyages </option>
</select>
</td>
</tr>
<tr>
<td><input type="reset" name="annuler" value="Annuler"/></td>
<td align="left"><input type="submit" value="Envoyer" name="envoi"/></td>
</tr>
</table>
</fieldset>
</center>
</form>
</body>
</html>
*************************************************************************
*************************************************************************
Et pour le code concernant l'insertion dans la base de donnée :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Selection de la Base de Données</title>
<meta http-equiv="Content-Type" zcontent="text/html; charset=iso-8859-1" />
</head>
<body>
<?php
$loisirs = array(0 => 'Cinema',
1 => 'Musique',
2 => 'Sport',
3 => 'Voyage');
$nom=$_POST['nom'];
$loisirs=$_POST['loisirs'];
$bd=connecter("localhost","root","mysql");
mysqli_select_db($bd,"test");
$sql="insert into tester(nom,loisirs) values('$nom','$loisirs')";
$res=mysqli_query($bd,$sql);
deconnecter($bd);
?>
</body>
</html>
Merci pour votre aide ...
J'aurais besoin d'aide pour pouvoir insérer les éléments d'un formulaire en php dans une base de donnée.
Je bloque parce que quoi que soit le choix que j'effectue, dans la base de donnée je retrouve toujours ARRAY et non le choix que j'ai effectué.
Donc voici le code du formulaire avec seulement les attributs nom et loisirs.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Inscription</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<form method="post" action="insertion_action.php" id="inscription">
<center>
<fieldset style="width:370px" >
<legend><font face="Calibri"><h1><em>Inscription</em> </h1></font></legend>
<div align="left"><font face="Calibri"><em>Veuillez remplir les champs suivants:</em></font></div>
<table width="279" align="center">
<tr>
<td align="left"><div><font face="Calibri">Nom</font></div></td>
<td><input type="text" name="nom"/></td>
</tr>
<tr>
<td align="left"><div><font face="Calibri">Loisirs</font></div></td>
<td align="left">
<select name="loisirs" multiple="multiple" size="4">
<option value="Cinema"> Cinema </option>
<option value="Musique"> Musique </option>
<option value="Sport"> Sport </option>
<option value="Voyages"> Voyages </option>
</select>
</td>
</tr>
<tr>
<td><input type="reset" name="annuler" value="Annuler"/></td>
<td align="left"><input type="submit" value="Envoyer" name="envoi"/></td>
</tr>
</table>
</fieldset>
</center>
</form>
</body>
</html>
*************************************************************************
*************************************************************************
Et pour le code concernant l'insertion dans la base de donnée :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Selection de la Base de Données</title>
<meta http-equiv="Content-Type" zcontent="text/html; charset=iso-8859-1" />
</head>
<body>
<?php
$loisirs = array(0 => 'Cinema',
1 => 'Musique',
2 => 'Sport',
3 => 'Voyage');
$nom=$_POST['nom'];
$loisirs=$_POST['loisirs'];
$bd=connecter("localhost","root","mysql");
mysqli_select_db($bd,"test");
$sql="insert into tester(nom,loisirs) values('$nom','$loisirs')";
$res=mysqli_query($bd,$sql);
deconnecter($bd);
?>
</body>
</html>
Merci pour votre aide ...
A voir également:
- Tableau + MySQL + PHP
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Tableau croisé dynamique - Guide
- Imprimer tableau excel sur une page - Guide
3 réponses
C'est normal que tu aies Array, vu que dans ta liste déroulante tu as spécifiée qu'elle était multiple, quand tu fais $loisirs=$_POST['loisirs'], ta variable $loisirs contient le tableau des choix
Tout d'abord merci pour vos réponses ...
@Chamicki :
EasyPhp 3.0 ne reconnait pas mysql_query chez moi, c'est pourquoi j'ai mis mysqli_query .
@jeangilles :
L'utilisateur peut avoir plusieurs loisirs, d'où la liste est à choix multiple .
Donc faudrait juste que je trouve comment valider uniquement les éléments choisis .
@Chamicki :
EasyPhp 3.0 ne reconnait pas mysql_query chez moi, c'est pourquoi j'ai mis mysqli_query .
@jeangilles :
L'utilisateur peut avoir plusieurs loisirs, d'où la liste est à choix multiple .
Donc faudrait juste que je trouve comment valider uniquement les éléments choisis .