[RESOLU] Récupérer un dernier numéro pour afficher

Eléphanteau du PHP | 15 Messages

25 sept. 2014, 08:22

Bonjour

Je voudrais récupéré le prochain numéro d'un table dans phpmyadmin. le champ numéro est auto-incrémenté.

exemple si le dernier numéro est le 6, je voudrais afficher le prochain qui sera le 7

Voici le code que j'ai fait :

Code : Tout sélectionner

if(!$_SESSION['Logger']==1){ header("Location: index.php"); exit(); } $sql="SELECT Numero as number FROM `ao`ORDER BY Numero DESC LIMIT 1"; $link = @mysql_connect("localhost", "objectifarobt", "obt2011"); mysql_select_db("objectifarobt"); $result = db_query($sql, $link); $number=''; while($data = mysql_fetch_array($result)){ $number = $data['number'] ; print_r ($number); } $AO_Num = $number;

Mais lorsque je connecte la premiere fois il met le dernier numéro mais non le prochain( obliger de faire actualiser pour l'afficher)


Merci

Eléphant du PHP | 151 Messages

25 sept. 2014, 10:55

Bonjour, pour aider dans ta recherche :
- quel intérêt ?
Développeur d'applications pour intranets industriels (IHM), DBA Oracle, auto entrepreneur. Je fuis les frameworks car je pense comme Rasmus Lerdorf : "all PHP frameworks suck"...
Je me suis lancé dans la reprise du projet PhpMyNewsletter (GNU GPL), que je vous invite à essayer.

echo ($user=='enregistré?"je t'aide":"je t'aide pas !");

ynx
Mammouth du PHP | 586 Messages

25 sept. 2014, 11:51

Salut,

Ta requête te retourne bien le dernier id utilisé dans ta table, peu importe que tu actualises ou non ta page. Tant qu'il n'y a pas de nouvelle donnée insérée dans ta table, ta requête te retournera toujours ce résultat.

Si tu veux le prochain id, il te suffit d'ajouter +1 à ton résultat :
SELECT Numero + 1 as number FROM `ao`ORDER BY Numero DESC LIMIT 1
ce qui est aussi équivalent à (pas forcément plus efficace) :
SELECT MAX(Numero) + 1 as number FROM `ao`
Petites remarques au passage :
- utiliser une boucle while pour récupérer un seul résultat est inutile, un simple $number = mysql_result($result, 0); devrait suffire
- l'utilisation de @ pour cacher les erreurs est déconseillé, lorsque tu auras un problème de connection à la bdd tu ne seras pas averti (pas facile à corriger sans connaitre le pb)

Bonne journée

Eléphanteau du PHP | 15 Messages

25 sept. 2014, 12:34

ok merci pour tout