[PHP] Pb d'inscription dans la BdD

Fermé
Jacko - 16 avril 2012 à 17:46
 Jacko - 17 avril 2012 à 19:07
Bonjour,

Je voudrais inscrire dans une table de ma base de données (appelons la membres_1), un mot (extraterrestre1)
en fonction du pseudo du membre (une personne non-inscrite n'a pas accès à cette partie du site) donc une personne forcément enregistrée.
Sachant que j'ai plusieurs champs id, pseudo, ET1, ET2, ET3, ET4, ET5 et ET6
et que le mot à inscrire n'est pas écrit par le membre mais vient d'un lien sur lequel on doit cliquer (on a le choix entre 3 liens dont celui qui provient de extraterrestre1)

<?php

try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '',$pdo_options);


$req = $bdd ->prepare('INSERT INTO membres_1 (ET1) VALUES(extraterrestre1)');
$req ->execute (array($_POST['extraterrestre1']));

// Redirection du membre vers la page suivante
header('Location: pagesuivante.php');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>


Le pb est que ça me met: Notice: Undefined index ...
Pourtant, l'index se réfère à la table membres_1 où le champs ET1 existe ...


PS: ce script php est exécuté et non montré aux membres.
A voir également:

4 réponses

vordano Messages postés 1682 Date d'inscription mardi 12 juillet 2011 Statut Membre Dernière intervention 20 juillet 2012 316
16 avril 2012 à 17:54
si tu veux insérer la chaine extraterrestre1 dans ta base, alors il faut mettre des guillemets

et qu'est ce que tu cehrche a faire pour array($_POST['extraterrestre1']) de ton execute ?
2
Des guillemets à quel niveau ?

L'array est sensé mettre le mot extraterrestre1 dans ma bdd, dans la colonne ET1, et dans la ligne correspondant au pseudo du membre.

Est-ce mal ?
0
vordano Messages postés 1682 Date d'inscription mardi 12 juillet 2011 Statut Membre Dernière intervention 20 juillet 2012 316
17 avril 2012 à 13:10
dans ce cas là ce n'est pas un insert qu'il faut faire mais un update
update membres_1 set ET1 ='extraterrestre1' where pseudo_membre = 'Jacko'
0
Nan c'est bon, c'est vrai que j'avais oublié des guillemets à extraterrestre1. ça marche nickel

$req = $bdd ->prepare('INSERT INTO membres_1 (ET1) VALUES("extraterrestre1")');


Merci vordano
0