vbto
Messages postés27Date d'inscriptionsamedi 10 janvier 2009StatutMembreDernière intervention25 octobre 2012
-
16 mai 2011 à 16:43
vbto
Messages postés27Date d'inscriptionsamedi 10 janvier 2009StatutMembreDernière intervention25 octobre 2012
-
17 mai 2011 à 12:57
Bonjour j'ai un problème de modification d'un enregistrement en php/mysql
j'ai 2 formulaires. l'erreur est à ce niveau mais if ($_GET['Code'] )
je n'arrive pas à le résoudre,l'insertion et la suppression marche mais pas la modification merci
voici le contenu du premier
<?php
include'connexion.php';
//vérification de la variable
//$Code=$_GET['Code'];
if(isset($_POST['TxtCode']) and isset($_POST['TxtLib']))
{
//$Code=addslashes($_GET['Code']);
$TxtCode = addslashes($_POST['TxtCode']);
$TxtLib = addslashes($_POST['TxtLib']);
// On vérifie si c'est une modification de news ou pas
if ($_GET['Code'] == 0) //Il ne teste pas Code est dans le 2e formulaire
{
// Ce n'est pas une modification, on crée une nouvelle entrée dans la table
$heure = date("y-m-d H:i:s");
mysql_query("INSERT INTO grade VALUES('" . $TxtCode . "', '" . $TxtLib . "', '" . $heure . "')");
}
else
{
// On protège la variable "code" pour éviter une faille SQL
$_GET['Code'] = addslashes($_GET['Code']);
// C'est une modification, on met juste à jour le libellé
mysql_query("UPDATE grade SET libellegrade='" . $TxtLib . "' WHERE codegrade='" . $_GET['Code'] . "'");
}
}
//--------------------------------------------------------
// Vérification 2 : est-ce qu'on veut supprimer un grade ?
//--------------------------------------------------------
if (isset($_GET['supprimer_grade'])) // Si on demande de supprimer un grade
{
// Alors on supprime le grade correspondante
// On protège la variable codegrade pour éviter une faille SQL
$_GET['supprimer_news'] = addslashes($_GET['supprimer_grade']);
mysql_query('DELETE FROM grade WHERE codegrade=\'' . $_GET['supprimer_grade'] . '\'');
}
?>
...
<?php
$requete=mysql_query('select codegrade,libellegrade from grade order by libellegrade');
while ($donnees = mysql_fetch_array($requete)) //on fait une boucle pour lister les grades
{
?>
<tr>
<td><?php echo stripslashes($donnees['codegrade']); ?></td>
<td><?php echo stripslashes($donnees['libellegrade']); ?></td>
<td>[view_grade.php?vieuw_grade=<?php echo stripslashes($donnees['codegrade']); ?> Consulter]</td>
<td>[update_grade.php?modifier_grade=<?php echo stripslashes($donnees['codegrade']); ?> Modifier]</td>
<td>[ajoutgrade.php?supprimer_grade=<?php echo stripslashes($donnees['codegrade']); ?> Supprimer]</td>
</tr>
<?php
}
?>
2e formulaire
<?php
include 'connexion.php';
if (isset($_GET['modifier_grade']))
{
// On protège la variable "modifier_news" pour éviter une faille SQL
$_GET['modifier_news'] = htmlspecialchars($_GET['modifier_news']);
// On récupère les infos de la news correspondante
$retour = mysql_query('SELECT * FROM grade WHERE codegrade=\'' . $_GET['modifier_grade'] . '\'');
$donnees = mysql_fetch_array($retour);
cod57
Messages postés1653Date d'inscriptiondimanche 7 septembre 2008StatutMembreDernière intervention11 septembre 201319 16 mai 2011 à 21:09
bonsoir
à premiere vue un problème d'indentation
essai ça
a++
<?php
include'connexion.php';
//vérification de la variable
//$Code=$_GET['Code'];
if(isset($_POST['TxtCode']) and isset($_POST['TxtLib']))
{
//$Code=addslashes($_GET['Code']);
$TxtCode = addslashes($_POST['TxtCode']);
$TxtLib = addslashes($_POST['TxtLib']);
// On vérifie si c'est une modification de news ou pas
if ($_GET['Code'] == 0) //Il ne teste pas Code est dans le 2e formulaire
{
// Ce n'est pas une modification, on crée une nouvelle entrée dans la table
$heure = date("y-m-d H:i:s");
mysql_query("INSERT INTO grade VALUES('" . $TxtCode . "', '" . $TxtLib . "', '" . $heure . "')");
}else{
//rien
}
}else{
// On protège la variable "code" pour éviter une faille SQL
$_GET['Code'] = addslashes($_GET['Code']);
// C'est une modification, on met juste à jour le libellé
mysql_query("UPDATE grade SET libellegrade='" . $TxtLib . "' WHERE codegrade='" . $_GET['Code'] . "'");
}
//--------------------------------------------------------
// Vérification 2 : est-ce qu'on veut supprimer un grade ?
//--------------------------------------------------------
if (isset($_GET['supprimer_grade'])) // Si on demande de supprimer un grade
{
// Alors on supprime le grade correspondante
// On protège la variable codegrade pour éviter une faille SQL
$_GET['supprimer_news'] = addslashes($_GET['supprimer_grade']);
mysql_query('DELETE FROM grade WHERE codegrade=\'' . $_GET['supprimer_grade'] . '\'');
}
?>
...
<?php
$requete=mysql_query('select codegrade,libellegrade from grade order by libellegrade');
while ($donnees = mysql_fetch_array($requete)) //on fait une boucle pour lister les grades
{
?>
<tr>
<td><?php echo stripslashes($donnees['codegrade']); ?></td>
<td><?php echo stripslashes($donnees['libellegrade']); ?></td>
<td>[view_grade.php?vieuw_grade=<?php echo stripslashes($donnees['codegrade']); ?> Consulter]</td>
<td>[update_grade.php?modifier_grade=<?php echo stripslashes($donnees['codegrade']); ?> Modifier]</td>
<td>[ajoutgrade.php?supprimer_grade=<?php echo stripslashes($donnees['codegrade']); ?> Supprimer]</td>
</tr>
<?php
}
?>
2e formulaire
<?php
include 'connexion.php';
if (isset($_GET['modifier_grade']))
{
// On protège la variable "modifier_news" pour éviter une faille SQL
$_GET['modifier_news'] = htmlspecialchars($_GET['modifier_news']);
// On récupère les infos de la news correspondante
$retour = mysql_query('SELECT * FROM grade WHERE codegrade=\'' . $_GET['modifier_grade'] . '\'');
$donnees = mysql_fetch_array($retour);
$TxtLib = stripslashes($donnees['libellegrade']);
$Code =$donnees['codegrade'];
}
else
{
$TxtLib = '';
$Code = 0; // La variable vaut 0, donc on se souviendra que ce n'est pas une modification
}
?>
vbto
Messages postés27Date d'inscriptionsamedi 10 janvier 2009StatutMembreDernière intervention25 octobre 2012 17 mai 2011 à 12:57
salut
le problème c'est qu'il ne teste pas cette condition:
if ($_GET['Code'] == 0)
le Code est dans le 2e formulaire.L'enregistrement et la suppression marchent mais j'ai les soucis pour la modification.
si Code est différent de 0 là il peut exécuter le script de modification.
aidez moi s'il vous plaît.