Récuperer et incrémenter une variable d'une base de donnée (php)
milicienoir
-
28 mai 2013 à 08:06
BBFUNK01
Messages postés1310Date d'inscriptionjeudi 16 juillet 2009StatutMembreDernière intervention20 juin 2014
-
31 mai 2013 à 13:37
Bonjour,
Je dois créer un formulaire qui s'incrémente a chaque fois qu'une personne le remplit.
J'ai un petit problème avec ma base de donnée, je veux extraire une valeur (sa j'y arrive) mais le problème c'est que je voudrais que ma dernière ligne car je voudrais ensuite incrémenter cette valeur numérique.
mon code :
mysql_connect("localhost", "arnaud", "root"); // Connexion à la base de données
mysql_select_db("presta_info"); // Sélection de la base de données
$reponse = mysql_query ("SELECT * FROM formulaire ORDER BY numero DESC"); // Requête SQL
while ($donnees = mysql_fetch_array($reponse)) // On boucle pour afficher toutes les données et on met toutes données dans un tableau
{
echo $donnees['numero'];
}
mysql_close();
sylvain64520
Messages postés130Date d'inscriptionlundi 11 janvier 2010StatutMembreDernière intervention 7 juin 2013 28 mai 2013 à 08:45
Bonjour,
Tu peux modifier ta requête pour ne récupérer que le numéro maximum : SELECT max(numero) FROM formulaire.
Ou alors, tu mets un break dès que tu récupères la valeur de numero :
mysql_connect("localhost", "arnaud", "root");
mysql_select_db("presta_info");
$reponse = mysql_query ("SELECT numero FROM formulaire ORDER BY numero DESC");
while ($donnees = mysql_fetch_array($reponse)){
echo $donnees['numero'];break;
}
mysql_close();
NB : pour des raisons d'optimisation, je te conseille de ne récupérer que les champs dont tu as besoin dans ta requête.
J'ai trouvé comment faire j'ai tout simplement enlevé ma boucle
mysql_connect("localhost", "arnaud", "root"); // Connexion à la base de données
mysql_select_db("presta_info"); // Sélection de la base de données
$reponse = mysql_query ("SELECT * FROM formulaire ORDER BY numero DESC"); // Requête SQL
$donnees = mysql_fetch_array($reponse); // On boucle pour afficher toutes les données et on met toutes données dans un tableau
pmcoste
Messages postés72Date d'inscriptionmercredi 7 février 2007StatutMembreDernière intervention25 juillet 20131 31 mai 2013 à 10:52
Bonjour,
Si tu n'as besoin que d'une ligne, pourquoi demander à mysql de récupérer l'ensemble des données de la table ?
La commande "top 1" te permet de ne récupérer que la première ligne. Comme tu tries par numéro descendant, tu n'auras qu'un numéro....
$reponse = mysql_query ("SELECT top 1 numero FROM formulaire ORDER BY numero DESC"); // Requête SQL