Bonjour,
J'ai créé un formulaire qui écrit dans une bdd et qui fait appel à un autre fichier php. Tout fonctionne mais je voudrais que la phrase de confirmation s'affiche sous le formulaire et non dans une autre fenêtre.
Merci pour votre aide
Voici le code de mon form et de mon fichier action :
FORMULAIRE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>sans titre 1</title>
</head>
<body>
<form method="post" action="ecriture_location.php" >
<p>
<input type="radio" name="ville" value="Saint-Aygulf" /> Saint-Aygulf
<input type="radio" name="ville" value="Saint-Raphael" /> Saint-Raphael
<input type="radio" name="ville" value="Cannes" /> Cannes
</p>
<p>
Dates<br />
<select name="dates">
<option value="du 02 au 09 juillet">du 02 au 09 juillet</option>
<option value="du 09 au 16 juillet" selected="selected">du 09 au 16 juillet</option>
<option value="du 16 au 23 juillet">du 16 au 23 juillet</option>
</select>
</p>
<p>
Prix :<br />
<input type="text" name="prix" value="" />
<p>
Quel type de location recherchez vous ?<br />
<input type="checkbox" name="type" value="studio" /> Studio
<input type="checkbox" name="type" value="2 pièces" /> 2 pièces
</p>
<p>
<input type="submit" value="Envoyer" />
<input type="reset" value="Annuler" />
</p>
</form>
</body>
</html>
FICHIER ACTION :
<?php
// On commence par récupérer les champs
if(isset($_POST['ville'])) $ville=$_POST['ville'];
else $ville="";
if(isset($_POST['dates'])) $dates=$_POST['dates'];
else $dates="";
if(isset($_POST['prix'])) $prix=$_POST['prix'];
else $prix="";
try//connexion à la base
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=location', 'root', '', $pdo_options);
// On ajoute une entrée dans la table jeux_video
$req = $bdd->prepare('INSERT INTO studio(ville, dates, prix) VALUES(:ville, :dates,
rix)');
$req->execute(array(
'ville' => $ville,
'dates' => $dates,
'prix' => $prix
));
echo 'La période de location est bien ajoutée dans la table !';//affichage du résultat
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>
J'ai créé un formulaire qui écrit dans une bdd et qui fait appel à un autre fichier php. Tout fonctionne mais je voudrais que la phrase de confirmation s'affiche sous le formulaire et non dans une autre fenêtre.
Merci pour votre aide
Voici le code de mon form et de mon fichier action :
FORMULAIRE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>sans titre 1</title>
</head>
<body>
<form method="post" action="ecriture_location.php" >
<p>
<input type="radio" name="ville" value="Saint-Aygulf" /> Saint-Aygulf
<input type="radio" name="ville" value="Saint-Raphael" /> Saint-Raphael
<input type="radio" name="ville" value="Cannes" /> Cannes
</p>
<p>
Dates<br />
<select name="dates">
<option value="du 02 au 09 juillet">du 02 au 09 juillet</option>
<option value="du 09 au 16 juillet" selected="selected">du 09 au 16 juillet</option>
<option value="du 16 au 23 juillet">du 16 au 23 juillet</option>
</select>
</p>
<p>
Prix :<br />
<input type="text" name="prix" value="" />
<p>
Quel type de location recherchez vous ?<br />
<input type="checkbox" name="type" value="studio" /> Studio
<input type="checkbox" name="type" value="2 pièces" /> 2 pièces
</p>
<p>
<input type="submit" value="Envoyer" />
<input type="reset" value="Annuler" />
</p>
</form>
</body>
</html>
FICHIER ACTION :
<?php
// On commence par récupérer les champs
if(isset($_POST['ville'])) $ville=$_POST['ville'];
else $ville="";
if(isset($_POST['dates'])) $dates=$_POST['dates'];
else $dates="";
if(isset($_POST['prix'])) $prix=$_POST['prix'];
else $prix="";
try//connexion à la base
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=location', 'root', '', $pdo_options);
// On ajoute une entrée dans la table jeux_video
$req = $bdd->prepare('INSERT INTO studio(ville, dates, prix) VALUES(:ville, :dates,

$req->execute(array(
'ville' => $ville,
'dates' => $dates,
'prix' => $prix
));
echo 'La période de location est bien ajoutée dans la table !';//affichage du résultat
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>