Comme je vieillis et que j'aimerais passer le flambeau à d'autres personnes, il est important que la saisie des informations du site de mon association puisse se faire online, et non pas sur mon PC comme je le fais depuis 20 ans.
La conséquence de ce fait, c'est que j'ai besoin d'une BD-R, ce que j'étais jusqu'à présent parvenu à éviter.
Je n'ai eu aucun problème à créer la DB et ses tables avec phpMySQL.
A ma grande surprise, je suis également parvenu facilement à lire en PHP PDO les quelques infos entrées manuellement par phpMySQL.
Par contre je ne parviens pas à faire un INSERT depuis le programme PHP.
Je suppose que je dois faire de travers quelque chose qu'un utilisateur confirmé n'aurait aucune difficulté à réaliser.
Voici le code en question:
Les différents "echo" me disent que tout s'est bien passé.
La suite du programme de test lit le contenu de la table et affiche le contenu de chaque ligne.
Ce code montre que cette ligne n'a pas été insérée, ce que confirme l'examen de la table par phpMySQL.
Une idée sur les raisons de ce comportement??
Merci de votre aide.
La conséquence de ce fait, c'est que j'ai besoin d'une BD-R, ce que j'étais jusqu'à présent parvenu à éviter.
Je n'ai eu aucun problème à créer la DB et ses tables avec phpMySQL.
A ma grande surprise, je suis également parvenu facilement à lire en PHP PDO les quelques infos entrées manuellement par phpMySQL.
Par contre je ne parviens pas à faire un INSERT depuis le programme PHP.
Je suppose que je dois faire de travers quelque chose qu'un utilisateur confirmé n'aurait aucune difficulté à réaliser.
Voici le code en question:
try {
$connection = new PDO("mysql:host=$host;dbname=$dbname", $dbuser, $dbpw);
}
catch(Exception $e) {
die("Erreur: " . $e -> getMessage . " " . $e -> getCode());
}
echo "<pre>connecté</pre>;
$sql = "INSERT INTO Members (mbID, pupitre, lastName, firstName) VALUE (?,?,?,?)";
$stmt = $connection -> prepare($sql);
if($smt === FALSE) die("Erreur sql");
else echo "<pre>sql OK</pre>");
$mbID = 'xxx';
$pupitre = 'guest';
$lastName = 'Dupont';
$firstName = 'Fernand';
try {
$stmt -> execute($mbID, $pupitre, $lastName, $firstName);
}
catch(Exception $e) {
die("Erreur: " . $e -> getMessage . " " . $e -> getCode());
}
echo "<pre>INSERT OK</pre>");
Les différents "echo" me disent que tout s'est bien passé.
La suite du programme de test lit le contenu de la table et affiche le contenu de chaque ligne.
Ce code montre que cette ligne n'a pas été insérée, ce que confirme l'examen de la table par phpMySQL.
Une idée sur les raisons de ce comportement??
Merci de votre aide.