Vous n'êtes pas identifié(e).
Pages :: 1
Bonjour,
J'ai un formulaire "gestion news" qui s'affiche, mais en appuyant sur le bouton "modifier news" ou "supprimer news", le bouton "est mort"
Pour tester, jai mis un écho aprus mes cases modifier et supprimer, il ne me renvoie rien, aucun écho.
Quelqu'un peut-il m'aiguiller, svp merci
if (!($r_sql = mysql_query($sql))) $chaine_html .= "CODE
ERREUR 00004 :: Impossible de supprimer la news.
<br/>Cliquez <a href=\"javascript:history.back();\">
ici</a> pour retourner à la page de Gestion des
News.<br/>";
else
{
$chaine_html = "Votre news a bien été supprimée.<br/>
Cliquez <a href=\"index.php\">ici</a> pour vous rendre
en index de l'interface d'administration.";
}
}
else $chaine_html .= "CODE ERREUR 0003 :: Des variables
sont manquantes.<br/>
Cliquez <a href=\"gestionNews.php\">ici</a> pour
retourner sur la page de Gestion des News.";
break;
default : break;
}
}
Dernière modification par zizanie (02-07-2010 11:15:36)
Hors ligne
je l'avais fait aussi, aucune réponse merci
Hors ligne
Salut,
print_r ($_POST);
avant le "switch", tu verras bien ce que tu récupère du formulaire...
A+
Promotion de PPOO : Programmation Propre Orientée Objet !!
Recommande AAO : Apéritif Avec Olives...
Glop, glop
Hors ligne
$news = new News;
$chaine_html ="";
if (!(isset($_SESSION['niveau'])) && ($_SESSION['niveau'] != 1) && !(isset($_POST['mode'])))
{
header("location : http://localhost/news/admin/index.php");
}
elseif ($_SESSION['niveau'] == 1 &&!(isset($_POST['mode'])))
{
$chaine_html = "vous êtes connectés, en tant que <i>".$_SESSION['pseudo']."</i><br/><ul id=\"menuadmin\">\n
<li><a href=\"index.php\"></a>Index</li>\n
<li><a href=\"ajouterNews.php\">Ajouter une nouvelle</a></li>\n
<li><a href=\"gestionNews.php\">Gerer les nouvelles</a></li>\n
</ul>\n";
if (!isset($_GET['page'])) $page = 0;
else $page = $_GET['page'];
$news ->listeNews($page);
$t_news = $news -> listeNews;
$s_pag = htmlpagination($news->compterNews(),"gestionNews.php");
$chaine_html =$s_pag;
$chaine = htmllisteNews($t_news);
if($chaine===false)
{$chaine_html .="code erreur Impossible de créer la liste de news";}
else $chaine_html .=$chaine;
}
elseif ($_SESSION['niveau'] == 1 && $_POST['mode']!= "")
{
switch ($_POST['mode'])
{
case "modif" :
if (isset($_POST['titre']) && isset($_POST['idpost']) && isset ($_POST['idnews']))
{
$lib = "description" .$_POST['idpost'];
$sql = "update tblnews set titre = '".$_POST['titre']."',description= '".$_POST[$lib]."' where id= ".$_POST['idnews']."";
if(!($r_sql = mysql_query($sql)))
{
$chaine_html .="je ne peux pas modifier la news<br/>
cliquez<a href=\"javascript:historyback();\">ici</a>";
}
else
{
$chaine_html = "Votre news a bien été modifiée<br/>
retournez à l'administration <a href=\"index.php\">index</a>";
}
}
else
$chaine_html .="Manque paramètres<br/>retour à gestion<a href=\"gestionNews.php\">gestion news</a>";
break;
case "suppr" :
if (isset($_POST['idnews']))
{
$sql = ("DELETE FROM tblnews WHERE id=" . $_POST['idnews']."");
if(!($r_sql = mysql_query($sql)))
{
$chaine_html="je ne peux pas supprimer la news<br/>
cliquez <a href=\"javascript:historyback();\"> ici</a>";
}
else
{
$chaine_html ="c'est bien, votre news a bien été supprimée<br/>
retournez à l'administration <a href=\"index.php\">index</a>";
}
}
else
$chaine_html .="manque paramètres<br/>< retour à gestion news<a href=\"gestionNews.php\">gestion news</a>";
break;
default : echo 'un';
break;
}
}
function htmllisteNews($t_news)
{
$nb_par_page = 3;
$tmp = "";
$description = "";
$sBasePath = "../include/FCKEditor/";
$tmp .= "<div id=\"htmlListeNews\">\n";
for ($i=0;$i<$nb_par_page;$i++)
{
if (isset($t_news[$i]['titre']))
{
$description = $t_news[$i]['description'];
$oFCKeditor = new FCKeditor('description'.$i);
$oFCKeditor->BasePath = $sBasePath;
$oFCKeditor->Height = 300;
$oFCKeditor->ToolbarSet = 'nicowebToolbar';
$oFCKeditor->Value = $description;
$s_fck = $oFCKeditor->CreateHtml();
$tmp .="
<div class=\"cadreNews\">\n
<h3>News n°".$i."</h3>
<form name=\"fgestionnews" .$i. "\" action=\"#\" method=\"post\">\n
<div class=\"ligne\">
<label for=\"titre\">Titre : </label>
<input type=\"text\" id=\"titre\" maxlength=\"250\" name=\"titre\" value= \"".$t_news[$i]['titre']."\"/>
</div>
<div class=\"ligne\">".$s_fck."</div>
<div class=\"ligneBouton\">
<label for=\"modif\">Modifier : </label>
<input type=\"button\" class=\"bouton\" name=\"modif\" value=\"modifier la news\" onClick=\"document.getElementById('mode".$i."') value='modif';
document.fgestionNews".$i." submit();\"/>
</div>
<div class=\"ligneBouton\">
<label for=\"suppr\">Supprimer : </label>
<input type=\"button\" class=\"bouton\" name=\"suppr\" value=\"supprimer la news\"
onClick=\"document.getElementById('mode".$i."') value='suppr';
document.fgestionNews".$i." submit();\"/>
</div>
<input type = \"hidden\" name=\"idpost\" value=\"".$i."\" />
<input type = \"hidden\" name=\"idnews\" value=\"".$t_news[$i]['id']."\" />
<input type = \"hidden\" name=\"mode\" id=\"mode".$i."\" value=\" \" />
</form>\n
</div>";
}
}
$tmp .= "</div>\n";
if($tmp == "") return false;
else return $tmp;
}
function htmlpagination($nb_res,$url)
{
$nb_par_page = 3;
$nb_page = (int)$nb_res/$nb_par_page;
$temp ="<div id=\"cadrePagination\">\n";
for ($i = 0; $i<$nb_page; $i++)
{
$temp .= "<a href =\"".$url."?page =".$i."\"> page".$i."</a>\n";
}
$temp.= "</div>\n";
if($temp == "") return false;
else return $temp;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title> gerer news</title>
<link rel="stylesheet" type="text/css" href="css/admin.css" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?php echo($chaine_html); ?>
</body>
</html>
Rien de neuf à l'horizon, j'ai toujours mes formulaires avec les nouvelles qui s'affichent mais impossible de supprimer ou modifier. J'ai mis le code complet de ma syntaxe de la page afficher news
Dernière modification par zizanie (02-07-2010 14:03:41)
Hors ligne
Essayes avec un empty plutôt qu'un isset.
Et comme on te l'a demandé fait un print_r() de ta variable...
Sacrebleu on débug pas avec une boule de cristal sur ce forum.
Dernière modification par xTG (02-07-2010 14:21:23)
Hors ligne
J'ai fait le print puisque j'ai répondu qu'il n'y avait rien de neuf à l'horizon....
Quant à ta solution, cela ne fonctionne pas plus
Dernière modification par zizanie (02-07-2010 16:31:54)
Hors ligne
Disons que ta réponse était loin d'être explicite... On tombe tous les jours sur des débutants qui prennent nos conseils de débug comme une perte de temps.
Et on se retrouve avec des topics de plusieurs messages alors que la réponse se trouvait être mise en relief dès le second post.
Donc je vais repasser le topic au clair.
Es-tu sûr d'arriver dans le bon if ?
Si c'est le cas on s'occupera du switch, mais en attendant je ne suis même pas sûr du fait de tes explications.
Cordialement.
Hors ligne
Bonjour,
Désolé j'ai pas le temps de regarder ton code initial en détail, enfin juste assez pour voir pas mal d'approximations, du style
$sql = "update tblnews set titre = '".$_POST['titre']."', description = '".$_POST[$lib]."' where id = ".$_POST['idnews'].""; // Code erroné
$sql = "update tblnews set titre='".$_POST['titre']."', description='".$_POST[$lib]."' where id = '".$_POST['idnews']."'"; // Code correct.
...
Je te propose au moins avant de poster ici pour un debuggage fonctionnel, que ton débuggage syntaxique soit fait.
Merci pour ta compréhension.
PS: Si tu postes pour un debbugage syntaxique, suffit de le dire, et on te proposera d'installer un editeur PHP sur ta machine.
Cordialement, Jc
POO PHP+Ajax en MVC avec PDO et Bases de données épaisses : What else?
Hors ligne
Si tu veux voir en live :
www.atelierpassion.123.fr
dans la barre google /admin/index.php
michelle
retired
tu rafraîchis la page (oui...bon je sais) et tu vas sur gestionNews.php
Je vais faire un écho aux if et aux else pour voir
Dernière modification par zizanie (02-07-2010 16:57:45)
Hors ligne
@jc je vais voir cela en détai, merci.
Hors ligne
Je pense avoir trouvé.
Tout simplement que certains codes javascript ne sont pas bon.
cf :
Il manque un point avant value, et il semble que tous tes autres lignes soient du même acabit.
En voyant cela je me dit que la variable $_POST ne contient pas de variable mode correcte et que donc tu n'as pas correctement vérifié ce que tu recevais...
Si c'est bien cela on aura un topic de plus qui rentrera dans le compte de ce que j'ai déjà cité.
Dernière modification par xTG (02-07-2010 17:18:44)
Hors ligne
EXACTLY xTG
mERCI. tU AS TROUVE juste à temps, les petits-enfants arrivent
Merci à tous;)
Hors ligne
Pages :: 1