Bonjour je vient vers vous pour essayer de me debeugué depuis ce matin y arrive pas :s donc voila mon soucis :je gere coté bo mes page dynamiquement et je soihaiterai pourvoir integré la ges tion mots clés et metas des voici mon formaulaire
<div <?php if(isset($invisible)) {echo $invisible;} ?> id="liens_gabarit">
<a href="javascript:void(0)" <?php if(isset($color[1])){echo $color[1];} ?>>Gabarit 1</a>
</div>
<form <?php if(isset($invisible)) {echo $invisible;} ?> id="form_pages" name="form_page" action="admin.php?action=<?php echo $action_form; ?>" method="POST">
<?php if(isset($avertissement)){echo $avertissement;} ?>
<select name="id_langue" <?php if(isset($color_champ['id_langue'])){echo $color_champ['id_langue'];}?>>
<option value="">Sélectionner la langue</option>
<?php if(isset($langues)){echo $langues;} ?>
</select>
<select name="id_rubrique" <?php if(isset($color_champ['id_rubrique'])){echo $color_champ['id_rubrique'];}?>>
<option value="">Sélectionner la rubrique</option>
</select>
<input type="text" name="titre_page" placeholder="Titre page" value="<?php if(isset($_POST['titre_page']))
{echo $_POST['titre_page']; }?>" <?php if (isset($color_champ['titre_page'])) {echo $color_champ['titre_page'];}?> />
<input type="text" name="titre_google" placeholder="Titre google" value="<?php if(isset($_POST['titre_google']))
{echo $_POST['titre_google']; }?>" <?php if (isset($color_champ['titre_google'])) {echo $color_champ['titre_google'];}?> />
<input type="text" name="url_rewriting" placeholder="Nom de la page dans la barre d'adresse" value="<?php if(isset($_POST['url_rewriting']))
{echo $_POST['url_rewriting']; }?>" <?php if (isset($color_champ['url_rewriting'])) {echo $color_champ['url_rewriting'];}?> />
<textarea id="des" name="meta" placeholder="Description de la page pour les moteurs de recherche"><?php if(isset($_POST['meta'])) {echo $_POST['meta']; }?></textarea>
<hr />
<div id="visible">
<label>VISIBLE</label>
Oui <input type="radio" name="visible" value="oui" <?php if(isset($checked['oui'])) {echo $checked['oui'];} ?> />
Non <input type="radio" name="visible" value="non" <?php if(isset($checked['non'])) {echo $checked['non'];} ?> />
</div>
<div id="indexation">
<label>INDEXATION (SEO)</label>
Oui <input type="radio" name="indexation" value="oui" <?php if(isset($checked2['oui'])) {echo $checked2['oui'];} ?> />
Non <input type="radio" name="indexation" value="non" <?php if(isset($checked2['non'])) {echo $checked2['non'];} ?> />
</div>
<textarea id="mc" name="liste_mots" placeholder="Mots clés, séparés par une virgule (max 1000)"><?php if(isset($_POST['liste_mots'])) {echo $_POST['liste_mots']; }?></textarea>
<hr />
<div class="gabarit" id="gabarit1">
<textarea class="ckeditor" name="zone1" placeholder="zone 1"><?php if(isset($_POST['zone1'])) {echo $_POST['zone1']; }?></textarea>
<div style="float:left;width:50%">
<textarea class="ckeditor" name="zone2" placeholder="zone 2"><?php if(isset($_POST['zone2'])) {echo $_POST['zone2']; }?></textarea>
</div>
<div style="float:left;width:50%">
<textarea class="ckeditor" name="zone3" placeholder="zone 3"><?php if(isset($_POST['zone3'])) {echo $_POST['zone3']; }?></textarea>
</div>
</div>
<hr />
<!--ce champ est caché et permet le stockage du gabarit choisi-->
<input name="gabarit" type="text" value="1" />
<hr />
<input type="submit" name="submit" value="<?php echo $bouton_form; ?>" />
</form>
<?php include($confirm_suppression); ?>
<?php echo $affichage; ?>
<script type="text/javascript">
document.form_page.id_langue.focus();
</script>
le tout paramétré via un fichier admin.php et voici le cas
case "pages":
$titre="Gestion des pages";
$contenu="form_pages.html";
$action_form="pages";
$bouton_form="CRÉER";
$confirm_suppression="vide.html";
//permet de conserver les cases cochées
if(isset($_POST['visible']))
{
$checked[$_POST['visible']]=" checked=\"checked\"";
}
else
{
$checked['oui']=" checked=\"checked\"";
}
if(isset($_POST['indexation']))
{
$checked2[$_POST['indexation']]=" checked=\"checked\"";
}
else
{
$checked2['oui']=" checked=\"checked\"";
}
//on construit la liste déroulante des langues
$requete="SELECT * FROM langues ORDER BY symbole";
$resultat=mysql_query($requete, $connexion);
$langues="";
while($ligne=mysql_fetch_object($resultat))
{
if(isset($_POST['id_langue']) && $ligne->id_langue == $_POST['id_langue'])
{
$selected[$_POST['id_langue']]=" selected=\"selected\"";
$selection=$selected[$ligne->id_langue];
}
else
{
$selection="";
}
$langues.="<option value=\"" . $ligne->id_langue . "\"" . $selection . ">" . $ligne->symbole . " - " . $ligne->pays . "</option>";
}
if(isset($_GET['id_page']))
{
$_SESSION['id_page']=$_GET['id_page'];
}
if(isset($_POST['submit']))
{
$tab_champ=array("id_langue"=>"Langue", "id_rubrique"=>"Rubrique", "titre_page"=>"Titre page", "titre_google"=>"Titre Google");
$tab_vide=array();
while(list($key, $value)=each($tab_champ))
{
if(empty($_POST[$key]))
{
$color_champ[$key]=" class=\"color_champ\"";
array_push($tab_vide, $value);
}
}
if(!empty($tab_vide))
{
$avertissement="<label id=\"avertissement\">" . champs(count($tab_vide), "debut") . implode(", ", $tab_vide) . champs(count($tab_vide), "fin") ."</label>\n";
}
else
{
if(empty($_POST['visible']))
{
$_POST['visible']="non";
}
if(empty($_POST['indexation']))
{
$_POST['indexation']="non";
}
else
{
if(empty($_POST['url_rewriting']))
{
$_POST['url_rewriting']=$_POST['titre_page'];
}
//pour éviter d'utiliser la clé primaire de la table page
//on teste que le champ url_rewriting n'existe pas déjà
$requete="SELECT * FROM pages WHERE url_rewriting='" . $_POST['url_rewriting'] . "'";
$resultat=mysql_query($requete, $connexion);
$nb=mysql_num_rows($resultat);
if($nb>0)
{
$avertissement="<label id=\"avertissement\">L'URL choisie existe déjà</label>\n";
$color_champ['url_rewriting']=" class=\"color_champ\"";
}
else
{
$gabarit = $_POST['gabarit'];
$zone1=$gabarit . "_zone1";
$zone2=$gabarit . "_zone2";
$zone3=$gabarit . "_zone3";
//parametrage d'url_rewriting
$separateur = "-";
//on stocke les chmaps dans la table "pages"
$requete2="INSERT INTO pages SET id_rubrique='" . $_POST['id_rubrique'] . "',
id_gabarit='" . $gabarit . "',
id_compte='" . $_SESSION['id_acces'] . "',
titre_page='" . $_POST['titre_page'] . "',
titre_google='" . $_POST['titre_google'] . "',
visible='" . $_POST['visible'] . "',
indexation='" . $_POST['indexation'] . "',
zone1='" . $_POST['zone1'] . "',
zone2='" . $_POST['zone2'] . "',
zone3='" . $_POST['zone3'] . "',
url_rewriting='" . format_url($_POST['url_rewriting'], $separateur) . "',
date_page='" . date("Y-m-d") . "'";
$resultat2=mysql_query($requete2, $connexion);
$_SESSION['avertissement']="<label id=\"ok\">Page créée</label>\n";
header("Location:admin.php?action=pages");
}
}
}
}
// affichage des médias présents dans le centre amovible
$requete3="SELECT * FROM medias ORDER BY fichier_media, titre_media";
$affichage_centre=afficher_medias($requete3, "centre", $connexion);
// affichage des pages dans le tableau de résultat
$requete4="SELECT r.*, p.*, l.* FROM rubriques r, pages p, langues l WHERE r.id_rubrique=p.id_rubrique AND r.id_langue=l.id_langue ORDER BY r.id_langue, p.date_page DESC";
$affichage=afficher_pages($requete4, $connexion);
break;
//----------------------------------------------------- MODIFIER PAGES -------------------------------------------------------------
case "modifier_pages":
$titre="Gestion des pages";
$contenu="form_pages.html";
$action_form="modifier_pages";
$bouton_form="MODIFIER";
$confirm_suppression="vide.html";
if(isset($_GET['id_page']))
{
$requete0="SELECT p.*, r.*, l.*
FROM pages p, rubriques r, langues l
WHERE p.id_rubrique=r.id_rubrique
AND l.id_langue=r.id_langue
AND p.id_page='" . $_GET['id_page'] . "'";
$resultat0=mysql_query($requete0, $connexion);
$ligne0=mysql_fetch_object($resultat0);
$_SESSION['id_rubrique']=$ligne0->id_rubrique;
$_POST['titre_page']=$ligne0->titre_page;
$_POST['titre_google']=$ligne0->titre_google;
$_POST['zone1']=$ligne0->zone1;
$_POST['zone2']=$ligne0->zone2;
$_POST['zone3']=$ligne0->zone3;
$_POST['url_rewriting']=$ligne0->url_rewriting;
$checked[$ligne0->visible]="checked=\"checked\"";
$checked2[$ligne0->indexation]="checked=\"checked\"";
$_SESSION['id_page']=$_GET['id_page'];
//on construit la liste déroulante des langues
$requete="SELECT * FROM langues ORDER BY symbole";
$resultat=mysql_query($requete, $connexion);
$langues="";
while($ligne=mysql_fetch_object($resultat))
{
if(isset($ligne0 -> id_langue) && $ligne->id_langue == $ligne0 -> id_langue)
{
$selected[$ligne0 -> id_langue]=" selected=\"selected\"";
$selection=$selected[$ligne->id_langue];
}
else
{
$selection="";
}
$langues.="<option value=\"" . $ligne->id_langue . "\"" . $selection . ">" . $ligne->symbole . " - " . $ligne->pays . "</option>";
}
}
//permet de conserver les cases cochées
if(isset($_POST['visible']))
{
$checked[$_POST['visible']]=" checked=\"checked\"";
}
if(isset($_POST['indexation']))
{
$checked2[$_POST['indexation']]=" checked=\"checked\"";
}
if(isset($_GET['id_page']))
{
$_SESSION['id_page']=$_GET['id_page'];
}
if(isset($_POST['submit']))
{
$tab_champ=array("id_langue"=>"Langue", "id_rubrique"=>"Rubrique", "titre_page"=>"Titre page", "titre_google"=>"Titre Google");
$tab_vide=array();
while(list($key, $value)=each($tab_champ))
{
if(empty($_POST[$key]))
{
$color_champ[$key]=" class=\"color_champ\"";
array_push($tab_vide, $value);
}
}
if(!empty($tab_vide))
{
$avertissement="<label id=\"avertissement\">" . champs(count($tab_vide), "debut") . implode(", ", $tab_vide) . champs(count($tab_vide), "fin") ."</label>\n";
}
else
{
if(empty($_POST['url_rewriting']))
{
$_POST['url_rewriting']=$_POST['titre_page'];
}
$separateur="-";
//on stocke les chmaps dans la table "pages"
$requete2="UPDATE pages SET id_compte='" . $_SESSION['id_acces'] . "',
titre_page='" . addslashes($_POST['titre_page']) . "',
titre_google='" . addslashes($_POST['titre_google']) . "',
id_rubrique='" . addslashes($_POST['id_rubrique']) . "',
visible='" . $_POST['visible'] . "',
indexation='" . $_POST['indexation'] . "',
zone1='" . $_POST['zone1'] . "',
zone2='" . $_POST['zone2'] . "',
zone3='" . $_POST['zone3'] . "',
url_rewriting='" . format_url($_POST['url_rewriting'],$separateur) . "',
date_page='" . @date("Y-m-d") . "'
WHERE id_page='" . $_SESSION['id_page'] . "'";
$resultat2=mysql_query($requete2, $connexion);
$_SESSION['avertissement']="<label id=\"ok\">Page modifiée</label>\n";
header("Location:admin.php?action=pages");
}
}
// affichage des médias présents dans le centre amovible
$requete3="SELECT * FROM medias ORDER BY fichier_media, titre_media";
$affichage_centre=afficher_medias($requete3, "centre", $connexion);
// affichage des pages dans le tableau de résultat
$requete4="SELECT r.*, p.*, l.* FROM rubriques r, pages p, langues l WHERE r.id_rubrique=p.id_rubrique AND r.id_langue=l.id_langue ORDER BY r.id_langue, p.date_page DESC";
$affichage=afficher_pages($requete4, $connexion);
break;
//----------------------------------------------------- SUPPRIMER PAGES -------------------------------------------------------------
case "supprimer_pages":
$contenu="form_pages.html";
$titre="Gestion des pages";
$confirm_suppression="confirm_suppression.html";
$action_suppression_oui="supprimer_pages&cas=2";
$action_suppression_non="pages";
$action_form="pages";
$bouton_form="CREER";
$invisible="style=\"display:none\"";
if($_GET['id_page'])
{
$_SESSION['id_page']=$_GET['id_page'];
}
//on construit la liste déroulante des langues
$requete="SELECT * FROM langues ORDER BY symbole";
$resultat=mysql_query($requete, $connexion);
$langues="";
while($ligne=mysql_fetch_object($resultat))
{
$langues.="<option value=\"" . $ligne->id_langue . "\">" . $ligne->symbole . " - " . $ligne->pays . "</option>";
}
if(isset($_GET['cas']) && $_GET['cas']==2) // si on a cliqué sur OUI
{
// permet de réafficher le formulaire
$invisible="";
$requete="DELETE FROM pages WHERE id_page='" . $_SESSION['id_page']. "'";
$resultat=mysql_query($requete, $connexion);
$confirm_suppression="vide.html";
$requete2="SELECT * FROM pages ORDER BY rang";
$resultat2=mysql_query($requete2, $connexion);
$i=1;
while($ligne2=mysql_fetch_object($resultat2))
{
$requete3="UPDATE pages SET rang='" . $i . "' WHERE id_page='" . $ligne2->id_page . "'";
$resultat3=mysql_query($requete3, $connexion);
$i++;
}
$_SESSION['avertissement']="<label id=\"ok\">Page supprimée</label>\n";
header("Location:admin.php?action=pages");
}
// affichage des médias présents dans le centre amovible
$requete3="SELECT * FROM medias ORDER BY fichier_media, titre_media";
$affichage_centre=afficher_medias($requete3, "centre", $connexion);
// affichage des pages dans le tableau de résultat
$requete4="SELECT r.*, p.*, l.* FROM rubriques r, pages p, langues l WHERE r.id_rubrique=p.id_rubrique AND r.id_langue=l.id_langue ORDER BY r.id_langue, p.date_page DESC";
$affichage=afficher_pages($requete4, $connexion);
break;
le tout raccordé a un fichier fonction.php
//=============================================
function afficher_pages($requete, $connexion)
{
$resultat=mysql_query($requete, $connexion);
$liste_pages="<table cellspacing=\"0\" class=\"tableau_resultat\">\n";// j'initialise la variable
$i=0;
while($ligne=mysql_fetch_object($resultat))
{
if($ligne->id_rubrique=="")
{
$parent="<em style=\"color:gray\">no parent</em> / ";
}
else
{
$parent=$ligne->rubrique . " / ";
}
if($ligne->indexation!="oui")
{
$index=" <a href=\"#\" title=\"page non indexée dans les moteurs de recherche\" style=\"color:red;text-decoration:none;font-weight:bold\">!</a>";
}
else
{
$index="";
}
$liste_pages.="<tr>\n";
$liste_pages.="<td style=\"text-align:left;padding-left:10px\">" . $parent . $ligne->titre_page . " " . $index . "<br />" . $ligne->url_rewriting . "</td>\n";
$liste_pages.="<td style=\"text-align:left;padding-left:10px\">" . $ligne->titre_page . "<br />" . $ligne->date_page . "</td>\n";
$liste_pages.="<td style=\"text-align:left;padding-left:10px\" class=\"cellule_gabarit\">Gabarit " . $ligne->id_gabarit . "</td>\n";
$liste_pages.="<td>visible : " . $ligne->visible . "</td>\n";
$liste_pages.="<td>\n";
$liste_pages.="<a href=\"admin.php?action=modifier_pages&id_page=" . $ligne->id_page . "\" class=\"modifier_page\" ><img src=\"../images/modifier.png\" title=\"modifier\" alt=\"modifier\" /></a>\n
<a href=\"admin.php?action=supprimer_pages&id_page=" . $ligne->id_page . "\"><img src=\"../images/supprimer.png\" title=\"supprimer\" alt=\"supprimer\" /></a>\n";
$liste_pages.="</td>\n";
$liste_pages.="</tr>\n";
$i++;
}
$liste_pages.="</table>\n";
return $liste_pages;
}
Merci a tous ceus qui voudrons bien m aidé [smile][cligne]