le 24/02/2012 à 17:17
News
Bonjour,
j'ai suivi le tutoriel pour créer des news qui m'a vraiment était utile seul problème lors de l'ajout de news sa me met Les variables nécessaires au script ne sont pas définies. alors quel sont toutes définies voici mon code
j'ai suivi le tutoriel pour créer des news qui m'a vraiment était utile seul problème lors de l'ajout de news sa me met Les variables nécessaires au script ne sont pas définies. alors quel sont toutes définies voici mon code
<?php
// on teste si le formulaire a été validé
if (isset($_POST['go']) && $_POST['go']=='Poster la news') {
// on se connecte à notre base
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db('dna', $base);
// on teste la déclaration de nos variables
if (!isset($_POST['auteur']) || !isset($_POST['titre']) || !isset($_POST['Fansub']) || !isset($_POST['Genre']) || !isset($_POST['Note']) || !isset($_POST['Liens']) || !isset($_POST['news'])) {
$erreur = 'Les variables nécessaires au script ne sont pas définies.';
}
else {
if (empty($_POST['auteur']) || empty($_POST['titre']) || !isset($_POST['Fansub']) || !isset($_POST['Genre']) || !isset($_POST['Note']) || !isset($_POST['Liens']) || empty($_POST['news'])) {
$erreur = 'Au moins un des champs est vide.';
}
// si tout est bon, on peut commencer l'insertion dans la base
else {
// lancement de la requête d'insertion
$sql = 'INSERT INTO news VALUES("", "'.mysql_escape_string($_POST['auteur']).'", "'.mysql_escape_string($_POST['titre']).'", "'.mysql_escape_string($_POST['Fansub']).'", "'.mysql_escape_string($_POST['Genre']).'", "'.mysql_escape_string($_POST['Note']).'", "'.mysql_escape_string($_POST['Liens']).'", "'.date("Y-m-d H:i:s").'", "'.mysql_escape_string($_POST['news']).'")';
// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
// on ferme la connexion à la base de données
mysql_close();
// on redirige vers la page d'accueil du site (attention, cette redirection ne fonctionne qui si vous avez placé cette page dans un répertoire à partir de la racine du site). Si ce n'est pas le cas, veuillez entrer ici le bon chemin d'accès afin de retomber sur la page d'accueil du site.
header('Location: ../index.php');
// on termine le script courant
exit();
}
}
}
?>
<form action="insert_news.php" method="post">
<table>
<tr><td>
<span class="gras">Auteur :</span>
</td><td>
<input type="text" name="auteur" maxlength="30" size="50" value="<?php if (isset($_POST['auteur'])) echo htmlentities(trim($_POST['auteur'])); ?>">
</td></tr><tr><td>
<span class="gras">Titre :</span>
</td><td>
<input type="text" name="titre" maxlength="50" size="50" value="<?php if (isset($_POST['titre'])) echo htmlentities(trim($_POST['titre'])); ?>">
</td></tr><tr><td>
<span class="gras">Fansub :</span>
</td><td>
<input type="text" name="auteur" maxlength="30" size="50" value="<?php if (isset($_POST['Fansub'])) echo htmlentities(trim($_POST['Fansub'])); ?>">
</td></tr><tr><td>
<span class="gras">Genre :</span>
</td><td>
<input type="text" name="auteur" maxlength="30" size="50" value="<?php if (isset($_POST['Genre'])) echo htmlentities(trim($_POST['Genre'])); ?>">
</td></tr><tr><td>
<span class="gras">Note :</span>
</td><td>
<input type="text" name="auteur" maxlength="30" size="50" value="<?php if (isset($_POST['Note'])) echo htmlentities(trim($_POST['Note'])); ?>">
</td></tr><tr><td>
<span class="gras">Liens :</span>
</td><td>
<textarea name="news" cols="50" rows="10"><?php if (isset($_POST['Liens'])) echo htmlentities(trim($_POST['Liens'])); ?></textarea>
</td></tr><tr><td align="right">
<span class="gras">Synopsis :</span>
</td><td>
<textarea name="news" cols="50" rows="10"><?php if (isset($_POST['news'])) echo htmlentities(trim($_POST['news'])); ?></textarea>
</td></tr><tr><td><td align="right">
<input type="submit" name="go" value="Poster la news">
</td></tr></table>
</form>