Message de confirmation à l'insertion

Résolu/Fermé
Thetcha - Modifié par Thetcha le 19/11/2013 à 17:20
 Thetcha - 21 nov. 2013 à 09:14
Bonjour,
Voila, j'arrive à insérer mes données dans ma base de données mais pour améliorer mon application, je voudrais ajouter un message de confirmation en javascript mais je bloque.

Voici mon code :



<head>
<script language="javascript">

function confirme(identifiant)
{
var confirmation = confirm("Voulez vous vraiment ajouter cet enregistrement?");
if(confirmation)
{
document.location.href = "verif.php?Identifiant="+identifiant;
}
}

</script>
</head>
<?php
//connection au serveur
$cnx=mysql_connect("localhost","root","");

//sélection de la base de données:
$db=mysql_select_db("");

//récupération des valeurs des champs:
//identifiant:
$identifiant=$_POST["Identifiant"];
//nom:
$nom=$_POST["Nom"];
//prenom:
$prenom=$_POST["Prenom"];
//adresse:
$adresse=$_POST["Adresse"];
//age:
$age=$_POST["Age"];
//numéro de téléphone:
$telephone=$_POST["Telephone"];

//création de la requête SQL:
$sql="INSERT INTO informations (Identifiant, Nom, Prenom, Adresse, Age, Telephone)
VALUES ('$identifiant', '$nom', '$prenom', '$adresse', '$age', '$telephone')";

//exécution de la requête SQL:
$requete=mysql_query($sql, $cnx) or die (mysql_error());

//affichage des résultats, pour savoir si l'insertion a marché:
if($requete)
{
echo(.$requete->Identifiant." ".$requete->Nom." ".$requete->Prenom." ".$requete->Adresse." ".$requete->Age." ".$requete->Telephone
." <a href=\"#\" onClick=\"confirme('".$requete->Identifiant."')\" ></a><br>\n");
}
else
{
echo("L'insertion à echouee");
}
//header('Location: index.php');
?>

Mon erreur se situe à ce niveau :


echo(.$requete->Identifiant." ".$requete->Nom." ".$requete->Prenom." ".$requete->Adresse." ".$requete->Age." ".$requete->Telephone
." <a href=\"#\" onClick=\"confirme('".$requete->Identifiant."')\" ></a><br>\n");

Mais je ne vois pas ce qui pourrait me pauser problème.
Merci d'avance

2 réponses

gardiendelanuit Messages postés 1769 Date d'inscription jeudi 20 décembre 2007 Statut Membre Dernière intervention 19 novembre 2016 264
19 nov. 2013 à 20:28
Bonsoir,

mysql_query
(qui est déprécié en passant) retourne une ressource et non un jeu de résultats, il faut donc appeler un
mysql_fetch_object()
ou
mysql_fetch_array()
sur cette ressource pour qu'elle retourne les données.
0
Oui j'ai modifié le code mais j'ai toujours une erreur cette fois ci au niveau du mysql_fetch_objet().

Voici le code :


<head>
<script language="javascript">

function confirme(nom)
{
var confirmation = confirm("Voulez vous vraiment ajouter cet enregistrement?");
if(confirmation)
{
document.location.href = "verif.php?Nom="+nom;
}
}

</script>
</head>
<?php
//connection au serveur
$cnx=mysql_connect("localhost","root","");

//sélection de la base de données:
$db=mysql_select_db("");

//récupération des valeurs des champs:
//identifiant:
//$identifiant=$_POST["Identifiant"];
//nom:
$nom=$_POST["Nom"];
//prenom:
$prenom=$_POST["Prenom"];
//adresse:
$adresse=$_POST["Adresse"];
//age:
$age=$_POST["Age"];
//numéro de téléphone:
$telephone=$_POST["Telephone"];

//création de la requête SQL:
$sql="INSERT INTO informations ( Nom, Prenom, Adresse, Age, Telephone)
VALUES ('$nom', '$prenom', '$adresse', '$age', '$telephone')";

//exécution de la requête SQL:
$requete=mysql_query($sql, $cnx);

//affichage des résultats, pour savoir si l'insertion a marché:
while($result=mysql_fetch_object($requete))
{
echo("<div align=\"center\">".$result->Nom." ".$result->Prenom." ".$result->Adresse." ".$result->Age." ".$result->Telephone);
//header('Location: index.php');
}
?>


Mon erreur est ici :


while($result=mysql_fetch_object($requete))

Quelqu'un voit une erreur?
Merci
0
gardiendelanuit Messages postés 1769 Date d'inscription jeudi 20 décembre 2007 Statut Membre Dernière intervention 19 novembre 2016 264
Modifié par gardiendelanuit le 20/11/2013 à 10:01
Mysql n'est pas sensé te retourner un jeu de résultat après un INSERT INTO, c'est le rôle de SELECT principalement.
0
Ah ok et c'est quelle commande alors? Stp
Merci
0
gardiendelanuit Messages postés 1769 Date d'inscription jeudi 20 décembre 2007 Statut Membre Dernière intervention 19 novembre 2016 264
20 nov. 2013 à 10:08
Fait une requête du style
//requête insert into...
$last_id_inserted = mysql_insert_id();
mysql_query("SELECT * FROM informations WHERE id_info = $last_id_inserted;");
//ta boucle et le reste..
0
Mon identifiant, je ne m'en occupe pas puisque c'est un auto incrémente fait automatiquement à partir de la base.
0
gardiendelanuit Messages postés 1769 Date d'inscription jeudi 20 décembre 2007 Statut Membre Dernière intervention 19 novembre 2016 264
20 nov. 2013 à 19:57
Justement, insert_id te permet de récupérer l'id de la dernière requête généré par INSERT.
0