Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
933 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  probleme pour modifier mes news

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

probleme pour modifier mes news

n°1011377
wydook
Posté le 13-03-2005 à 18:29:02  profilanswer
 

Bonjour a tous.
je peut supprimer, mais pas modifier. Pourtant sur les autres formulaires ca fonctionne bien.
 
J'ai donc cette page liste_news.php avec mes bouton pour supprimer (qui marche bien lui) , et celui pour modifier (qui m'amene sur la page rediger_news.php).
 
voici donc ce que j'ai fait dans mon fichier liste_news.php
 

Code :
  1. <?
  2. mysql_connect("*****", "*****", "*******" );
  3. mysql_select_db("*******" );
  4. //-----------------------------------------------------
  5. // Vérification 1 : est-ce qu'on veut poster une news ?
  6. //-----------------------------------------------------
  7. if (isset($_POST['auteur']) || !isset($_POST['titre']) || !isset($_POST['news'])  )
  8. {
  9. $nom = addslashes($_POST['auteur']);
  10.     $date = addslashes($_POST['titre']);
  11.     $pseudo = addslashes($_POST['news']);
  12.  
  13.      
  14.        
  15.     // On vérifie si c'est une modification de news ou pas
  16.     if ($_POST['id'] == 0)
  17.     {
  18.         // Ce n'est pas une modification, on crée une nouvelle entrée dans la table
  19.         mysql_query("INSERT INTO news VALUES('', '" . $auteur . "', '" . $titre . "', '". $verif ."' , '" . $news . "' )" );
  20.     }
  21.     else
  22.     {
  23.         // C'est une modification, on met juste à jour le titre et le contenu
  24.         mysql_query("UPDATE news SET verif='". $verif ."', auteur='" . $auteur . "', texte_news='" . $texte_news . "', pseudo='" . $pseudo . "' WHERE id=" . $_POST['id']);
  25.     }
  26. }
  27. //--------------------------------------------------------
  28. // Vérification 2 : est-ce qu'on veut supprimer une news ?
  29. //--------------------------------------------------------
  30. if (isset($_GET['supprimer_news'])) // Si on demande de supprimer une news
  31. {
  32.     // Alors on supprime la news correspondante
  33.     mysql_query('DELETE FROM news WHERE id=' . $_GET['supprimer_news']);
  34. }
  35. ?>
  36.           </div>
  37.           <div align="center">
  38.             <table width="682" border="1" align="center">
  39.               <tr>
  40.                 <th width="115">Auteur</th>
  41.                 <th width="115">Date</th>
  42.                 <th width="147">verif</th>
  43.                 <th width="176">Modifier</th>
  44.                 <th width="95">Supprimer<br /> <font color="#FF0000" size="2">(Attention:
  45.                   Op&eacute;ration irr&eacute;versible !!!) </font> </th>
  46.               </tr>
  47.               <?
  48. $retour = mysql_query('SELECT * FROM news ORDER BY id DESC');
  49. while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les news
  50. {
  51. ?>
  52.               <tr>
  53.                 <td><? echo stripslashes($donnees['auteur']); ?></td>
  54.                 <td><? echo stripslashes($donnees['date']); ?></td>
  55.                 <td><? echo stripslashes($donnees['verif']); ?></td>
  56.                 <td><? echo '<a href="rediger_news.php?modifier_news=' . $donnees['id'] . '">'; ?>Modifier</td>
  57.                 <td><? echo '<a href="liste_news.php?supprimer_news=' . $donnees['id'] . '">'; ?>Supprimer</td>
  58.               </tr>
  59.               <?
  60. } // Fin de la boucle qui liste les news
  61. ?>

 
 
 
 
 
et voici mon fichier rediger_news.php
 

