De l'interrogation d'une base à l'utilisation des données reçues comme variables
cs_astrolab
Messages postés7Date d'inscriptionsamedi 27 mars 2004StatutMembreDernière intervention30 mai 2004
-
8 avril 2004 à 20:10
cs_brice57
Messages postés15Date d'inscriptionvendredi 28 novembre 2003StatutMembreDernière intervention15 avril 2004
-
10 avril 2004 à 01:01
Bonjour à tous
et merci de vous interresser à mon problème.
Supposons une base de donnée avec 4 champs:
id, nom d'une personne, historique, poids.
Avec un formulaire, on peut facilement remplir cette base de donnée.
Mais le poids de la personne change et il serait interessant de conserver l'ancienne valeur dans le champ historique.
Comment faire pour questionner la base de donnée afin d'obtenir l'ancien poids que l'on transforme en variable pour le stocker dans historique.
En même temps il serait utile de pouvoir saisir le nouveau poids.
Merci d'avance pour vos suggestions.
Astro.
A voir également:
De l'interrogation d'une base à l'utilisation des données reçues comme variables
cs_brice57
Messages postés15Date d'inscriptionvendredi 28 novembre 2003StatutMembreDernière intervention15 avril 2004 9 avril 2004 à 18:25
une idée :
tu as une table avec toutes les caractéristiques précédemment citées. il faut que tu crées une autre table dans avec une clé primaire composée de la date de la mise à jour du poids ainsi que l'id de la personne (qui est alors une clé étrangère). tu mettras dans cette table l'ancien poids avant mise à jour.
il ne te restera plus qu'à compléter cette table a chaque fois que tu mettras le poids à jour et tu pourras l'interroger pour avoir ton historique
cs_astrolab
Messages postés7Date d'inscriptionsamedi 27 mars 2004StatutMembreDernière intervention30 mai 20041 9 avril 2004 à 20:23
Merci pour ta réponse.
l'idée d'une nouvelle table est intéressante.
Mais ne penses-tu pas que
$date=date("Y-m-d");
$poids2=$_POST['poids'];
$select = "SELECT * FROM matable WHERE..." ;
$rc=mysql_query($select) or die ('erreur : '.mysql_error());
$nbre=mysql_num_rows($rc) or die ('erreur2 :'.mysql_error());
for ($i=0 ; $i<$nbre ; $i++){
$t = mysql_fetch_array($rc) or die ('erreur3 :'.mysql_error());
cs_brice57
Messages postés15Date d'inscriptionvendredi 28 novembre 2003StatutMembreDernière intervention15 avril 2004 10 avril 2004 à 01:01
tout dépend de tes besoins. si tu n'as besoin que de la dernière valeur et que tu fais les mises à jour à interval régulier ta solution est tout à fait bonne. si au contraire tu aimerais connaitre l'historique de manière précise dans ce cas une nouvelle table s'impose. et le fait d'utiliser une autre table plutôt que de stocker une liste de valeur optimisera ta base.