Problème affichage valeur sur site web
Résolu/Fermé
A voir également:
- Problème affichage valeur sur site web
- Site de telechargement - Accueil - Outils
- Site comme coco - Accueil - Réseaux sociaux
- Web office - Guide
- Création site web - Guide
- Quel site remplace coco - Accueil - Réseaux sociaux
4 réponses
Utilisateur anonyme
Modifié par nagashima le 14/05/2014 à 14:25
Modifié par nagashima le 14/05/2014 à 14:25
salut,
tu indique :
c'est à dire que tu récupère le nombre d'occurence de ta table qui en toute logique, s'il n'y a pas eu de DELETE, est égal au dernier incrément utilisé.
à mon avis c'est "mysql_num_rows" qui n'est pas adapté
ce que je veux dire par là, c'est que ton code et ton affichage correspondent bien, mais c'est peu être pas l'information que tu souhaitais.
naga
tu indique :
$capteur_de_la_tremis = mysql_num_rows($variable_de_la_BDD_TREMIS); $capteur_de_goblet = mysql_num_rows($variable_de_la_BDD_GOBLET); $etat_du_servomoteur = mysql_num_rows($variable_de_la_BDD_PORTE); $capteur_de_niveau_eau = mysql_num_rows($variable_de_la_BDD_EAU);
c'est à dire que tu récupère le nombre d'occurence de ta table qui en toute logique, s'il n'y a pas eu de DELETE, est égal au dernier incrément utilisé.
à mon avis c'est "mysql_num_rows" qui n'est pas adapté
ce que je veux dire par là, c'est que ton code et ton affichage correspondent bien, mais c'est peu être pas l'information que tu souhaitais.
naga
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
Modifié par Pitet le 14/05/2014 à 14:28
Modifié par Pitet le 14/05/2014 à 14:28
Salut,
Le numéro affiché correspond au nombre de ligne dans ta table.
Il y a effectivement plusieurs erreurs :
Requête sql SELECT : tu utilises une requêtes pour chaque paramètre ce qui n'est pas du tout optimisé. Tu peux tout simplement récupérer toutes les infos en une seule requête comme ceci :
mysql_query("SELECT ID, C_PORTE, C_GOBLET, C_TREMIS, C_EAU, DATE FROM projet_table")
La fonction mysql_query ne retourne pas directement la valeur de tes champs, elle te renvoie une ressource que tu dois parcourir pour récupérer tes infos.
La fonction mysql_num_rows te renvoie le nombre de ligne de ta requête (d'où le fait que tu vois ce nombre partout).
Pour toute cette partie concernant la BDD, je t'invite à reprendre un tutoriel récent, si possible en évitant d'utiliser les fonctions mysql_* qui sont obsolètes et ne devrait plus être utilisé. Préfère PDO ou Mysqli (ce dernier ressemble beaucoup aux fonctions mysql_*)
Bonne journée
Le numéro affiché correspond au nombre de ligne dans ta table.
Il y a effectivement plusieurs erreurs :
Requête sql SELECT : tu utilises une requêtes pour chaque paramètre ce qui n'est pas du tout optimisé. Tu peux tout simplement récupérer toutes les infos en une seule requête comme ceci :
mysql_query("SELECT ID, C_PORTE, C_GOBLET, C_TREMIS, C_EAU, DATE FROM projet_table")
La fonction mysql_query ne retourne pas directement la valeur de tes champs, elle te renvoie une ressource que tu dois parcourir pour récupérer tes infos.
La fonction mysql_num_rows te renvoie le nombre de ligne de ta requête (d'où le fait que tu vois ce nombre partout).
Pour toute cette partie concernant la BDD, je t'invite à reprendre un tutoriel récent, si possible en évitant d'utiliser les fonctions mysql_* qui sont obsolètes et ne devrait plus être utilisé. Préfère PDO ou Mysqli (ce dernier ressemble beaucoup aux fonctions mysql_*)
Bonne journée
Merci pour les infos, même mon prof n'as pas trouvé au bouts de 4 semaines ou je l'ai eu 9h00 par semaines... mdr
Je répond quand tout fonctionne ! :)
Je répond quand tout fonctionne ! :)
Si si ! xD
Mais je n'ais toujours pas reussi, je cherche coment afficher mes valeus, mais je n'y arrive pas du tout ... :3
Mon probleme est la je croit:
Je sais pas quoi mettre à la place de "mysql_fetch_assoc" pour afficher ma variable ...
Mais je n'ais toujours pas reussi, je cherche coment afficher mes valeus, mais je n'y arrive pas du tout ... :3
Mon probleme est la je croit:
$auto_incremente_3 = mysql_fetch_assoc($variable_de_la_BDD_auto_incrementer_3);
$date_3 = ($variable_de_la_BDD_DATE_3);
$capteur_de_la_tremis_3 = ($variable_de_la_BDD_TREMIS_3);
$capteur_de_goblet_3 = ($variable_de_la_BDD_GOBLET_3);
$etat_du_servomoteur_3 = ($variable_de_la_BDD_PORTE_3);
$capteur_de_niveau_eau_3 = ($variable_de_la_BDD_EAU_3);
Je sais pas quoi mettre à la place de "mysql_fetch_assoc" pour afficher ma variable ...
Tu ne lis pas le résultat de ton association.
source : https://www.php.net/manual/fr/function.mysql-fetch-assoc.php
je te conseil de lire, tu devrais comprendre.
Pour faire simple, mysql_fetch_assoc te renvoi une liste d'objet de type tableau, indexé par le nom de la colonne retourné par ta requête. Dans l'exemple du dessus pas exemple, il y a eu un
dis moi si je suis pas clair.
naga
while ($row = mysql_fetch_assoc($result)) { echo $row["userid"]; echo $row["fullname"]; echo $row["userstatus"]; }
source : https://www.php.net/manual/fr/function.mysql-fetch-assoc.php
je te conseil de lire, tu devrais comprendre.
Pour faire simple, mysql_fetch_assoc te renvoi une liste d'objet de type tableau, indexé par le nom de la colonne retourné par ta requête. Dans l'exemple du dessus pas exemple, il y a eu un
select userid,fullname,userstatuseffectué.
dis moi si je suis pas clair.
naga
ah par contre, comme l'a dit Pitet :
si c'est ton prof qui vous a dis d'utiliser
nan plus sérieusement, cette méthode est aujourd'hui obsolète et il est conseillé d'utiliser les nouvelles méthodes (tu as l'avertissement sur mon lien qui te l'indique)
Préfère PDO ou Mysqli (ce dernier ressemble beaucoup aux fonctions mysql_*)
si c'est ton prof qui vous a dis d'utiliser
mysql_fetch_assoc, tu pourrai presque (presque) lui demander s'il fait encore des réserves de nourriture pour l'hiver !
nan plus sérieusement, cette méthode est aujourd'hui obsolète et il est conseillé d'utiliser les nouvelles méthodes (tu as l'avertissement sur mon lien qui te l'indique)
Alors pour que ça fonctionne j'ai fais:
Voila merci pour les petite info ! 1 mois que je cherche sans succes ! MERCI à vous !;)
<?php
$mysqli = new mysqli("127.0.0.1", "root", "", "projet_db");
/* Vérification de la connexion */
if (mysqli_connect_errno()) {
printf("Échec de la connexion : %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT * FROM projet_table_3 ORDER by ID LIMIT 3";
$result = $mysqli->query($query);
// Tableau numérique
$row = $result->fetch_array(MYSQLI_NUM);
//Fermeture de la connexion
$mysqli->close();
?><?php
print "<br >";print "<br >";
print "<font size='28'>Machine VOSGES</font><br ><br >";
echo "<u> Date du relever: </u>"; echo $row[5]. "<br>";
//TREMIS
echo "<u> Stock du trémie: </u>";
echo $row[3];
if( $row[3] >= 18 ){$valeur_de_la_tremis_sur_le_web_3 = " VIDE";}
else{$valeur_de_la_tremis_sur_le_web_3 = " PLEIN";}
echo $valeur_de_la_tremis_sur_le_web_3;
echo "<br />";
//GOBELET
echo "<u> Stock de goblet: </u>";
echo $row[2];
if( $row[2] <= 10 ){$valeur_du_capteur_de_goblet_sur_le_web_3 = " VIDE";}
else{$valeur_du_capteur_de_goblet_sur_le_web_3 = " PLEIN";}
echo $valeur_du_capteur_de_goblet_sur_le_web_3;
print "<br >";
//EAU
echo "<u> Niveau d'eau: </u>";
echo $row[4];
if( $row[4] = 1 ){$valeur_du_capteur_de_niveau_eau_sur_le_web_3 = " PLEIN";}
else{$valeur_du_capteur_de_niveau_eau_sur_le_web_3 = " VIDE";}
echo $valeur_du_capteur_de_niveau_eau_sur_le_web_3;
echo "<br />";
//PORTE
echo "<u> Porte de la machine: </u>";
echo $row[1];
if( $row[1] = 0 ){$etat_du_servomoteur_sur_le_web_3 = " FERMER";}
else{$etat_du_servomoteur_sur_le_web_3 = " OUVERTE";}
echo $etat_du_servomoteur_sur_le_web_3;
?>
Voila merci pour les petite info ! 1 mois que je cherche sans succes ! MERCI à vous !;)