Php. Bonjour, j'ai un ptit probleme, j'ai un programme en php,
Résolu/Fermé
Utilisateur anonyme
-
16 nov. 2016 à 17:38
jordane45 Messages postés 38430 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 février 2025 - 28 nov. 2016 à 17:17
jordane45 Messages postés 38430 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 février 2025 - 28 nov. 2016 à 17:17
Bonjour,
j'ai un ptit probleme, j'ai un programme en php, j'ai une base de donnees avec des tables telles que, tbeleve, tbnote...
je veux calculer la moyenne pour chaque eleve via son bulletin , je n'arrive pas. quelqu'un peur m'aider svp? merci
j'ai un ptit probleme, j'ai un programme en php, j'ai une base de donnees avec des tables telles que, tbeleve, tbnote...
je veux calculer la moyenne pour chaque eleve via son bulletin , je n'arrive pas. quelqu'un peur m'aider svp? merci
A voir également:
- Php. Bonjour, j'ai un ptit probleme, j'ai un programme en php,
- Easy php - Télécharger - Divers Web & Internet
- Mettre en veille un programme - Guide
- Programme demarrage windows 10 - Guide
- Forcer la fermeture d'un programme - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
5 réponses
jordane45
Messages postés
38430
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2025
4 735
17 nov. 2016 à 08:55
17 nov. 2016 à 08:55
Bonjour,
Et tu as commencé à coder quelque-chose ?
La Combobox peut être ?
Le tableau ?
Tu peux déjà nous montrer ce que tu as essayé ?
Pour ce qui est de la requête. .. tu peux utiliser un WHERE pour filtrer sur un élève.
Et tu as commencé à coder quelque-chose ?
La Combobox peut être ?
Le tableau ?
Tu peux déjà nous montrer ce que tu as essayé ?
Pour ce qui est de la requête. .. tu peux utiliser un WHERE pour filtrer sur un élève.
yg_be
Messages postés
23476
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 février 2025
Ambassadeur
1 568
17 nov. 2016 à 23:03
17 nov. 2016 à 23:03
quelles sont les colonnes de tes tables tbeleve et tbnote ?
ton code est opérationnel? tout fonctionne bien, excepté le calcul de la moyenne?
merci de nous dire précisément ce que tu attends du forum.
ton code est opérationnel? tout fonctionne bien, excepté le calcul de la moyenne?
merci de nous dire précisément ce que tu attends du forum.
je pense que je peux calculer la moyenne uniquement avec la table note, les colonnes sont: matricule(combobox), classe, matiere, note obtenue, coefficient. mon veritable probleme c'est que je veux a chaque matricule choisi dans le combo s'affichent automatiquement les autres champs apprpries. par exemple, si il ya un eleve avec un matricule 22, lorsque je choisi le matricule s'affiche automatiquement les colonnes classe, matiere et les differentes notes obtenues par matiere avec leur coefficient. j'espere la precision est bonne. merci deja!
en passant, comment comprennez vous ceci? toujours dans mon programme, precisement la table tbeleve, avant le matricule etait auto_increment et je n'avais aucun probleme pour modifier les donnees de la table, je trouvais ca un peu moins professionnel et j'ai decide de changer le champ matricule en varchar, je prend une partie du nom de l'eleve, une partie du prenom, une partie de la date de naissance avec substring pour realiser le matricule, ca a marche pour l'insertion mais ne me permet pas de faire des mise a jour, il me donne un waning du genre: mysql_fetch_object(): supplied argument is not a valid mysql result resource, la ligne precisee est: if($result = mysql_fetch_object ($requete)).
NB: $cnx = mysql_connect( "localhost", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "ecole" ) ;
//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["ideleve"] ;
//requête SQL:
$sql = "SELECT *
FROM tb_eleve
WHERE Code_Eleve= ".$id ;
//exécution de la requête:
$requete = mysql_query( $sql, $cnx ) ;
que pouvez vous me suggerer? merci deja
NB: $cnx = mysql_connect( "localhost", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "ecole" ) ;
//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["ideleve"] ;
//requête SQL:
$sql = "SELECT *
FROM tb_eleve
WHERE Code_Eleve= ".$id ;
//exécution de la requête:
$requete = mysql_query( $sql, $cnx ) ;
que pouvez vous me suggerer? merci deja
jordane45
Messages postés
38430
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2025
4 735
>
Utilisateur anonyme
18 nov. 2016 à 13:53
18 nov. 2016 à 13:53
Bonjour,
Il manque simplement les quotes autour de la variable $id
Mais bon.. attention.... mettre des "id" en varchar ralentira un peu plus tes requêtes que l'utilisation de nombres.
Il manque simplement les quotes autour de la variable $id
WHERE Code_Eleve= '".$id."'";
Mais bon.. attention.... mettre des "id" en varchar ralentira un peu plus tes requêtes que l'utilisation de nombres.
yg_be
Messages postés
23476
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 février 2025
1 568
18 nov. 2016 à 12:59
18 nov. 2016 à 12:59
Dans une requête, une comparaison avec un nombre ne s'écrit pas tout-à-fait comme une comparaison avec un mot. Donc tu dois adapter ta requête après avoir décidé de changer le matricule de nombre en varchar.
Suggestion : affiche la valeur de $sql, et exécute cette requête sans passer par un programme..
Suggestion : affiche la valeur de $sql, et exécute cette requête sans passer par un programme..
jordane45
Messages postés
38430
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2025
4 735
>
yg_be
Messages postés
23476
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 février 2025
27 nov. 2016 à 17:46
27 nov. 2016 à 17:46
Dans une requête, une comparaison avec un nombre ne s'écrit pas tout-à-fait comme une comparaison avec un mot
Ah ? ..mouais.. disons plutôt que ... pour un champ de type numérique.. les quotes ne sont pas obligatoires alors que pour des champs text elles le sont.
Mais .. si il prend (et toi aussi....) l'habitude de mettre des quotes SYSTEMATIQUEMENT cela évitera de nombreuses déconvenues... (au cas où la variable serait vide ou null par exemple)...
Utilisateur anonyme
27 nov. 2016 à 04:53
27 nov. 2016 à 04:53
desole mes amis j'etais absent pour des raisons qui sont independantes de ma volonte, je suis de retour. le proble persiste encore, entre temps je vais continuer mes recherches afin de trouver quelque chose. merci a vous tous qui avez pris la peine de venir a mon secours. merci infiniment.
jordane45
Messages postés
38430
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2025
4 735
27 nov. 2016 à 11:17
27 nov. 2016 à 11:17
Le problème persiste à quel niveau ?
As tu tenu compte de nos remarques ?
Quel est ton code maintenant ?
As tu tenu compte de nos remarques ?
Quel est ton code maintenant ?
tu m'as suggere de mettre des quotes autour de la variable $id, je l'ai fait et ca ne marche pas. comme je vous ai dit deja, ca ne pose pas de probleme lorsque le champ id est de type int auto-increment, seulement quand j'ai essaye de passer de int a varchar le probleme se pose. en plus j'aimerais incrementer un chiffre a la fin de l'id a chaque nouvelle insertion afin d'eviter avec deux eleves qui ont le meme nom et prenom d'avoir le meme id. par exemple, pour un premier eleve qui s'appelle julien pierre, son id sera JULPI, maintenant avec l'incrementation d'un nombre, j'aimerais avoir JULPI01, pour un autre eleve xxxxx02, xxxxx03.... ainsi de suite. j'ai code la premiere partie, j'arrive pas a realiser l'incrementation
jordane45
Messages postés
38430
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2025
4 735
>
appo26
28 nov. 2016 à 15:40
28 nov. 2016 à 15:40
tu m'as suggere de mettre des quotes autour de la variable $id, je l'ai fait et ca ne marche pas
- Qu'est ce qui ne marche pas ?
- Pourrais tu être plus précis ??
- Quel est le code ( EN ENTIER) que tu utilises ?
- Quelle est la structure de ta table ?
en plus j'aimerais incrementer un chiffre a la fin de l'id a chaque nouvelle insert
Comme tu le dis... c'est en "plus".
Commence déjà par résoudre ton problème avant de vouloir greffer d'autres choses dessus.
Et puis.... c'est une autre question... qui devra faire l'objet d'une nouvelle disucssion sur le forum. ( tant que possible... on ne pose qu' UNE seule question par discussion histoire de plus facilement s'y retrouver ).
Sans oublier d'y mettre le code utilisé ... vu que tu indiques:
j'ai code la premiere partie, j'arrive pas a realiser l'incrementation
Merci.
<?php //connection au serveur: $cnx = mysql_connect( "localhost", "root", "" ) ; //sélection de la base de données: $db = mysql_select_db( "ecole" ) ; //récupération de la variable d'URL, //qui va nous permettre de savoir quel enregistrement modifier $id = $_GET["ideleve"] ; //requête SQL: $sql = "SELECT * FROM tb_eleve WHERE Code_Eleve= ".$id ; //exécution de la requête: $requete = mysql_query( $sql, $cnx ) ; //affichage des données: if($result = mysql_fetch_object ($requete)) { ?> <div id="apDiv13"> <form name="insertion" action="modifier_eleve_premiere_annee3.php" method="POST"> <input type="hidden" name="id" value="<?php echo($id) ;?>"> <table width="587" border="3" bgcolor="#ABABAB" height="300"> <tr align="center"> <td><span class="style1">Nom</span></td> <td width="149"><label> <input type="text" name="nom" value="<?php echo($result->Nom) ;?>"> </label></td> <td width="119"><span class="style1">Sexe</span></td> <td width="145"><label> <input type="text" name="sexe" value="<?php echo($result->Sexe) ;?>"> </label></td> </tr> <tr align="center"> <td><span class="style1">Prenom</span></td> <td width="149"><label> <input type="text" name="prenom" value="<?php echo($result->Prenom) ;?>"> </label></td> <td width="119"><span class="style1">Date_Naissance</span></td> <td width="145"><label> <input type="text" name="datenaissance" value="<?php echo($result->Date_Naissance) ;?>"> </label></td> </tr> <tr align="center"> <td><span class="style1">Classe</span></td> <td width="149"><label> <input type="text" name="classe" value="<?php echo($result->Classe) ;?>"> </label></td> <td width="119"><span class="style1">Annee_Academique</span></td> <td width="145"><label> <input type="text" name="anneeacademique" value="<?php echo($result->Annee_Academique) ;?>"> </label></td> </tr> <tr align="center"> <td><span class="style1">Pers_Resp</span></td> <td width="149"><label> <input type="text" name="persresp" value="<?php echo($result->Pers_Resp) ;?>"> </label></td> <td width="119"><span class="style1">Lien_Parental</span></td> <td width="145"><label> <input type="text" name="lienparental" value="<?php echo($result->Lien_Parental) ;?>"> </label></td> </tr> <tr align="center"> <td><span class="style1">Adresse</span></td> <td width="149"><label> <input type="text" name="adresse" value="<?php echo($result->Adresse) ;?>"> </label></td> <td width="119"><span class="style1">Telephone</span></td> <td width="145"><label> <input type="text" name="telephone" value="<?php echo($result->Telephone) ;?>"> </label></td> </tr> <tr align="center"> <td colspan="4"><label> <input type="submit" value="modifier"> </label></td> </tr> </table> </form></div> <?php }//fin if ?>
EDIT : Ajout des balises de code ...encore....
NB. ce bout de code est celui qui permet d'afficher la table avec les donnees a modifier puis de valider
jordane45
Messages postés
38430
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2025
4 735
28 nov. 2016 à 16:08
28 nov. 2016 à 16:08
Heu...
où as tu mis les quotes ???
... je ne les vois pas dans ce bout de code........
où as tu mis les quotes ???
$sql = "SELECT * FROM tb_eleve WHERE Code_Eleve= ".$id ;
... je ne les vois pas dans ce bout de code........
jordane45
Messages postés
38430
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2025
4 735
>
appo26
28 nov. 2016 à 17:17
28 nov. 2016 à 17:17
Donc :
Etape 1 : Mettre cette discussion en Resolu (je m'en occupe pour toi)
Etape 2 : Ouvrir une nouvelle discussion sur le forum pour discuter de ce "nouveau" problème.
Etape 1 : Mettre cette discussion en Resolu (je m'en occupe pour toi)
Etape 2 : Ouvrir une nouvelle discussion sur le forum pour discuter de ce "nouveau" problème.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ryko1820
Messages postés
1677
Date d'inscription
dimanche 28 avril 2013
Statut
Membre
Dernière intervention
15 août 2021
276
16 nov. 2016 à 17:59
16 nov. 2016 à 17:59
Hello,
vu que tu postes dans mysql je vais en conclure que tu cherches la requête SQL qui permettrait d'obtenir les résultats. Voilà une piste :
https://www.tutorialspoint.com/mysql/mysql-avg-function.htm
A utiliser avec un client mysql permettant de se connecter à la base et de lancer des requêtes :
- en mode graphique avec par exemple phpmyadmin si il est installé
- en mode console avec le client par défaut
Il existe pléthores d'outils (graphiques ou non) permettant d’interagir avec une base de donnée, les choix peuvent être déterminés en fonction du contexte (base locale, personnelle, professionnelle), de l'environnement (Windows/Linux), de la connectivité à la base (locale,réseau,...) ...
Pour mettre ça dans du PHP et sortir une page, c'est une autre histoire, mais la première étape c'est déjà d'avoir la requête SQL qui fait le travail, le reste ce n'est que de la mise en forme.
En espérant que cela répondra à ta question.
vu que tu postes dans mysql je vais en conclure que tu cherches la requête SQL qui permettrait d'obtenir les résultats. Voilà une piste :
https://www.tutorialspoint.com/mysql/mysql-avg-function.htm
A utiliser avec un client mysql permettant de se connecter à la base et de lancer des requêtes :
- en mode graphique avec par exemple phpmyadmin si il est installé
- en mode console avec le client par défaut
Il existe pléthores d'outils (graphiques ou non) permettant d’interagir avec une base de donnée, les choix peuvent être déterminés en fonction du contexte (base locale, personnelle, professionnelle), de l'environnement (Windows/Linux), de la connectivité à la base (locale,réseau,...) ...
Pour mettre ça dans du PHP et sortir une page, c'est une autre histoire, mais la première étape c'est déjà d'avoir la requête SQL qui fait le travail, le reste ce n'est que de la mise en forme.
En espérant que cela répondra à ta question.
merci ryko, mais le probleme est plus complexe que ca, ce que veux realiser c que, je dois calculer la moyenne pour chaque eleve separement, pour cela, je voudrais selectionner tous les matricules des eleves dans un combobox, et a chaque matricule choisi doivent afficher les donnees correspondantes dans un tableau pour pouvoir calculer la moyenne pour l'eleve en question. voila! j'attend avec impatience vos reactions. merci
17 nov. 2016 à 19:44
<tr align="center">
<td><span class="styl1">matricule</span></td>
<td width="149"><select name="matricule" id="matricule">
<?php
require("connection.php");
$getallcode=mysql_query("select * from tb_eleve");
while($viewallcode=mysql_fetch_array($getallcode)){
?>
<option id="<?php echo $viewallcode['Matricule']; ?>"><?php echo $viewallcode['Matricule'] ?></option>
<?php } ?>
</select></td>