Recuperer une valeur d un enregistrement

Signaler
Messages postés
25
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
25 décembre 2010
-
Messages postés
25
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
25 décembre 2010
-
<?php
// connection au serveur
$cnx = mysql_connect ("localhost","root","");
// connection a la base
mysql_select_db("mairie",$cnx);
// requete sql
$reqsql="select * from photo";
// execution de la requete curseur est un fichier sequentiel ( en memoire central qu on poura balayer)
$reponse=mysql_query($reqsql,$cnx);
// balayage du curseur
print("\");
while($donnees = mysql_fetch_assoc ($reponse) )
{
print(\"----
\");
print(\"");
print("<form method=\"post\" action=\"adminfoto.php\">");
print("");?>
<label for="modifier">modifier</label>

<label for="suprimer">suprimer</label>

<?php
print("

");
print("</form>");
print(", \");
echo $donnees['Numero_PH'];
print(\"");
echo $donnees['Libelle_PH'];
print(", \");
echo $donnees['NomPage_PH'];
print(\"");
echo $donnees['Description_PH'];
print(", \");
print(\"\");
}
print("
");
//fermeture
mysql_close( $cnx);
?>

voici donc l affichage de tous mes enregistrements avec pour chacun d eux un bouton modifier ou suprimer.

<?php
$cnx = mysql_connect ("localhost","root","");
mysql_select_db("mairie",$cnx);
$reqsql="select * from photo";
$reponse=mysql_query($reqsql,$cnx);
if ( choix == "modifier" )
{
?>
<form method="post" action="adminfoto.php">

libelle :

nom page :

description :





</form>
<?php
mysql_query(" UPDATE photo set Libelle_PH = $_post('libelle'), NomPage_PH= $_post('nompage'), Description_PH = $_post('description')");
}
else
{
( ici suprimer l enregistrement )
}
mysql_close( $cnx);
?>

voici donc la ou il y a des lacunes le code a resoudre
comment savoir sur quel enregistrement concerne la modification ou suppression ? comment récupérer ces valeurs et il y a t'il d autre erreur dans ma syntaxe ? merci d avance

6 réponses

Messages postés
5
Date d'inscription
mercredi 21 octobre 2009
Statut
Membre
Dernière intervention
25 octobre 2009

Bonjour, je me permets de upper ce topic ayant exactement le même soucis. :/
As-tu trouvé la solution depuis ce matin ?
J'ai essayé avec des $_SESSION mais ceux-ci ne prennent que le dernier enregistrement de la requête et non pas celui en face du bouton "Modifier".

Merci d'avance pour votre aide.
Messages postés
25
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
25 décembre 2010

non je suis dans le floux, pour le moment je redige ma synthese, j'y met que le mode administateur sera a etre peaufiner ... il y a des solutions oui, j ai un amis qui as creer des choses ^^ mais pour moi se sont des choses ... Il a en realité pas creer de formulaire suprimer et modifier mais deux lien pour chaque enregistrement, et chaque lien a une valeur qui augmente suivan le n° de l enregistrement donc cela lui permet d avoir le numero d enregistrement qu il recuperer dans l'url mais apres il as fai quelque chose d incomprehensif, il a pomper sur le net, et je prefere, etre honete que d ecrire des choses sur lequels je ne serai expliquer ...
globalement je voi comment faire, mais je ne suis pas en mesure de le coder en php ...
en esperent qu'une reponse nous eclairera ...
Messages postés
5
Date d'inscription
mercredi 21 octobre 2009
Statut
Membre
Dernière intervention
25 octobre 2009

Bonjour,

Un début de piste sur ce lien :
http://www.developpez.net/forums/d766044/php/php-sgbd/php-sql-server/supprimer-ligne-table-php/#post4728360

Malheureusement, je n'ai pas tout à fait compris la solution.
Peut-être devrais-tu poster ton message dans la rubrique PHP pour espérer plus de réponses ?
Je te tiens au courant de mes avancées.
Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
7
Normalement dans ta table de données tu as un index pour chaque entrée. Ce que tu peux faire c'est rajouter un input de type hidden avec la valeur du id.

print("<form method="post" action="adminfoto.php">");
print("");?>
<label for="modifier">modifier</label>

<label for="suprimer">suprimer</label>

" />
<?php
print("

");
print("</form>");

Ainsi quand tu récupères ta requête tu as la valeur du id ajouté et tu peux savoir sur quel enregistrement la requête a été fait.
Messages postés
5
Date d'inscription
mercredi 21 octobre 2009
Statut
Membre
Dernière intervention
25 octobre 2009

Merci pour ton aide.

Cela dit, j'ai déjà un champ de type ID que je récupère lors de l'envoi du formulaire, mais lors du traitement des informations envoyées sur mon autre page, cela prend toujours en compte le dernier champ de ma requête...

Pour info j'ai fait l'analogie avec le problème de Malamute7 mais j'essaie de pouvoir modifier les données et pas seulement les supprimer.
Donc lorsque je clique sur le bouton modifier, cela m'envoie sur une autre page comportant plusieurs textbox que j'aimerai pré-remplir avec les valeurs du champ en face duquel l'utilisateur a cliqué sur le bouton (vous suivez ?). Or, ce sont toujours les valeurs du dernier champ retourné par la requête qui s'y inscrivent. D'où mon léger problème. ^^
Messages postés
25
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
25 décembre 2010

je comprend pas vraiment, comment on recupere le id ?
et sa se met ou ? il fau que je rajoute quelque chose dans ma base de donnée ?
comment le id s incrémente t'il ? et pourquoi value php echo $données['id'] ?
je suis censer avoir un id dans ma base de donnée ? je comprend en gros ce que vous voulez dire mais me sortir des choses comme sa, c est compréhensible si je comprend quel terme fait réelement quoi ...