J'ai suivis le tuto concernant la gestion de news. [u]**J'obtiens ceci : **[/u] Notice: Undefined variable: titre in C:\Program Files\wamp\www\grafikart_news\admin\rediger_news.php on line 6 Notice: Undefined variable: contenu in C:\Program Files\wamp\www\grafikart_news\admin\rediger_news.php on line 6 ** [u]Et voici mon code : **[/u] [code]<?php mysql_connect("localhost","root","");
mysql_select_db("news");

extract($_POST);
$sql = "INSERT INTO news (titre,contenu) VALUES ('$titre','$contenu')";
$req = mysql_query($sql) or die(mysql_error());

?>

Rédiger une news :

<form action="rediger_news.php" method="post">
<p>Titre :
<input type="text" size="30" name="titre" class="titre">
</p>
<p>
<script>edToolbar('contenu'); </script>
<textarea name="contenu" id="contenu" class="ed"></textarea>
</p>
<p>
<input type="submit" value="Envoyer"><br>
<br>
<a href="liste_news.php">Retour à liste des news</a>
</p>
</form>

[/code] D'après ce que j'ai lu, et d'après mes connaissance il faudrai que je fasse un if(isset($_POST)) mais ensuite je ne sais pas.

4 réponses


mespeche
Réponse acceptée

Oui je sais c'est ce que je t'ai mis xD. A partir de ta ligne 6 tu mets ce que j'ai mis. et à la place des ... tu met ton script. Sa vérifie que tes champs sont remplis avant de faire le traitement en fait car la sa essaye de trouver tes variables directement alors que tu ne les a pas encore envoyé.

Ça donne sa du coup :

<?php
    mysql_connect("localhost","root","");
    mysql_select_db("news");

    extract($_POST);
        if(isset($titre) && isset($contenu) && !empty($titre) && !empty($contenu)){
        $sql = "INSERT INTO news (titre,contenu) VALUES ('$titre','$contenu')";
        $req = mysql_query($sql) or die(mysql_error());
        }
?>
<div class="red_head">Rédiger une news :</div>
<div class="red_body">
<form action="rediger_news.php" method="post">
<p>Titre : 
<input type="text" size="30" name="titre" class="titre"/>
</p>
  <p> 
    <script>edToolbar('contenu'); </script>
    <textarea name="contenu" id="contenu" class="ed"></textarea>
  </p>
  <p>
   <input type="submit" value="Envoyer" /><br />
   <br />
   <a href="liste_news.php">Retour à liste des news</a>
  </p></div>
 <div class="red_footer"></div>

Si tu veux que ton ajout se lance, met sa :

mysql_query($sql) or die(mysql_error());

au lieu de ça :

$req = mysql_query($sql) or die(mysql_error());
extract($_POST);
if(isset($titre) && isset($contenu) && !empty($titre) && !empty($contenu)){
    ...
    ...
}

(C'est !empty et pas !emptyempty, le formulaire bugue)

Voila ;)

marrtin
Auteur

euh je comprend pas ce que tu écrit ... ^^"
Moi c'est au moment de rédiger la news j'ai les erreurs undefined variable et ensuite mon formulaire en dessous.

marrtin
Auteur

Ok merci, j'essaye ça alors et je tiens au courant ^^