Code :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
  3.     <head>
  4.         <title>Rédiger une news</title>
  5.         <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  6.         <style type="text/css">
  7.         h3, form
  8.         {
  9.             text-align:center;
  10.         }
  11.         </style>
  12.     </head>
  13.    
  14.     <body>
  15. <h3><a href="liste_news.php">Retour à la liste des news</a></h3>
  16. <?
  17. mysql_connect ('*****', '*****', '******');
  18.     mysql_select_db('******');
  19. if (isset($_GET['modifier_news'])) // Si on demande de modifier une news
  20. {
  21.     // On récupère les infos de la correspondante
  22.     $retour = mysql_query('SELECT * FROM news WHERE id=' . $_GET['modifier_news']);
  23.     $donnees = mysql_fetch_array($retour);
  24.    
  25.     // On place le titre et le contenu dans des variables simples
  26.     $titre = $donnees['titre'];
  27. $verif = $donnees['verif'];
  28.     $texte_news = $donnees['texte_news'];
  29.     $id = $donnees['id']; // Cette variable va servir pour se souvenir que c'est une modification
  30. }
  31. else // C'est qu'on rédige une nouvelle news
  32. {
  33.     // Les variables $titre et $texte_news sont vides, puisque c'est une nouvelle news
  34.     $titre = '';
  35.     $texte_news = '';
  36.     $id = 0; // La variable vaut 0, donc on se souviendra que ce n'est pas une modification
  37. }
  38. ?>
  39. <form action="liste_news.php" method="post">
  40.   <p>Titre :
  41.     <input type="text" size="30" name="titre" value="<? echo $titre; ?>" />
  42.   </p>
  43.   <p>Pour mettre cette news en ligne, changer la valeur 0, par 1 et cliquez en
  44.     bas sur envoyer<br />
  45.     <input type="text" size="30" name="verif" value="<? echo $verif; ?>" />
  46.   </p>
  47. <p>
  48.     Contenu :<br />
  49.     <textarea name="texte_news" cols="50" rows="10">
  50.     <? echo $texte_news; ?>
  51.     </textarea><br />
  52.    
  53.     <input type="hidden" name="id" value="<? echo $id; ?>" />
  54.     <input type="submit" value="Envoyer" />
  55. </p>
  56. </form>
  57. </body>
  58. </html>


Message édité par wydook le 14-03-2005 à 11:23:46
mood
Publicité
Posté le 13-03-2005 à 18:29:02  profilanswer
 

n°1011382
GaSPaRD77
Posté le 13-03-2005 à 18:34:53  profilanswer
 

Et on peut savoir ce que tu peux supprimer mais pas modifier ??

n°1011437
wydook
Posté le 13-03-2005 à 19:05:54  profilanswer
 

des textes

n°1011722
Xav_
The only one...
Posté le 14-03-2005 à 08:53:01  profilanswer
 

dans ton script, tu peux rajouter un echo de ta requete de modif pour voir si elle est bien formatée ?


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°1011848
wydook
Posté le 14-03-2005 à 11:16:43  profilanswer
 

entre temps j'ai un peut avancé , mais j'ai toujours le meme probleme.
 
J'ai donc ma page liste_news.php ou j'ai le titre de chaque news qui s'affiche , avec juste a coté de chaque titre un bouton modifier er supprimer. Quand je clique sur supprimer ca supprime bien la news.
 Quand je clique sur modifier, ca m'envoit sur la page rediger_news.php, dans cette page , je peut donc modifier ma news. Je clique ensuite sur envoie pour modifier la news, ce qui me ramene sur ma page liste_news.php, mais là rien ne se modifie.
 
je vous met donc ma requete sql
 
CREATE TABLE `news` (
  `id` int(6) NOT NULL auto_increment,
  `auteur` varchar(30) NOT NULL default '',
  `titre` text NOT NULL,
  `date` datetime NOT NULL default '0000-00-00 00:00:00',
  `texte_news` text NOT NULL,
  `verif` tinyint(4) NOT NULL default '0',
  PRIMARY KEY  (`id`)
) TYPE=MyISAM AUTO_INCREMENT=65 ;

 
 
 
mon fichier liste_news.php
 

