Select FORMAT
RésoluDanielos -
Bonjour,
Je souhaiterai formater le résultat d'une requête COUNT de façon à obtenir un nombre sur 5 digits.
Le code sans la partie SELECT FORMAT fonctionne.
Peut-être n'utilise-je pas la bonne façon de faire ...
Voici mon code :
<?php
//activation de l'affichage des erreurs PHP
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
// echo 'Test <br>';
// echo date("Y");
//on inclut le fichier de connexion à la bdd
require_once "../secure/cnxBddADT.php";
$sql1 = "SELECT FORMAT(SELECT COUNT(ID) AS nb1 FROM Membres_ADT, '00000')";
$result1 = $bdd->query($sql1);
$columns1 = $result1->fetch();
$nb1 = $columns1['nb1'];
// echo 'Il y a '.$nb1.' enregistrement(s).<br>';
$NumMembre=date("Y").$nb1;
// echo $NumMembre.'<br>';
?>
Merci pour toute aide.
Daniel
Windows / Firefox 102.0
2 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
peut-être:
SELECT FORMAT(COUNT(ID),'00000') AS nb1 FROM Membres_ADT
-
Bonjour
La fonction format ne sert pas à ça...
The FORMAT() function formats a number to a format like "#,###,###.##", rounded to a specified number of decimal places, then it returns the result as a string.
Toi, c'est la fonction LPAD que tu dois utiliser.
-
Bonjour Jordane45,
Je ne connaissais pas LPAD. Mes recherche m'avait seulement amener à FORMAT.
C'est vrai que la majorité des exemples était pour spécifier les décimales, mais il y avait aussi un exemple avec non pas '00000' mais D5 qui donnait le résultat souhaité.Avec LPAD et le code suivant :
<?php //activation de l'affichage des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); echo 'Test <br>'; echo date("Y"); //on inclut le fichier de connexion à la bdd require_once "../secure/cnxBddADT.php"; $sql1 = "SELECT LPAD('COUNT(ID) AS nb1 FROM Membres_ADT', 5,'0')"; $result1 = $bdd->query($sql1); $row1 = $result1->fetch(); $nb1 = $row1['nb1']; echo 'Il y a '.$nb1.' enregistrement(s).<br>'; $NumMembre= date("Y").$nb1; echo $NumMembre.'<br>'; ?>J'ai l'erreur :
Notice: Undefined index: nb1 in /..../Adhesion.php on line 18 (94 chez moi).
Je ne vois pas ce qu'est cette histoire d'index qui manque.
Si tu peux m'aiguiller...
Merci d'avanceDaniel
-