Récupération id et enrgistrement

Résolu/Fermé
Gl@dior Messages postés 327 Date d'inscription mercredi 5 novembre 2008 Statut Membre Dernière intervention 24 février 2012 - 13 juin 2010 à 18:03
Gl@dior Messages postés 327 Date d'inscription mercredi 5 novembre 2008 Statut Membre Dernière intervention 24 février 2012 - 13 juin 2010 à 23:16
Bonjour,


J'ai une table avec un id(ai) et un id_article

Je veux mettre dans id_article l'id(ai) ... Dans le but de pouvoir récupérer cet id_article afin de linker des commentaires ...

J'ai fait ça :

<?php
 
$Titre = trim($_POST['Titre']);
$Auteur = trim($_POST['Auteur']);
$Date = trim($_POST['Date']);
$Univers = trim($_POST['Univers']);
$Article = trim($_POST['Article']);


if(empty($Titre) || empty($Auteur) || empty($Date) || empty($Univers) || empty($Article)) {
	echo 'Veuillez remplir tout les champs : <a href="newarticle.php">retour</a>';
} else {
	if(@mysql_connect("127.0.0.1","root","")) 
	{
		if(@mysql_select_db('cinegeeks')) 
		{
			$query1="SELECT MAX(id) FROM articles;";
			
			$id = mysql_query($query1);
			
			echo "Id de l'article : ".$id."<br />";

			
			$query = 'INSERT INTO articles VALUES(
				"",
				"'.mysql_real_escape_string($Titre).'",
				"'.mysql_real_escape_string($Auteur).'",
				"'.mysql_real_escape_string($Date).'",
				"'.mysql_real_escape_string($Univers).'",
				"'.mysql_real_escape_string($Article).'",
				"$id")';
			$result = mysql_query($query);
			if($result == true)
			{
			echo "Ajout de l'article réussi";
			}
			else
			{
			echo "Une erreur est survenu lors de l'ajout de l'article";
			}
		} else
			echo 'Impossible d\'utiliser la base : ' . mysql_error();
	} else
		echo 'Non connecté : ' . mysql_error();
}
?>


mon echo affiche : "Id de l'article : Resource id #4"

et ça enregistre 0 dans le champ id_article


Quel est le problème ??

merci pour votre aide

3 réponses

chuka Messages postés 965 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 378
13 juin 2010 à 20:53
Salut,
tu fais:
$id = mysql_query($query1);
ensuite tu fais un echo $id...mais $id ne contient pas ton max(id)...$id ici contient en fait un pointeur vers les données stockées en mémoire.....si tu veux avoir le résultat voulu,il faut faire un fetch sur $id....
https://www.php.net/manual/fr/function.mysql-fetch-assoc.php
@+
0
Gl@dior Messages postés 327 Date d'inscription mercredi 5 novembre 2008 Statut Membre Dernière intervention 24 février 2012 79
Modifié par Gl@dior le 13/06/2010 à 23:03
Merci bien, je vais voir ça :)

edit : J'ai réussi à afficher ce que je voulais, il reste plus que l'enregistrement qui foire et j'ai pas de message d'erreur :\
0
Gl@dior Messages postés 327 Date d'inscription mercredi 5 novembre 2008 Statut Membre Dernière intervention 24 février 2012 79
13 juin 2010 à 23:16
C'est bon, j'ai réussi aussi pour enregistré ... Merci beaucoup :)
0