Bonjour à vous!
Alors voilà mon soucis:
Avec un formulaire, j'essai d'insérer les éléments dans ma bdd!
Le soucis, comme vous l'avez compris, ça ne marche pas! Pourtant PHP ne me renvoie pas d'erreur. J'arrive pourtant à modifier et supprimer des éléments de ma bdd (vu que je l'affiche à l'écran avec php), seul l'insertion ne fonctionne pas!
Ma bdd se nomme : finelio
La table est : clients
Les champs (nommé dans ma bdd) pour l'instant que je cherche à insérer sont : Name, Prenom, Addresse
Vous trouverez dans le code des balise php que je ferme et que j'ouvre directement après, c'est normal. C'était simplement du code HTML pour affranchir ma page que j'ai enlevé.
Je vous remercie d'avance pour vous être penché sur mon problème
Voici mon code :
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8' />
<title>Page2.php</title>
</head>
<body>
<center>
<h1>Insertion </h1>
<table border='1'>
<tr>
<td>Nom</td>
<td>Prenom</td>
<td>Adresse</td>
</tr>
<form action='Page2.php' method='POST'>
<?php
$maBase=new PDO('mysql:host=localhost; dbname=finelio; charset=utf8','root', '');
$donneebdd=$maBase->query("SELECT * FROM `clients`");
while ($TableauDeDonnee=$donneebdd->fetch())
{
echo "<tr>";
echo "<td>".$TableauDeDonnee['Name']."</td><td>".$TableauDeDonnee['Prenom']."</td><td>".$TableauDeDonnee['Adresse']."</td>
<td><input type='checkbox' name='ID[]' value=".$TableauDeDonnee['id']."></td>"; //affichage de la bdd
echo"</tr>";
}
$donneebdd ->closeCursor();
?>
</table>
<?php
if(isset($_POST['Inserer'])) //insertion nouveau champ
{
$donneebdd=$maBase->query('INSERT INTO `clients`( `Name, `Prenom`, `Adresse`) VALUES ("'.$_POST['Name'].'" , "'.$_POST['Prenom'].'" , "'.$_POST['Adresse'].'" )');
// Requête SQL insérer un nouveau champ
?>
<?php
}
elseif (isset($_POST['Modifier'])) //Modifier champ
{
foreach ($_POST['ID'] as $id)
{
$Nom = $_POST["Name"];
$Prenom = $_POST["Prenom"];
$Adresse = $_POST["Adresse"];
$maBase->query('UPDATE `clients` SET `Name`="'.$Nom.'",`Prenom`="'.$Prenom.'",`Adresse`="'.$Adresse.'" WHERE `id`="'.$id.'"');
// Requête SQL modifier un champ
?>
<?php
}
}
elseif (isset($_POST['Supprimer'])) // Supprimer champ
{
foreach ($_POST['ID'] as $id)
{
$maBase->query('DELETE FROM `clients` WHERE `id`="'.$id.'"'); // Requête SQL supprimer un nouveau champ
?>
<?php
}
}
elseif (isset($_POST['Deconnexion']))
{
header('Location: test.php'); //Retour à l'accueil
}
else {
?>
<p>Nom : <input type='text' name='Name' id='Name' /></p>
<p>Prenom : <input type='text' name='Prenom' id='Prenom' /></p>
<p>Adresse : <input type='text' name='Adresse' id='Adresse'/></p>
<input type='submit' name='Inserer' value="Inserer">
<input type='submit' name='Modifier' value="Modifier">
<input type='submit' name='Supprimer' value='Supprimer' >
<p><input type='submit' name='Deconnexion' value="Deconnexion"></p>
</form>
<?php
}
?>
Alors voilà mon soucis:
Avec un formulaire, j'essai d'insérer les éléments dans ma bdd!
Le soucis, comme vous l'avez compris, ça ne marche pas! Pourtant PHP ne me renvoie pas d'erreur. J'arrive pourtant à modifier et supprimer des éléments de ma bdd (vu que je l'affiche à l'écran avec php), seul l'insertion ne fonctionne pas!
Ma bdd se nomme : finelio
La table est : clients
Les champs (nommé dans ma bdd) pour l'instant que je cherche à insérer sont : Name, Prenom, Addresse
Vous trouverez dans le code des balise php que je ferme et que j'ouvre directement après, c'est normal. C'était simplement du code HTML pour affranchir ma page que j'ai enlevé.
Je vous remercie d'avance pour vous être penché sur mon problème
Voici mon code :
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8' />
<title>Page2.php</title>
</head>
<body>
<center>
<h1>Insertion </h1>
<table border='1'>
<tr>
<td>Nom</td>
<td>Prenom</td>
<td>Adresse</td>
</tr>
<form action='Page2.php' method='POST'>
<?php
$maBase=new PDO('mysql:host=localhost; dbname=finelio; charset=utf8','root', '');
$donneebdd=$maBase->query("SELECT * FROM `clients`");
while ($TableauDeDonnee=$donneebdd->fetch())
{
echo "<tr>";
echo "<td>".$TableauDeDonnee['Name']."</td><td>".$TableauDeDonnee['Prenom']."</td><td>".$TableauDeDonnee['Adresse']."</td>
<td><input type='checkbox' name='ID[]' value=".$TableauDeDonnee['id']."></td>"; //affichage de la bdd
echo"</tr>";
}
$donneebdd ->closeCursor();
?>
</table>
<?php
if(isset($_POST['Inserer'])) //insertion nouveau champ
{
$donneebdd=$maBase->query('INSERT INTO `clients`( `Name, `Prenom`, `Adresse`) VALUES ("'.$_POST['Name'].'" , "'.$_POST['Prenom'].'" , "'.$_POST['Adresse'].'" )');
// Requête SQL insérer un nouveau champ
?>
<?php
}
elseif (isset($_POST['Modifier'])) //Modifier champ
{
foreach ($_POST['ID'] as $id)
{
$Nom = $_POST["Name"];
$Prenom = $_POST["Prenom"];
$Adresse = $_POST["Adresse"];
$maBase->query('UPDATE `clients` SET `Name`="'.$Nom.'",`Prenom`="'.$Prenom.'",`Adresse`="'.$Adresse.'" WHERE `id`="'.$id.'"');
// Requête SQL modifier un champ
?>
<?php
}
}
elseif (isset($_POST['Supprimer'])) // Supprimer champ
{
foreach ($_POST['ID'] as $id)
{
$maBase->query('DELETE FROM `clients` WHERE `id`="'.$id.'"'); // Requête SQL supprimer un nouveau champ
?>
<?php
}
}
elseif (isset($_POST['Deconnexion']))
{
header('Location: test.php'); //Retour à l'accueil
}
else {
?>
<p>Nom : <input type='text' name='Name' id='Name' /></p>
<p>Prenom : <input type='text' name='Prenom' id='Prenom' /></p>
<p>Adresse : <input type='text' name='Adresse' id='Adresse'/></p>
<input type='submit' name='Inserer' value="Inserer">
<input type='submit' name='Modifier' value="Modifier">
<input type='submit' name='Supprimer' value='Supprimer' >
<p><input type='submit' name='Deconnexion' value="Deconnexion"></p>
</form>
<?php
}
?>