Recuperer une donnée en meme temps qu'une insertion

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Recuperer une donnée en meme temps qu'une insertion

par GoldWel » 12 mars 2006, 20:46

Ok merci, ca marche. Merci pr l explication

par Cyrano » 12 mars 2006, 20:24

<?php
$row_Resul['id_utilisateur'] = 12345;
$user = '$row_Resul[id_utilisateur]'; // affiche $row_Resul[id_utilisateur]
$user = $row_Resul[id_utilisateur]; // affiche une erreur : constante id_utilisateur non définie
$user = "$row_Resul['id_utilisateur']"; // affiche 12345, les guillemets ne servent strictement à rien ici
$user = $row_Resul['id_utilisateur']; // affiche 12345 : voilà la méthode correcte
?>
Ce qui est entre apostrophes n'est pas interprété mais lu et reproduit tel quel.

par GoldWel » 12 mars 2006, 20:06

Ca marche toujours ds l insertion des données en prennant compte les modifs mais pas la recuperation.

Quand je fais un echo"$user" ; ca me renvoit $row_Resul[id_utilisateur]

par Cyrano » 12 mars 2006, 19:59

Presque :
au lieu de
$row_Resul[id_utilisateur]
essaye en mettant
$row_Resul['id_utilisateur']

par GoldWel » 12 mars 2006, 19:55

PS : J'ai modifié pr le INSERT INTO en rajoutant les ". et ." pour ".$row_Resul[id_utilisateur]." comme Cyrano le disait

par Goldwel » 12 mars 2006, 19:53

Oui, j'ai vu mais ca me resoud pas le pb. J'arive pas a recup l'id_utilisateur pour apres m'en servir ds la requete suivante.
Est-ce que c'est bon ça : $user = '$row_Resul[id_utilisateur]' ; ds la requete precedente ?



   // requete qui recherche l'id_mention en fonction du id_utilisateur
	$query2 = " SELECT id_mention
                FROM annee_etude
	WHERE id_utilisateur = '$user' ";
   							$result2 = mysql_query ($query2) or die (" La requête pour la recherche du id_mention a échoué ");
   						$row_Resul2 = mysql_fetch_assoc($result2);
							$mention = '$row_Resul2[id_mention]';
							echo "$mention";

par Cyrano » 12 mars 2006, 19:43

Regarde la modif que j,ai faite dans la requête et onbserve bien comme on encadre l'index d'un tableau

par Goldwel » 12 mars 2006, 19:28

Ok merci pr la precision, mais ca marche deja ds ma base de donnée ca m'insere bien l'id_utilisateur ds ma table.

Le pb est qu'apres j'arive pas a recuperer l'id_utilisateur ds ma variable $user

par Cyrano » 12 mars 2006, 19:23

Fais des concaténations propres, ça marchera mieux:
// requete qui recherche l'id_utilisateur en fonction du login
    $query1 = " SELECT id_utilisateur
        FROM utilisateur
        WHERE login LIKE '$name'";
    $result1 = mysql_query ($query1) or die (" La requête pour la recherche du id_utilisateur a échoué ");
    $row_Resul = mysql_fetch_assoc($result1);
    
    //Insertion des informations concernant le fichier dans la table "PIECE JOINTE"
    $sql = "INSERT INTO piece_jointe VALUES('', '$titre', '$description', '$Dest_Fichier', '". $row_Resul['id_utilisateur'] ."', '')";
    $user = '$row_Resul[id_utilisateur]';
    mysql_query($sql) or die('Erreur SQL'.$sql.'<br>'.mysql_error());
    }

Recuperer une donnée en meme temps qu'une insertion

par Goldwel » 12 mars 2006, 19:16

Bonjour, voila mon pb :

J'execute une requete pour remplir une table PIECE JOINTE et ca fonctionne. Mon pb vient apres pour recuperer l'id_utilisateur pour trvailler dessus apres.
J'arive pas a recuperer ca ds ma variable $user
($user = '$row_Resul[id_utilisateur]';)
eske la syntaxe est bonne au moins ou c'est pa du tout comme ça qu'il faut sy prendre.

Merci pour votre aide..
	// requete qui recherche l'id_utilisateur en fonction du login
	$query1 = " SELECT id_utilisateur
		FROM utilisateur
		WHERE login LIKE '$name'";
    $result1 = mysql_query ($query1) or die (" La requête pour la recherche du id_utilisateur a échoué ");
    $row_Resul = mysql_fetch_assoc($result1);
	
	//Insertion des informations concernant le fichier dans la table "PIECE JOINTE"
    $sql = "INSERT INTO piece_jointe VALUES('', '$titre', '$description', '$Dest_Fichier', '$row_Resul[id_utilisateur]', '')";
	$user = '$row_Resul[id_utilisateur]';
	mysql_query($sql) or die('Erreur SQL'.$sql.'<br>'.mysql_error());
	}