Php+sql:requete update

G4uthier Messages postés 131 Statut Membre -  
G4uthier Messages postés 131 Statut Membre -
Bonjour,
voila mon code, ma requête update ne fonctionne pas : il doit y avoir une erreur avec les guillemets mais je trouve pas. :'(

voici mon code :

if(isset($_GET['modif'])){
$id_news_a_modif=$_GET['modif'];
$requete = mysql_query("SELECT * FROM news WHERE id='$id_news_a_modif'");// on recupère la news pour l 'afficher dans le formulaire
$enregistrement=mysql_fetch_array($requete);
$titre=$enregistrement['titre'];
$contenu=$enregistrement['contenu'];

if(isset($_POST['modifier'])){
$titre=$_POST['titre'];
$contenu=$_POST['contenu'];
//on met à jour la news dans la table
$modification=mysql_query("UPDATE news SET titre='$titre', contenu='$contenu' WHERE id='$id_news_a_modif'");

}
// ce formulaire sert à la modification
echo"<form method='post' action='{$_SERVER['PHP_SELF']}'>
<h2>Ajout d'une news</h2>
<em>entrez le titre de votre news: </em><input type='text' name='titre' size='50' value=$titre><br><br>
<em>entrez le contenu de votre news: </em><p><textarea name='contenu' cols='80' rows='16'>";
echo $contenu;//on affiche le contenu à modifier
echo"
</textarea></p>
<input type='submit' class='button' name='modifier' value='Modifier la news'>
</form>";

merci :)
Configuration: Windows XP
Firefox 2.0.0.12