Code :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
  3.     <head>
  4.         <title>Liste des news</title>
  5.         <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  6.         <style type="text/css">
  7.         h2, th, td
  8.         {
  9.             text-align:center;
  10.         }
  11.         table
  12.         {
  13.             border-collapse:collapse;
  14.             border:2px solid black;
  15.             margin:auto;
  16.         }
  17.         th, td
  18.         {
  19.             border:1px solid black;
  20.         }
  21.         </style>
  22.     </head>
  23.    
  24.     <body>
  25. <h2><font color="#CC0000">Mod&eacute;ration des News</font></h2>
  26. <h2 align="center"><a href="http://www.meteonews-fr.com/formulaires/moderation.php"><font color="#000000" size="3">&gt;&gt;&gt;Retour
  27.   panneau de mod&eacute;ration&lt;&lt;&lt;</font></a></h2>
  28. <h2>&nbsp;</h2>
  29. <h2><a href="http://www.meteonews-fr.com/formulaires/news/insert_news.php">Ajouter
  30.   une news</a></h2>
  31. <?
  32. mysql_connect ('***', '****', '****');
  33. mysql_select_db('*****');
  34. //-----------------------------------------------------
  35. // Vérification 1 : est-ce qu'on veut poster une news ?
  36. //-----------------------------------------------------
  37. if (isset($_POST['titre']) AND isset($_POST['texte_news']) AND isset($_POST['auteur']) AND isset($_POST['date']) AND isset($_POST['verif']))
  38. {
  39.     $titre = addslashes($_POST['titre']);
  40. $date= addslashes($_POST['date']);
  41. $verif= addslashes($_POST['verif']);
  42. $auteur = addslashes($_POST['auteur']);
  43.     $texte_news = addslashes($_POST['texte_news']);
  44.     // On vérifie si c'est une modification de news ou pas
  45.     if ($_POST['id'] == 0)
  46.     {
  47.         // Ce n'est pas une modification, on crée une nouvelle entrée dans la table
  48.         mysql_query("INSERT INTO news VALUES('', '" . $titre . "', '" . $texte_news . "', '" . $verif . "', '" . $date . "',  '" . $auteur . "', '" . time() . "')" ) OR DIE(mysql_error());
  49.     }
  50.     else
  51.     {
  52.         // C'est une modification, on met juste à jour le titre et le contenu
  53.         mysql_query("UPDATE news SET titre='" . $titre . "', texte_news='" . $texte_news . "', auteur='" . $auteur . "', date='" . $date . "', verif='" . $verif . "' WHERE id=" . $_POST['id']) OR DIE(mysql_error());
  54.     }
  55. }
  56. //--------------------------------------------------------
  57. // Vérification 2 : est-ce qu'on veut supprimer une news ?
  58. //--------------------------------------------------------
  59. if (isset($_GET['supprimer_news'])) // Si on demande de supprimer une news
  60. {
  61.     // Alors on supprime la news correspondante
  62.     mysql_query('DELETE FROM news WHERE id=' . $_GET['supprimer_news']) OR DIE(mysql_error());
  63. }
  64. ?>
  65. <div align="center">
  66.   <table width="835">
  67.     <tr>
  68.       <th width="256">texte</th>
  69.       <th width="256">Titre</th>
  70.       <th width="151">Modifier</th>
  71.       <th width="144">Supprimer<br /> <font color="#FF0000" size="2">(Attention:
  72.         Op&eacute;ration irr&eacute;versible !!!) </font></th>
  73.     </tr>
  74.     <?
  75. $retour = mysql_query('SELECT * FROM news ORDER BY id DESC') OR DIE(mysql_error());
  76. while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les news
  77. {
  78. ?>
  79.     <tr>
  80.       <td><? echo stripslashes($donnees['texte_news']); ?></td>
  81.       <td><? echo stripslashes($donnees['titre']); ?></td>
  82.       <td><? echo '<a href="rediger_news.php?modifier_news=' . $donnees['id'] . '">'; ?>Modifier</a></td>
  83.       <td><? echo '<a href="liste_news.php?supprimer_news=' . $donnees['id'] . '">'; ?>Supprimer</a></td>
  84.     </tr>
  85.     <?
  86. } // Fin de la boucle qui liste les news
  87. ?>
  88.   </table>
  89. <p>&nbsp;</p></div>
  90. </body>
  91. </html>


 
 
 
et mon fichier rediger_news.php
 

