mise à jour de deux champs - PHP - Programmation
Marsh Posté le 27-11-2008 à 16:40:04
parce-que tu n'as pas d'input appelé libelle? ni de variable appelée $libelle?
Marsh Posté le 27-11-2008 à 16:44:01
Bonjour.
Tu peux remplacer la ligne qui te pose problème par un var_dump($_POST), qui t'affichera tout le contenu de $_POST. Ca devrait te donner une idée de ce qui cloche...
En gros :
$_POST[] est un tableau contenant les données envoyées par un formulaire, sous la forme :
$_POST['NomDuChampDuFormulaire']="ContenuDuChamp"
Or,
Citation : echo "<td align='center' bgcolor='#DCDCDC'><input type='text' font='verdana' value='$libelle'></td>"; |
Tu ne donnes pas de nom à ton input. Du coup, forcément...
Et ça marche avec $_POST['contenu'] parce que FCKEditor définit un nom quand tu crées une instance :
Citation : $oFCKeditor = new FCKeditor('contenu') ; |
Marsh Posté le 27-11-2008 à 17:14:42
Donc :
echo "<td align='center' bgcolor='#DCDCDC'><input type='text' font='verdana' name='lib' value='$libelle'></td>";
Merci pour votre rapidité pb resolu !
Marsh Posté le 27-11-2008 à 16:34:15
Bonjour,
j'ai un probleme pour une mise a jour.
<?
if( isset($_POST["nb_lignes"]) )
{
$libel=$_POST["libelle"];//<===== ici l'erreur est " Notice: Undefined variable: libelle in c:\program... "
$contenu1=$_POST["contenu"];
$sql2="UPDATE page SET libelle='$libel' contenu='$contenu1' where id_page = '".$_GET['id_page']."'";
$resultat2=mysql_query($sql2);
}
else
{
?>
<form method="post" target="g_page.php" >
<table align=center width=786 bgcolor="#ffffff">
<?php
mysql_connect("/", "/", "/" );
mysql_select_db("/" );
$sql = "select * FROM page WHERE id_page = '".$_GET['id_page']."'";
$resultat=mysql_query($sql);
$i=0;//on initialise l'index
while ($row = mysql_fetch_array($resultat))
{
$id_page = $row['id_page'];
$libelle=$row['libelle'];
$contenu=$row['contenu'];
echo "<tr>";
echo "<td align='center' bgcolor='#DCDCDC'><input type='text' font='verdana' value='$libelle'></td>";
echo "</tr>\n";
echo "<tr>";
echo "<td align=center bgcolor='#DCDCDC'>";
include_once ('../../FCKeditor/FCKeditor.php') ;
$oFCKeditor = new FCKeditor('contenu') ;
$oFCKeditor->BasePath = '../../FCKeditor/' ;
$oFCKeditor->Width = '700' ;
$oFCKeditor->Height = '300' ;
$oFCKeditor->Value = $contenu ;
$oFCKeditor->Create() ;
echo "</td>";
echo "</tr>";
$i++;// on incrémente l'index
}
// on libère le résultat
?>
</table>
<br>
<input type="submit" name="nb_lignes" value=" Valider ">
</form>
<?
}
?>
Pourquoi le contenu se met bien a jour mais pas le libelle??
Merci d'avance