UPDATE

Résolu
cs_nicodu94 Messages postés 7 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 13 janvier 2009 - 6 janv. 2009 à 21:25
cs_nicodu94 Messages postés 7 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 13 janvier 2009 - 6 janv. 2009 à 23:04
Bonjours a tous!!
Je suis débutant en PHP, je suis en train de faire un back office et je suis bloqué sur ce code.
Je souhaite afficher une donnee (de ma bdd) dans un formulaire
-> jusque là, pas de probleme.
Par contre, dès que je veut modifier les données de ce formulaire afin de les enregistrer dans ma bdd. Il ne m'exécute pas la requete.
Merci à tous

/*-------------------------------------------------
--------------inserer les textes-------------------
--------------------------------------------------*/


require ("connectdb.php");
$reponse = "SELECT * FROM encyclopedie WHERE id='a1'";
$reponse = mysql_query($reponse,$cnx) or die ("Echec");
while ($donnees = mysql_fetch_array($reponse) )
{
?>


<form method="post">


titre

<textarea name="titre" rows="1" cols="30" id="titre">
<?php echo $donnees['titre']; ?>
</textarea>


</form>
<?php
}


 


/*-------------------------------------------------
--------------modifier les textes------------------
--------------------------------------------------*/
?>
<form method="post" action="BO_modifEncyclopedie.php" >
<?php


if(isset($_POST['titre'])){
$titre=($_POST['titre']);




$modif = "UPDATE encyclopedie SET titre='$titre' WHERE id='a1'";
mysql_query($modif,$connection) or die ("Echec");
}




?>

</form>
<?php


mysql_close();
?>

6 réponses

kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
6 janv. 2009 à 22:54
Salut Nico,

Je pense que Teclis n'a tout simplement pas vu le "name= "titre"", ton textarea convient très bien.

Mais :
<form method="post">
=>
<form id= "id_du_form" method="post" action="">

Et surtout :
Tu crées 2 formulaires, pourquoi ???
C'est ça qui pause problème; le bouton type="submit" envoie le formulaire (vide) créé par cette ligne :
<form method="post" action="BO_modifEncyclopedie.php" >
Mais pas ton premier formulaire.

Alors :

<?php
require ("connectdb.php");

/*-------------------------------------------------
--------------modifier les textes------------------
--------------------------------------------------*/
if (isset($_POST['titre'])) {
    $titre = $_POST['titre'];

    $modif = "UPDATE encyclopedie SET titre='$titre' WHERE id='a1'";
    mysql_query($modif,$connection) or die ("Echec");
}

$reponse = "SELECT * FROM encyclopedie WHERE id='a1'";
$reponse = mysql_query($reponse,$cnx) or die ("Echec");
while ($donnees = mysql_fetch_array($reponse) )  {

    echo '
    <form id="f_titre" method="post" action="">
    titre

    <textarea name="titre" rows="1" cols="30" id="titre">
    '.$donnees['titre'].'
    </textarea>
   

    </form>';
}

?> 

J'ai modifier quelques trucs, mais il y a encore pas mal de choses à ne pas faire dans ce code.

Cordialement,

Kohntark -
3
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
6 janv. 2009 à 21:30
je vois aucun input avec name="titre" il poste rien il execute pas la query

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
0
cs_nicodu94 Messages postés 7 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 13 janvier 2009
6 janv. 2009 à 22:00
J'ai pas mis : input avec name="titre"
-> car j'ai mis : textarea name="titre" dans la partie -----inserer les textes-----.
Il faut le remettre dans la partie -----modifier les textes----- ?
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
6 janv. 2009 à 22:33
Ok c'est en un script donc ce que tu montres !!! faut te suivre ... Il s'apelle BO_modifEncyclopedie.php ? Si non ça vient de là surement...
Sinon
remplace ça : $modif = "UPDATE encyclopedie SET titre='$titre' WHERE id='a1'";
par : echo $modif = "UPDATE encyclopedie SET titre='$titre' WHERE id='a1'";
voir si elle s'affiche.

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_nicodu94 Messages postés 7 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 13 janvier 2009
6 janv. 2009 à 22:48
Merci pour ton aide Teclis01.
BO_modifEncyclopedie.php est le nom de ma page, donc je renvoie la meme page dans le <form>.
J'ai essayer avec le echo mais ca marche toujours pas.
0
cs_nicodu94 Messages postés 7 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 13 janvier 2009
6 janv. 2009 à 23:04
Merci Kohntark. Je vais essayer de retravayer à partir de ton code.
0
Rejoignez-nous