Code :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
  3.     <head>
  4.         <title>Rédiger une news</title>
  5.         <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  6.         <style type="text/css">
  7.         h3, form
  8.         {
  9.             text-align:center;
  10.         }
  11.         </style>
  12.     </head>
  13.    
  14.     <body>
  15. <h3><a href="liste_news.php">Retour à la liste des news</a></h3>
  16. <?
  17. mysql_connect ('***', '***', '***');
  18.     mysql_select_db('***');
  19. if (isset($_GET['modifier_news'])) // Si on demande de modifier une news
  20. {
  21.     // On récupère les infos de la correspondante
  22.     $retour = mysql_query('SELECT * FROM news WHERE id=' . $_GET['modifier_news'])OR DIE(mysql_error());
  23.     $donnees = mysql_fetch_array($retour);
  24.    
  25.     // On place le titre et le contenu dans des variables simples
  26.  
  27.     $titre = $donnees['titre'];
  28.     $auteur = $donnees['auteur'];
  29.     $date = $donnees['date'];
  30.     $verif = $donnees['verif'];
  31.      $texte_news = $donnees['texte_news'];
  32.     $id_news = $donnees['id'];
  33. }
  34. else // C'est qu'on rédige une nouvelle news
  35. {
  36.     // Les variables $titre et $texte_news sont vides, puisque c'est une nouvelle news
  37.    
  38.     $date = '';
  39.     $verif = '';
  40.     $auteur = '';
  41.     $titre = '';
  42.     $texte_news = '';
  43.     $id_news = 0; // La variable vaut 0, donc on se souviendra que ce n'est pas une modification
  44. }
  45. ?>
  46. <form action="liste_news.php" method="post">
  47.   <p>Auteur :
  48.     <input type="text" size="30" name="titre" value="<? echo $titre; ?>" />
  49.   </p>
  50.   <p>
  51.     <input type="text" size="30" name="titre2" value="<? echo $date; ?>" />
  52.   </p>
  53.   <p>
  54.     <input type="text" size="30" name="titre3" value="<? echo $auteur; ?>" />
  55.   </p>
  56.   <p>
  57.     <input type="text" size="30" name="titre4" value="<? echo $verif; ?>" />
  58.   </p>
  59.   <p>Pour mettre cette news en ligne, changer la valeur 0, par 1 et cliquez en
  60.     bas sur envoyer<br />
  61.   </p>
  62. <p>
  63.     Contenu :<br />
  64.     <textarea name="texte_news" cols="50" rows="10">
  65.     <? echo $texte_news; ?>
  66.     </textarea><br />
  67.    
  68.     <input type="hidden" name="id_news" value="<? echo $id_news; ?>" />
  69.     <input type="submit" value="Envoyer" />
  70. </p>
  71. </form>
  72. </body>
  73. </html>


 
 
si quelqu'un arrive a voir mon erreur, on sait jamais.
Merci


Message édité par wydook le 14-03-2005 à 11:17:20
n°1011882
soju
One shot !
Posté le 14-03-2005 à 11:40:03  profilanswer
 

dans liste_news.php tu testes par exemple $_POST['auteur'] alors que dans ton formulaire tu as 'titre3' ... etc pour les autres champs

n°1011892
wydook
Posté le 14-03-2005 à 11:43:52  profilanswer
 

j'ai mis ca alors dans rediger_news.php, mais ca change rien du tout
 

Code :
  1. <input type="text" size="30" name="$_POST['auteur']" value="<? echo $auteur; ?>" />
  2.   </p>
  3.   <p>
  4.     <input type="text" size="30" name="$_POST['date']" value="<? echo $date; ?>" />
  5.   </p>
  6.   <p>
  7.     <input type="text" size="30" name="$_POST['titre']" value="<? echo $titre; ?>" />
  8.   </p>
  9.   <p>
  10.     <input type="text" size="30" name="$_POST['verif']" value="<? echo $verif; ?>" />
  11.   </p>

n°1011908
Xav_
The only one...
Posté le 14-03-2005 à 11:53:47  profilanswer
 

c'est quoi ce mélange de PHP et HTML ?
en HTML tu nomme tes variables comme ça:
name="$_POST['auteur']" --> spa bien


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°1011912
soju
One shot !
Posté le 14-03-2005 à 11:55:25  profilanswer
 

Xav_ a écrit :

name="$_POST['auteur']" --> spa bien


oui lol, bizarre la syntaxe

n°1011917
wydook
Posté le 14-03-2005 à 11:59:23  profilanswer
 

donc j'ai remis comme avant, titre, titre1 etc..


Message édité par wydook le 14-03-2005 à 11:59:57
mood
Publicité
Posté le 14-03-2005 à 11:59:23  profilanswer
 

n°1011923
soju
One shot !
Posté le 14-03-2005 à 12:03:12  profilanswer
 

wydook a écrit :

donc j'ai remis comme avant, titre, titre1 etc..


pourquoi ?? il suffit juste de mettre par exemple :

Code :
  1. <input type="text" size="30" name="date" value="<? echo $date; ?>" />


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  probleme pour modifier mes news

 

Sujets relatifs
Probleme de lienProbleme de tableau avec des include
Modifier les bordures d'un tableau PHP (débutant inside)[C] Probleme nombres aléatoires tous differents
[resolu] Probleme ASP/FREE sur un album de photosPlusieurs problème en css
Problème de LoadLibrary (erreur 2)Editer et modifier un .class
probleme de fonction[MSSQL]Problème pour requete et connexion à une base MSSQL
Plus de sujets relatifs à : probleme pour modifier mes news


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR