Forum de discussion et d'aide au php
Vous n'êtes pas identifié.
|
Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides. FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans. Proposez vos news : si vous avez un evenement à annoncer le chat : venez discuter de php. |
||
ui voici la premiere erreur qui s'affiche
Parse error: parse error, unexpected T_LOGICAL_AND in /home/httpd/vhosts/macasserole.com/httpdocs/noname/liste_news.php on line 19
Hors ligne
je viens de modifier le AND par && et voici le nouveau message d'erreur
Parse error: parse error, unexpected T_BOOLEAN_AND in /home/httpd/vhosts/macasserole.com/httpdocs/noname/liste_news.php on line 19
Hors ligne
bon je viens de supprimer une parenthèse qui etait de trop, j'ai passé à la ligne une accolade et ca me renvoi ca :
Parse error: parse error, unexpected '{' in /home/httpd/vhosts/macasserole.com/httpdocs/noname/liste_news.php on line 20
Hors ligne
dans ce genre de cas, ca serait sympa que tu précise quelles sont les lignes 19 et 20
)
tu a, apparemment, un { qui n'a rien à faire la ou il est (sans doute apres un if dont les parentheses ne sont pas toutes fermées)
Hors ligne
bon pour les messages précédent c reglé
mais voici le nouveau qui me laisse plus emmer...
Warning: Cannot modify header information - headers already sent by (output started at /home/httpd/vhosts/macasserole.com/httpdocs/noname/liste_news.php:12) in /home/httpd/vhosts/macasserole.com/httpdocs/noname/liste_news.php on line 21
Hors ligne
eh bien, j'ai de la chance moi, des que j'écris un article, il est utilisé
la fonction header
tu verra que la fonction header() doit etre utilisée avant tout code envoyé au serveur (et tu verra pourquoi)
Hors ligne
oui c vrai, pardonnez mon étourderie
donc voici le code
<?
//-----------------------------------------------------
// Vérification 1 : est-ce que les champs sont pleins ?
//-----------------------------------------------------
19...... if(empty($_POST['titre']) && empty($_POST['contenu']))
20...... {
21..... header('location: rediger_news.php');
22..... exit();
23..... }
Hors ligne
oui mais dans ce cas comment faire pour rediriger vers le formulaire ???
Hors ligne
ok c'est ce que j'avais cru comprendre je vais testé merci pour ta patience
Hors ligne
bon ben même si les champs sont vides sa éxecute ma page que je veut pas,
puis dans ma page executer si je fais supprimer la news (celle ou y as rien) voici le retour que j'ai :
Warning: Cannot modify header information - headers already sent by (output started at /home/httpd/vhosts/macasserole.com/httpdocs/noname/connexion.conf.php:8) in /home/httpd/vhosts/macasserole.com/httpdocs/noname/liste_news.php on line 8
je comprends vraiment rien
Hors ligne
bon ben ca marche sauf que maintenant je ne peus plus valider ou supprimer une news, voici le code que j'ai mis sur ma page
<?
//-----------------------------------------------------
// Vérification 1 : est-ce que les champs sont pleins ?
//-----------------------------------------------------
if(empty($_POST['titre']) && empty($_POST['contenu']) && ($_POST['id_news'] == 0))
{
header("Location: rediger_news.php");
exit();
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head><link rel="STYLESHEET" href="../css/macasserole.css" type="text/css">
<title>Liste des news</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<h2><a href="rediger_news.php">Ajouter une news</a></h2>
<?
//-----------------------------------------------------
// Vérification 2 : est-ce qu'on veut poster une news ?
//-----------------------------------------------------
if (isset($_POST['titre']) AND isset($_POST['contenu']))
{
$titre = addslashes($_POST['titre']);
$contenu = addslashes($_POST['contenu']);
// On vérifie si c'est une modification de news ou pas
if ($_POST['id_news'] == 0)
{
// Ce n'est pas une modification, on crée une nouvelle entrée dans la table
mysql_query("INSERT INTO news VALUES('', '" . $titre . "', '" . $contenu . "', '" . time() . "','0')");
}
else
{
// C'est une modification, on met juste à jour le titre et le contenu
mysql_query("UPDATE news SET titre='" . $titre . "', contenu='" . $contenu . "', valide=0 WHERE id=" . $_POST['id_news']);
}
}
//--------------------------------------------------------
// Vérification 3 : est-ce qu'on veut supprimer une news ?
//--------------------------------------------------------
if (isset($_GET['supprimer_news'])) // Si on demande de supprimer une news
{
// Alors on supprime la news correspondante
mysql_query('DELETE FROM news WHERE id=' . $_GET['supprimer_news']);
}
//--------------------------------------------------------
// Vérification 4 : est-ce qu'on veut valider une news ?
//--------------------------------------------------------
if (isset($_GET['valider_news']))// Si on demande de valider une news
{
// Alors on valide la news correspondante
mysql_query('UPDATE news SET valide=1 WHERE id=' . $_GET['valider_news']);
}
?>
<table><tr>
<th>Modifier</th>
<th>Supprimer</th>
<th>Titre</th>
<th>contenu</th>
<th>valide</th>
<th>Valider</th>
<th>Date</th>
</tr>
<?
$retour = mysql_query('SELECT * FROM news ORDER BY id DESC');
while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les news
{
?>
<tr>
<td><? echo '<a href="rediger_news.php?modifier_news=' . $donnees['id'] . '">'; ?>Modifier</a></td>
<td><? echo '<a href="liste_news.php?supprimer_news=' . $donnees['id'] . '">'; ?>Supprimer</a></td>
<td><? echo stripslashes($donnees['titre']); ?></td>
<td><? echo stripslashes($donnees['contenu']); ?></td>
<td><? echo ($donnees['valide']); ?></td>
<td><? echo '<a href="liste_news.php?valider_news=' . $donnees['id'] . '">'; ?>Valider</a></td>
<td><? echo date('d/m/Y', $donnees['timestamp']); ?></td>
</tr>
<?
} // Fin de la boucle qui liste les news
?>
</table>
</body>
</html>
Hors ligne
ca me renvoi au formulaire
Hors ligne
ha oui et puis ca n'empeche pas l'enregistrement dans la base de données
j'en peut plus de cette m...
Hors ligne