Bonjour,
Depuis quelques jours je galère sur un problème d'update via un formulaire. Je m'explique, je récupère grace à la variable $_GET un id. j'ai un formulaire avec qui mettra à jour ma table avec comme condition WHERE l'id que j'ai récuperé . tout mon code me semble correcte et les var_dump effectué ne me ramène rien.
J'ai exploré d'autres topic sur le même sujet, mais pour la plupart le problème étaient situés dans la syntaxe SQL, or ma requete passe bien dans phpmyadmin.
voici le code complet de la page :
<?php
//Affichage des erreurs PHP
error_reporting(E_ALL);
//---------------------------------------------------------------------------//
//Connexion propre à la bdd
//
//---------------------------------------------------------------------------//
try{
$bdd = new PDO('mysql:host=localhost;dbname=dblogin' ,'root','' );
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH
$bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
} catch(PDOException $e) {
die('Erreur : ' . $e->getMessage());
}
function getDetail ($critere)
{
global $bdd;
$sql = "SELECT * FROM tampon WHERE TABLEID = :critere ";
//var_dump($sql);
try
{
$requete = $bdd->prepare($sql) ;
$requete->bindValue(':critere',$critere);
$requete->execute();
return $requete->fetchAll();
}
catch(Exception $e)
{
echo"Erreur";
exit;
}
}
// Fichier entête
require_once("entete.php");
// TRAITEMENT DU FORMULAIRE (si posté)
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="bootstrap/css/bootstrap.min.css" rel="stylesheet" media="screen">
<link href="bootstrap/css/bootstrap-theme.min.css" rel="stylesheet" media="screen">
<script type="text/javascript" src="jquery-1.11.3-jquery.min.js"></script>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<link rel="stylesheet" href="css/Normalize.css" rel="stylesheet">
<link rel="stylesheet" href="css/css/fontawesome.min.css" type="text/css" />
<link rel="stylesheet" href="css/css/fontawesome.css" type="text/css" />
<title>PNRSS <?php print($userRow['user_email']); ?></title>
</head>
<body>
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="pull-left"><img src="images/logo-aigf.png"></div>
<div id="navbar" class="navbar-collapse collapse">
<h3 class="text-center">
PROGRAMME NATIONAL DE RECENSEMENT DES SITES ET STATIONS
</h3>
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
<span class="glyphicon glyphicon-user"></span> Utilisateur: <?php echo $userRow['user_email']; ?> <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="profile.php"><span class="glyphicon glyphicon-user"></span> Profile</a></li>
<li><a href="logout.php?logout=true"><span class="glyphicon glyphicon-log-out"></span> Déconnection</a></li>
</ul>
</li>
</ul>
</div><!--/.nav-collapse -->
</div>
</nav>
<div class="clearfix"></div>
<div class="container-fluid " style="margin-top:80px;">
<div class="container mainbg">
<br>
<a class="return" href="liste_equipe.php"><i class="glyphicon glyphicon-arrow-left"></i> Retour</a>
<br>
<label class="h5">Vous avez selectionné la ligne N° : <?php print($_GET['id']); ?></label>
<hr />
<!-- <h3 align="center">COLLECTE DES DONNEES DU PNRSS</h3>
<hr />
<br/>
<div> -->
<!-- Affichage du formulaire -->
<div class="row col-md-10 col-md-offset-1">
<form action="" method="post">
<h4> Infos du site selectionné </h4>
<hr color="#F90408" style="background-color: darkslateblue; height:4px;" >
<?php
if (isset ($_GET['id']))
{
$critere = $_GET['id'];
$listeDetaillee = getDetail($critere);
//var_dump($critere);
//var_dump($listeDetaillee);
foreach($listeDetaillee as $row)
{
}
}
?>
<!--Table-->
<div class="table table-bordered table-responsive">
<table class="table table-striped w-auto">
<thead class="alert-info table-bordered">
<tr>
<th>TABLEID</th>
<th>EQUIPE_TERRAIN</th>
<th>CLUSTER</th>
<th>LOCALITE</th>
<th>SECTEUR</th>
<th>LONGITUDE_Q</th>
<th>LATITUDE_Q</th>
<th>PYLONE_Q</th>
</tr>
</thead>
<!--Table head-->
<!--Table body-->
<tbody class="text-center">
<tr class="table-info">
<th scope="row"><?php echo $row['TABLEID']; ?></th>
<td><?php echo $row['EQUIPE_TERRAIN']; ?></td>
<td><?php echo $row['CLUSTER']; ?></td>
<td><?php echo $row['LOCALITE']; ?></td>
<td><?php echo $row['SECTEUR']; ?></td>
<td><?php echo $row['LONGITUDE_Q']; ?></td>
<td><?php echo $row['LATITUDE_Q']; ?></td>
<td><?php echo $row['PYLONE_Q']; ?></td>
</tr>
<tr>
</tbody>
</table>
</div>
<div>
<p class="arrow"><h4> Formulaire d'insertion des données collectées </h4><i>Prenez soin de bien effectuer cette opération.</i></p></div>
<hr color="#F90408" style="background-color: darkslateblue; height:4px;" >
<!--Table fin-->
<?php
//-------------------------
if (isset($_POST['submit'])) {
$_POST['TABLEID']=$row['TABLEID'];
$nom_tableID=$_POST['TABLEID'];
$nom_SUPPORT=$_POST['SUPPORT'];
$nom_HAUTEUR_SUPPORT=$_POST['HAUTEUR_SUPPORT'];
// preparation de la requete
$sql="UPDATE tampon SET SUPPORT =:SUPPORT, HAUTEUR_SUPPORT = :HAUTEUR_SUPPORT WHERE TABLEID= :TABLEID";
$traiter=$bdd->prepare($sql);
$traiter->bindParam(':TABLEID',$nom_tableID,PDO::PARAM_STR,50);
$traiter->bindParam(':SUPPORT',$nom_SUPPORT,PDO::PARAM_STR,50);
$traiter->bindParam(':HAUTEUR_SUPPORT' ,$nom_HAUTEUR_SUPPORT, PDO::PARAM_INT);
// $traiter->execute(array(':TABLEID'=>$nom_tableID,':SUPPORT'=>$nom_SUPPORT,':HAUTEUR_SUPPORT' =>$nom_HAUTEUR_SUPPORT));
$traiter->debugDumpParams();
//echo '<pre>', print_r($traiter->fetchAll(PDO::FETCH_ASSOC), TRUE), '</pre>';
var_dump($traiter);
if (isset($traiter)) {
//echo "<div class='alert alert-success center' style='width: 90%; margin: auto;'><p>Ajout //avec sucees</p></div><br><br>
//<meta http-equiv='refresh' content='5; url = liste_equipe.php' />
//";
//echo "$nom_SUPPORT 'et' $nom_HAUTEUR_SUPPORT" ;
var_dump($traiter);
//var_dump($_POST['TABLEID']);
}
else {
echo "<div class='alert alert-danger center' style='width: 90%; margin: auto;'><p>Error d'ajout</p></div><br><br>";
}
}
?>
<div class="formelement">
<label class="">TABLEID : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<input readonly name="TABLEID" type="text" placeholder="" class="form-control validate[required]" value="<?php echo $row['TABLEID']; ?>" />
</div><br>
<label class="">SUPPORT : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<select name="SUPPORT" class="form-control">
<option>Seclectionner</option>
<option>TERRE</option>
<option>MONTAGNE</option>
<option>BATIMENT</option>
</select>
</div><br>
<label class="">HAUTEUR_SUPPORT : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<input name="HAUTEUR_SUPPORT" type="text" placeholder="" class="form-control validate[required]" value="" />
</div><br>
<label class="">LONGITUDE_EQ_TER : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<input name="LONGITUDE_EQ_TER" type="text" placeholder="" class="form-control validate[required]" value="" />
</div><br>
<label class="">LATTITUDE_EQP_TER : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<input name="LATTITUDE_EQP_TER" type="text" placeholder="" class="form-control validate[required]" value="" />
</div><br>
<label class="">PYLONE_EQUIPE_TERRAIN : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<input name="PYLONE_EQUIPE_TERRAIN" type="text" placeholder="" class="form-control validate[required]" value="" />
</div><br>
<label class="">SECURITE_1 : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<select name="SECURITE_1" class="form-control">
<option>Seclectionner</option>
<option>GARDIENNAGE</option>
<option>BALISAGE NOCTUNE</option>
<option>BALISAGE</option>
</select>
</div><br>
<label class="">SECURITE_2 : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<select name="SECURITE_2" class="form-control">
<option>Seclectionner</option>
<option>GARDIENNAGE</option>
<option>BALISAGE NOCTUNE</option>
<option>BALISAGE</option>
</select>
</div><br>
<label class="">SECURITE_3 : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<select name="SECURITE_3" class="form-control">
<option>Seclectionner</option>
<option>GARDIENNAGE</option>
<option>BALISAGE NOCTUNE</option>
<option>BALISAGE</option>
</select>
</div><br>
<label class="">SECURITE_4 : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<select name="SECURITE_4" class="form-control">
<option>Seclectionner</option>
<option>GARDIENNAGE</option>
<option>BALISAGE NOCTUNE</option>
<option>BALISAGE</option>
</select>
</div><br>
<label class="">SECURITE_5 : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<select name="SECURITE_5" class="form-control">
<option>Seclectionner</option>
<option>GARDIENNAGE</option>
<option>BALISAGE NOCTUNE</option>
<option>BALISAGE</option>
</select>
</div><br>
<label class="">ENERGIE_1: <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<select name="ENERGIE_1" class="form-control">
<option>Seclectionner</option>
<option>SOLAIRE</option>
<option>CIE</option>
<option>GROUPE ELECTROGENE</option>
</select>
</div><br>
<label class="">Nbre_ENERGIE_1: <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<input name="Nbre_ENERGIE_1" type="text" placeholder="" class="form-control validate[required]" value="" />
</div><br>
<label class="">ENERGIE_2: <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<select name="ENERGIE_2" class="form-control">
<option>Seclectionner</option>
<option>SOLAIRE</option>
<option>CIE</option>
<option>GROUPE ELECTROGENE</option>
</select>
</div><br>
<label class="">CODE_SITE_UTILISATEUR_EMPLACEMENT1 : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<input name="CODE_SITE_UTILISATEUR_EMPLACEMENT1" type="text" placeholder="" class="form-control validate[required]" value="" />
</div><br>
<label class="">UTILISATEUR EMPLACEMENT_1 : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<select name="UTILISATEUR EMPLACEMENT_1" class="form-control">
<option>Seclectionner</option>
<option>IHS</option>
<option>MTN</option>
<option>MOOV AFRICA</option>
<option>OCI</option>
<option>INDETERMINE</option>
</select>
</div><br>
<label class="">CODE_SITE_UTILISATEUR_EMPLACEMENT_2 : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<input name="CODE_SITE_UTILISATEUR_EMPLACEMENT_2" type="text" placeholder="" class="form-control validate[required]" value="" />
</div><br>
<label class="">UTILISATEUR_EMPLACEMENT_2 : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<input name="UTILISATEUR_EMPLACEMENT_2" type="text" placeholder="" class="form-control validate[required]" value="" />
</div><br>
<label class="">DIFFICULTES_RECOMMANDATIONS : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<textarea name="DIFFICULTES_RECOMMANDATIONS" type="text" placeholder="" class="form-control validate[required]" value=""></textarea>
</div><br>
<label class="">VALIDER : <span style="color:red; font-weight: bold; font-family: Arial, sans-serif ;">(Ajouter une description)</span></label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
<select name="UTILISATEUR EMPLACEMENT_1" class="form-control">
<option>Seclectionner</option>
<option>OUI</option>
<option>NON</option>
</select>
</div><br>
<div class="form-group text-center">
<div class="col">
<button type="submit" name="submit" class="mybtn mybtn-success btn-lg">Envoyer</button>
<hr id='success'>
</div>
</div>
</div>
</div>
<!-- Bouton de validation -->
</form>
</div>
<!-- FIN deuxième liste déroulante-->
<!-- FIN deuxième liste déroulante-->
<br/>
<br/>
</div>
<script src="bootstrap/js/bootstrap.min.js"></script>
</body>
</html>
Merci pour votre éclarage ...
Configuration: Windows / Firefox 96.0
Afficher la suite
17 janv. 2022 à 15:01
je vais essayer cette option et je vous reviens
Modifié le 17 janv. 2022 à 16:57
voici la fonction créée
lorsque je fais appel à cette function j'ai erreur comme stipulé dans mon catch
17 janv. 2022 à 19:10
Avec ça tu auras l'explication du souci.