Script de modification d'une news
darkchristophetd
Messages postés
1100
Date d'inscription
Statut
Contributeur
Dernière intervention
-
darkchristophetd Messages postés 1100 Date d'inscription Statut Contributeur Dernière intervention -
darkchristophetd Messages postés 1100 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Dans un script de news que j'ai fait, il y a une partie modification de news :
Quand je modifie une news, il me dit qu'elle s'est bien modifiée mais aucun changement...
Pourquoi ??
merci beaucoup
Dans un script de news que j'ai fait, il y a une partie modification de news :
<?php
mysql_connect("localhost", "***", "*****");
mysql_select_db("bdd");
if(isset($_POST['categorie']) and isset($_POST['corps']))
{
$categorie = $_POST['categorie'];
$corps = $_POST['corps'];
$id = $_GET['id'];
mysql_query("UPDATE news SET corps='$corps' WHERE id = '$id'") or die("erreur requête");
echo'La news a bien été modifiée<br><br><br><center><a href="voir-news.php">Retour</a></center>';
}
else
{
?>
<center>
<form action="modifier-news.php" method="post">
<br>
<label for="categorie">Catégorie :</label> <input name="categorie" type="text" value="<?php echo $_GET['categorie']?>" id="categorie"><br><br>
<label for="corps">Contenu :</label><br>
<br>
<textarea rows="25" cols="100" id="corps" name="corps">
<?php
$id = $_GET['id'];
$reponse = mysql_query("SELECT * FROM news WHERE id='$id'");
while ($donnees = mysql_fetch_array($reponse) )
{
echo ''.$donnees['corps'].'';
}
?>
</textarea>
<br><br>
<input type="submit" value="Enregistrer les modifications">
</center>
</form>
<?php
}
mysql_close();
?>
Quand je modifie une news, il me dit qu'elle s'est bien modifiée mais aucun changement...
Pourquoi ??
merci beaucoup
A voir également:
- Script de modification d'une news
- Suivi de modification word - Guide
- Script vidéo youtube - Guide
- Modification dns - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
8 réponses
Ca c'est une quote qui casse les couilles... Normal, tu ne proteges pas tes requetes....
change :
en
Et de facon general, protege toujours tes requetes.... mysql_real_escape_string ajoute un backslash devant les caractere speciaux style ', " etc...
change :
$corps = $_POST['corps']; $id = $_GET['id'];
en
$corps = mysql_real_escape_string($_POST['corps']); $id = mysql_real_escape_string($_GET['id']);
Et de facon general, protege toujours tes requetes.... mysql_real_escape_string ajoute un backslash devant les caractere speciaux style ', " etc...
Bonjour,
Essai comme ca:
if(isset($_POST['categorie']) and isset($_POST['corps']))
{
$categorie = $_POST['categorie'];
$corps = $_POST['corps'];
$id = $_GET['id'];
$query = "UPDATE news SET corps='$corps' WHERE id = '$id'";
$result = mysql_query($query);
if (!$result) {
die('Requête invalide : ' . mysql_error());
echo $query;
}
echo'La news a bien été modifiée<br><br><br><center><a href="voir-news.php">Retour</a></center>';
}
Tu peux aussi ajouter des echo $corps et echo $id pour verifier que tes variables sont correctes.
Essai comme ca:
if(isset($_POST['categorie']) and isset($_POST['corps']))
{
$categorie = $_POST['categorie'];
$corps = $_POST['corps'];
$id = $_GET['id'];
$query = "UPDATE news SET corps='$corps' WHERE id = '$id'";
$result = mysql_query($query);
if (!$result) {
die('Requête invalide : ' . mysql_error());
echo $query;
}
echo'La news a bien été modifiée<br><br><br><center><a href="voir-news.php">Retour</a></center>';
}
Tu peux aussi ajouter des echo $corps et echo $id pour verifier que tes variables sont correctes.
salut !
même en appliquant un mysql_real_escape_string($var) à toutes mes variables, ça ne marche pas :(
même en appliquant un mysql_real_escape_string($var) à toutes mes variables, ça ne marche pas :(
Merci stef60
mais même avec ce code, ça ne marche pas
et ces variables sont correctes vu qu'elle s'affichent dans des zones de textes...
mais même avec ce code, ça ne marche pas
et ces variables sont correctes vu qu'elle s'affichent dans des zones de textes...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dark...
Tu le recupere d'ou l'id oO???
Lorsque tu envoi tes modif il n'y a ni input hidden en GET, ni variable id transmis dans l'url.... Comment tu l'envoi ?
Tu le recupere d'ou l'id oO???
Lorsque tu envoi tes modif il n'y a ni input hidden en GET, ni variable id transmis dans l'url.... Comment tu l'envoi ?
ben enfait, depuis la page daccueil des news, je fais un lien vers la page de modif comme-ceci :
mais la variable $id marche (je l'ai testée)
<a href="modif-news.php?id=<?php echo $donnees['echo']?>....."">Modifier</a>
mais la variable $id marche (je l'ai testée)
tu as raison elle n'existe plus !!
je peut faire comment alors ?
je peut faire comment alors ?
Deja tu rajoutes les mysql_real_escape_string pour toutes les variables utilises dans ta requete.
Ensuite je te propose de l'envoyer en POST ca fera plus jolie et tu as deja des donnes en post...
Donc rajoute, juste apres le textarea :
PS : Ce jonglage php/html n'est vraiment pas evident. Essaye de n'ecrire que du php qui generera du html.
Spas vital mais c'est plus propre.
Vala.
Edit :
Ah et oublie pas de changer le GET['id'] en POST['id'] dans ton premier if du coup !
Ensuite je te propose de l'envoyer en POST ca fera plus jolie et tu as deja des donnes en post...
Donc rajoute, juste apres le textarea :
<?php $id = $_GET['id']; ?> <input type='hidden' name='id' value='<?php echo $id ?>'>
PS : Ce jonglage php/html n'est vraiment pas evident. Essaye de n'ecrire que du php qui generera du html.
Spas vital mais c'est plus propre.
Vala.
Edit :
Ah et oublie pas de changer le GET['id'] en POST['id'] dans ton premier if du coup !