j'ai un problème qui est d'afficher d'abord la page où il y a les notes d'un élève et le problème c'est quand je modifie une note et que je clique sur le bouton recalculer et valider je n'ai pas les modifications dans ma base de données. Voici le code de la page qui traite ces actions :
Code : Tout sélectionner
<?php
$nv_dv1 = $_POST['nv_dv1'];
$nv_dv2 = $_POST['nv_dv2'];
$nv_cp1 = $_POST['nv_cp1'];
$dv_s1 = $nv_dv1+$nv_dv2/2;
$moy_s1 = $dv_s1+$nv_cp1/2;
$bdd = new PDO('mysql:host=localhost; dbname=espace_membres', 'root', 'root');
require('controle_connexion.php');
if(isset($_POST['valider'])) {
$reqdv1 = $bdd->prepare("SELECT * FROM inscription WHERE id = ?");
$reqdv1->execute(array($_GET['id']));
$note = $reqdv1->fetch();
if(isset($_POST['nv_dv1']) AND !empty($_POST['nv_dv1']))
{
$nv_dv1 = $_POST['nv_dv1'];
$insertdv1 = $bdd->prepare("UPDATE inscription SET devoir1 = ? WHERE id = ?");
$insertdv1->execute(array($nv_dv1, $_SESSION['id']));
header('Location: modif_note.php?id='.$_SESSION['id']);
}
if(isset($_POST['nv_dv2']) AND !empty($_POST['nv_dv2']))
{
$nv_dv2 = $_POST['nv_dv2'];
$insertdv2 = $bdd->prepare("UPDATE inscription SET devoir2 = ? WHERE id = ?");
$insertdv2->execute(array($nv_dv2, $_SESSION['id']));
header('Location: modif_note.php?id='.$_SESSION['id']);
}
if(isset($_POST['nv_cp1']) AND !empty($_POST['nv_cp1']))
{
$nv_cp1 = $_POST['nv_cp1'];
$insertcp1 = $bdd->prepare("UPDATE inscription SET composition1 = ? WHERE id = ?");
$insertcp1->execute(array($nv_cp1, $_SESSION['id']));
header('Location: modif_note.php?id='.$_SESSION['id']);
}
if(isset($_POST['nv_sm1']) AND !empty($_POST['nv_sm1']))
{
$nv_moy1 = $moy_s1;
$insertsm1 = $bdd->prepare("UPDATE inscription SET semestre1 = ? WHERE id = ?");
$insertsm1->execute(array($nv_moy1, $_SESSION['id']));
header('Location: modif_note.php?id='.$_SESSION['id']);
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>App School Manager - Espace proffesseur</title>
<link href="css/bootstraprof.css" rel="stylesheet" id="bootstrap-css">
<link href="css/prof.css" rel="stylesheet" id="bootstrap-css">
<script src="js/prof.js"></script>
<script src="js/prof2.js"></script>
<!------ Include the above in your HEAD tag ---------->
</head>
<body>
<nav class="navbar navbar-default navbar-static-top">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">
App School Manager
</a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<form class="navbar-form navbar-left" method="GET" role="search">
<div class="form-group">
<input type="text" name="q" class="form-control" placeholder="Rechercher">
</div>
<button type="submit" class="btn btn-default"><i class="glyphicon glyphicon-search"></i></button>
</form>
<ul class="nav navbar-nav navbar-right">
<li><a href="#" target="_self">Changer nom utilisateur</a></li>
<li><a href="#" target="_self">Changer mot de passe</a></li>
<li><a href="deconnexion.php">Déconnexion</a></li>
</ul>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav>
<div class="container-fluid main-container">
<div class="col-md-2 sidebar">
<ul class="nav nav-pills nav-stacked">
<li><a href="espace_prof.php">Accueil</a></li>
<li class="active"><a href="#">Elève</a></li>
<li><a href="#">Classes</a></li>
<li><a href="#">Cours/Exercices</a></li>
<li><a href="#">Réclamations</a></li>
</ul>
</div>
<div class="col-md-10 content">
<div class="panel panel-default">
<div class="panel-heading">
Tableau de bord Professeur
</div>
<div class="panel-body" align="center">
<img src="images/logo.jpg" align="center">
<br />
<br /><div align="right"><h5>Effectuer une nouvelle recherche</h5>
<form method="POST" action="resultat2.php">
<input type="text" name="recheleve2">
</form></div>
<form method="POST" action="">
<br />
<?php
$id_s = 0;
if(isset($_GET['id'])) {
$id_s = intval($_GET['id']);
}
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=espace_membres', 'root', 'root', $pdo_options);
$req = $bdd->prepare("SELECT id_e, prenom_e, nom_e, devoir1, devoir2, composition1, semestre1, devoir3, devoir4, composition2, semestre2, annuelle FROM inscription WHERE id_e = ?");
$req->execute(array($_GET['id']));
?>
<?php while ($infos = $req->fetch())
{
?>
<br /><h3>Modification des notes de <b><?php echo $infos['prenom_e']; echo" "; echo $infos['nom_e']; ?></b></h3></h1><br />
<div class="form-group col-md-4">
<label>Notes 1er Semestre</label><br/><br/>
<label>Devoir 1</label>
<input class="form-control" name="nv_dv1" type="number" value="<?php echo $infos['devoir1']; ?>">
<label>Devoir 2</label>
<input class="form-control" name="nv_dv2" type="number" value="<?php echo $infos['devoir2']; ?>">
<label>Composition 1</label>
<input class="form-control" name="nv_cp1" type="number" value="<?php echo $infos['composition1']; ?>">
<label>Semestre 1</label>
<input class="form-control" name="nv_sm1" type="number" value="<?php echo $infos['semestre1']; ?>" readonly>
</div>
<div class="form-group col-md-4">
<label>Notes 2e Semestre</label><br/><br/>
<label>Devoir 3</label>
<input class="form-control" name="nv_dv3" type="number" step="any" value="<?php echo $infos['devoir3']; ?>" readonly>
<label>Devoir 4</label>
<input class="form-control" name="nv_dv4" type="number" step="any" value="<?php echo $infos['devoir4']; ?>" readonly>
<label>Composition 2</label>
<input class="form-control" name="nv_cp2" type="number" step="any" value="<?php echo $infos['composition2']; ?>" readonly>
<label>Semestre 2</label>
<input class="form-control" name="nv_sm2" type="number" step="any" value="<?php echo $infos['semestre2']; ?>" readonly>
</div>
<div class="form-group col-md-8">
<label>Moyenne Annuelle</label>
<input class="form-control" name="nv_an" type="number" step="any" value="<?php echo $infos['anuelle']; ?>" readonly>
<br />
<button type="submit" class="btn btn-default" name="valider">RECALCULER ET VALIDER</button></a>
</div>
<?php
}
$req->closeCursor();
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>
<br /><br /><br />
</form>
<div style="padding-top: 35px; padding-left: 400px;">
<?php
if (isset($erreur)) {
echo '<font color="red">'.$erreur."</font>";
}
?>
</div>
</div>
</div><br /><br /><br />
<footer class="pull-left footer">
<p class="col-md-12">
<hr class="divider">
Copyright © 2018 App School Manager by <a href="http://www.kadiortech.com">Kadior'Tech</a>
</p>
</footer>
</div>
</body>
</html>