8 réponses

  1. ashelia
     
    essaie :

    $modification=mysql_query('UPDATE news SET titre=" ' .$titre.'", contenu=" '.$contenu.' " WHERE id=" '.$id_news_a_modif.' " ');
    3
  2. G4uthier Messages postés 131 Statut Membre 7
     
    je vais regardé ca demain à tête reposé merci pour vos conseils . j'arrete pour ce soir
    2
  3. G4uthier Messages postés 131 Statut Membre 7
     
    oui je crosi que c'est ca mais c'est mon algo qui doit pas fonctionner mon second isset n'est jamais activé je crois.
    Quelqu un a une solution?
    1
  4. ashelia
     
    if(isset($_GET['modif'])) {

    c'est volontaire de ne pas fermer l'acolade?
    1
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. G4uthier Messages postés 131 Statut Membre 7
     
    oui c est un bout du code voici le code complet:

    <?php
    include("configuration_sql.php");
    // on regarde si l'on veut modifier la news(grace à l'URL)
    if(isset($_GET['modif'])){
    $id_news_a_modif=$_GET['modif'];
    $requete = mysql_query("SELECT * FROM news WHERE id='$id_news_a_modif'");// on recupère la news pour l 'afficher dans le formulaire
    $enregistrement=mysql_fetch_array($requete);
    $titre=$enregistrement['titre'];
    $contenu=$enregistrement['contenu'];

    if(isset($_POST['modifier'])){
    echo"dzjsbjclkscnsnvjknwj";
    $titre=$_POST['titre'];
    $contenu=$_POST['contenu'];
    echo $contenu;
    //on met à jour la news dans la table
    $modification=mysql_query('UPDATE news SET titre=" ' .$titre.'", contenu=" '.$contenu.' " WHERE id=" '.$id_news_a_modif.' " ');
    }

    // ce formulaire sert à la modification
    echo"<form method='post' action='{$_SERVER['PHP_SELF']}'>
    <h2>Ajout d'une news</h2>
    <em>entrez le titre de votre news: </em><input type='text' name='titre' size='50' value=$titre><br><br>
    <em>entrez le contenu de votre news: </em><p><textarea name='contenu' cols='80' rows='16'>";
    echo $contenu;//on affiche le contenu à modifier
    echo"
    </textarea></p>
    <input type='submit' class='button' name='modifier' value='Modifier la news'>
    </form>";

    echo"<a href=zone_admin.php>Retour au menu administration</a>";

    }else{
    //sinon on veut l'ajouter
    if(isset($_POST['ajout'])){
    $date=time();
    $titre=$_POST['titre'];
    $contenu=$_POST['contenu'];
    $requete = mysql_query("insert into news values('','". $titre . "','". $contenu . "','" . $date . "')");

    }
    // ce formulaire sert à l'ajout
    echo"<form method='post' action='{$_SERVER['PHP_SELF']}'>
    <h2>Ajout d'une news</h2>
    <em>entrez le titre de votre news: </em><input type='text' name='titre' size='50'><br><br>
    <em>entrez le contenu de votre news: </em><p><textarea name='contenu' cols='80' rows='16'></textarea></p>
    <input type='submit' class='button' name='ajout' value='Ajouter la news'>
    </form>";

    echo"<a href=zone_admin.php>Retour au menu administration</a>";
    }
    ?>
    1
  7. ashelia
     
    essaies ca :
    <?php
    include("configuration_sql.php");
    // on regarde si l'on veut modifier la news(grace à l'URL)
    if(isset($_GET['modif']))
    {
    $id_news_a_modif=$_GET['modif'];
    $requete = mysql_query('SELECT * FROM news WHERE id="'.$id_news_a_modif.'"');// on recupère la news pour l 'afficher dans le formulaire
    $enregistrement=mysql_fetch_array($requete);
    $titre=$enregistrement['titre'];
    $contenu=$enregistrement['contenu'];

    if(isset($_POST['modifier'])){
    echo"dzjsbjclkscnsnvjknwj";
    $titre=$_POST['titre'];
    $contenu=$_POST['contenu'];
    echo $contenu;
    //on met à jour la news dans la table
    $modification=mysql_query('UPDATE news SET titre="'.$titre.'", contenu="'.$contenu.'" WHERE id="'.$id_news_a_modif.'"');
    }

    // ce formulaire sert à la modification
    echo"<form method='post' action='{$_SERVER['PHP_SELF']}'>
    <h2>Ajout d'une news</h2>
    <em>entrez le titre de votre news: </em><input type='text' name='titre' size='50' value=$titre><br><br>
    <em>entrez le contenu de votre news: </em><p><textarea name='contenu' cols='80' rows='16'>";
    echo $contenu;//on affiche le contenu à modifier
    echo"
    </textarea></p>
    <input type='submit' class='button' name='modifier' value='Modifier la news'>
    </form>";

    echo"<a href=zone_admin.php>Retour au menu administration</a>";

    }
    else
    {
    //sinon on veut l'ajouter
    $date=time();
    $titre=$_POST['titre'];
    $contenu=$_POST['contenu'];
    $requete = mysql_query("insert into news values('','". $titre . "','". $contenu . "','" . $date . "')");

    // ce formulaire sert à l'ajout
    echo"<form method='post' action='{$_SERVER['PHP_SELF']}'>
    <h2>Ajout d'une news</h2>
    <em>entrez le titre de votre news: </em><input type='text' name='titre' size='50'><br><br>
    <em>entrez le contenu de votre news: </em><p><textarea name='contenu' cols='80' rows='16'></textarea></p>
    <input type='submit' class='button' name='ajout' value='Ajouter la news'>
    </form>";

    echo"<a href=zone_admin.php>Retour au menu administration</a>";
    }
    ?>
    1
  8. le père
     
    Bonjour

    Ton second isset n'est pas activé parcequ'il est à l'intérieur du premier : il te manque une }

    Tes guillemets sonts corrects SAUF que comme 99% des gens tu ne protèges pas tes champs contres les apostrophes. Les gens ont le droit de mettre de ' et des " dans tes news, et là ta requête échouera à coup sûr :

    $modification=mysql_query("UPDATE news SET titre=''.mysql_real_escape_string($titre)."', contenu='".mysql_real_escape_string($contenu)."' WHERE id='".mysql_real_escape_string($id_news_a_modif)."'");
    1
  9. ashelia
     
    Normalement j'ai modifié le problème de l'accolade...
    Il ne te reste plus qu'à suivre les conseils du père ;)
    a+
    1