Problème de compréhension au niveau du traitement d'une base sql

Résolu/Fermé
DOKTEK Messages postés 28 Date d'inscription mercredi 19 novembre 2014 Statut Membre Dernière intervention 3 mai 2015 - 19 nov. 2014 à 00:32
yassinozi Messages postés 43 Date d'inscription samedi 10 juillet 2010 Statut Membre Dernière intervention 18 juin 2016 - 25 nov. 2014 à 13:47
Bonsoir,
Je suis actuellement en train de créer un site qui implique la création d'une espace membre.
Pour cela évidemment j'ai recours à une base sql pour enregistrer les données collectés sur une page html à part.

Le problème c'est qu'avec ce code j'arrive à lire les données stockés mais par contre pour y écrire ça ne marche pas du tout.

J'apprecierai vraiment si quelqu'un peut m'aider. Sans doute une erreur de débutant..

En tout cas voici le code, j'utilise aussi la fonction d'auto incrémentation de l'ID:

Cdlt Dan

Le code que j'ai écris pour tester cette fonction:

// Programme de test dans le but est d'écrire ou lire des données enregistrés dans une base sql

// Déclaration variables Les valeurs "$_post" sont collectés via une autre page html
$password = htmlspecialchars ($_POST['password']);
$nom = htmlspecialchars ($_POST['nom']);
$adresse = htmlspecialchars ($_POST['adresse']);
$courriel = htmlspecialchars ($_POST['courriel']);
$phone = htmlspecialchars ($_POST['phone']);
$contact = htmlspecialchars ($_POST['contact']);


$bdd = new PDO('mysql:host = localhost;dbname=test','root','');

//A la prochaine ligne je suis sensé d'écrire dans la base des données
// mais cette partie ne fonctionne pas

$bdd->prepare('INSERT INTO base_espace_membre_bretcom(Societe, Adresse, Courriel, Telephone, Interlocuteur, Password) VALUES ($nom, $adresse, $courriel, $phone, $contact, $password)');


// .... et ici je lis (vraiment) dans la base des données

$reponse = $bdd->query('SELECT * FROM base_espace_membre_bretcom');
while ($donnees = $reponse->fetch())
{
echo '<p>'. $donnees ['Societe']. '</p>';
echo '<p>'. $donnees ['Adresse']. '</p>';
echo '<p>'. $donnees ['Courriel']. '</p>';
echo '<p>'. $donnees ['Telephone']. '</p>';
echo '<p>'. $donnees ['Interlocuteur']. '</p>';
echo '<p>'. $donnees ['Password']. '</p>';
}

1 réponse

yassinozi Messages postés 43 Date d'inscription samedi 10 juillet 2010 Statut Membre Dernière intervention 18 juin 2016 1
25 nov. 2014 à 13:47
Bonjour,

la requête que tu as préparé, tu as oublie de l'exécuter ( regarde la ligne en gras )

une autre erreur qui pourra perturber l'exécution de la requête (dbname='test' ) tu as oublie d'ouvrir la simple cote.

$bdd = new PDO('mysql:host = localhost;dbname='test','root','');


$bdd->prepare('INSERT INTO base_espace_membre_bretcom(Societe, Adresse, Courriel, Telephone, Interlocuteur, Password) VALUES ($nom, $adresse, $courriel, $phone, $contact, $password)');

// il faut que tu execute la requete que tu as preparer en haut.
$bdd->execute();

$reponse = $bdd->query('SELECT * FROM base_espace_membre_bretcom');
while ($donnees = $reponse->fetch())
{
echo '<p>'. $donnees ['Societe']. '</p>';
echo '<p>'. $donnees ['Adresse']. '</p>';
echo '<p>'. $donnees ['Courriel']. '</p>';
echo '<p>'. $donnees ['Telephone']. '</p>';
echo '<p>'. $donnees ['Interlocuteur']. '</p>';
echo '<p>'. $donnees ['Password']. '</p>';
}
0