Page 1 sur 1

Enregistrement valeur checkboxs dans une base de données

Posté : 08 juin 2011, 14:01
par Fabien.Stinson
Salut à tous ! :)

Je me présente, je suis nouveau sur ce forum, j'm'appelle Fabien et je sors tout juste de 1ère année de BTS Informatique de Gestion. J'ai commencé à apprendre le PHP il y a environ un mois (je l'avais survolé en cours) pour les besoins de mon stage duquel je vous écris en ce moment même. Je n'avais donc aucune notion de gestion de BdD avec PHP et j'éprouve quelques difficultés ...

J'essaye d'enregistrer des valeurs de checkboxs cochées sur une précédente page dans une BdD, mais sans succès. Voici mon code:
<?php
$sql = 'UPDATE personnel 
SET ID_JOUR =  ('.implode('),(', $_POST['jour_dispo']).')
WHERE NOM_PERSONNE = '.$_SESSION['nom'].'; ?>
Il ne m’entraîne pas d'erreurs et je fais juste après la validation de ma page un echo de mon implode, qui renvoie bien les valeurs cochées. La table reste telle quelle, pas moyen d'enregistrer quoi que ce soit dedans. Cela dit, j'ai 2 champs que je désire remplir: ID_JOUR et ID_JOUR_INDISPO. Je travaille sur PhpMyAdmin et dans ma BdD, les champs ID_JOUR ont pour valeur NULL alors que les champs ID_JOUR_INDISPO ont pour valeur 0. Quelle est la différence ? Est-ce que cela importe dans ce que je veux faire ?

Pouvez-vous m'aider ?

Re: Enregistrement valeur checkboxs dans une base de données

Posté : 08 juin 2011, 15:11
par Mazarini
Bonjour,

Le mysql_query($sql) ne retourne pas d'erreur ?

Re: Enregistrement valeur checkboxs dans une base de données

Posté : 08 juin 2011, 15:19
par Fabien.Stinson
Non, ma page s'affiche correctement. :wink:
D'ailleurs, cela me surprend quelque peu: à ma ligne de SET, les parenthèses ne correspondent pas .. :^o

Re: Enregistrement valeur checkboxs dans une base de données

Posté : 08 juin 2011, 15:47
par Mazarini
Pour voir l'erreur :
mysql_query($sql);
if (mysql_errno() <> 0)
{
   echo $sql,'<br>';
   echo mysql_errno(),' : ',mysql_error();
   exit;
}

Re: Enregistrement valeur checkboxs dans une base de données

Posté : 08 juin 2011, 16:38
par Fabien.Stinson
Ah, c'était ça ta première question, désolé je connaissais pas ... !
Génial ce code. :wink:
Il me renvoie cette erreur: "1046 : No database selected"

Je me suis pourtant bien connecté à la BdD. :|

Re: Enregistrement valeur checkboxs dans une base de données

Posté : 08 juin 2011, 16:45
par Mazarini
Tu t'es connecter au serveur, pas à la base.
Le même code "if..." peut s'utiliser pour toutes les fonctions mysql pour vérifier leur bonne exécution.

http://fr.php.net/manual/fr/function.my ... ect-db.php ?

Re: Enregistrement valeur checkboxs dans une base de données

Posté : 08 juin 2011, 16:53
par Fabien.Stinson
D'accord, merci pour l'info. :wink:

Mais ça :
<?php
//Connexion à la base de données
try
{
	$bdd = new PDO('mysql:host=localhost;dbname=bdd_test' , 'root', '');
}
catch(Exception $e)
{
	die('Erreur : ' .$e->getMessage());
}
?>
C'est bien une connexion à la BdD non ?