La Communauté Webmaster  forum rss


  Forum-webmaster
  Technique - programmation
  PHP / MySQL
(Modérateurs: Shain, Jey, erwinol, Lilian, lauryv, ToToMaStEr)
  (resolut) formulaire PHP et requete mysql
« Précédent Suivant »
Pages: [1] Descendre
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
  Auteur  Sujet: (resolut) formulaire PHP et requete mysql  (Lu 9449 fois)
(resolut) formulaire PHP et requete mysql
« sur: le 06-04-2014 a 16:29:56 »
morava
Membre récent
*

Hors-Ligne

Messages: 33





Voir le Profil    E-Mail
Répondre avec citation

Dans le manager de mon site, chaque module du manager se situe dans des dossiers.
Chaque dossier contient 3 fichiers :

page.php  -> contenue de la page du module
tables.php ->  requete : CREATE TABLE IF NOT EXISTS
actions.php -> Action a faire + requete mysql

J'ai créé un nouveau champs dans la table "IPS_Reports" de mon phpmyadmin, j'ai intitulé  ce champs : "Comments" au format TEXT.
Ce champs permet de mettre un commentaire sur un rapport recu.

Dans la page.php, j'ai ajouté :




Code:
$sql = "SELECT * FROM {$dbprefix}Reports$where ORDER BY $orderby";

$apts = CreateApts($con);
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result))
{
$Commentid = $row["Comments"];


Jusque là, aucun probléme, je me suis rendu dans phpmyadmin, j'ai introduit "blabla" dans la cellule "Comments" d'une ligne, la page.php affiche "blabla" dans le commentaire de cette ligne.

J'ai ajouté un formulaire pour permettre de modifier le commentaire, pour celà, j'ai créé une action :
Code:
$action4 = "<a href=\"action.php?action=Comments&id=$id\">Envoyer le commentaire</a>";   

Puis j'ai crée une cellule dans un tableau :
Code:
<input type='text' name='Commentid' style='width:270px' value='$Commentid'/>$action4


Jusque là aucun probléme, je retrouve "blabla" dans la cellule de ma ligne.

Maintenant, passons à la modification de ce commentaire:

L'action se fait dans le fichier "actions.php" :
Code:

<?php
if ($action == "Comments")
{
   if ($id != "")
   {

   $Commentid = $_POST["Commentid"];   
      {
         mysql_query("UPDATE {$dbprefix}Reports SET Comments='$Commentid' WHERE ID=$id");
      }
   }
}
?>


Mais ici, lorsque je change "blabla" par "blibli" et que je retourne dans phpmyadmin,  mistere, "blabla" a disparue , le champs est vide ! et n'est pas remplacé par "blibli".

Que faire d'aprés vous?

Merci de votre aide...

« Dernière Édition: le 16-04-2014 a 21:48:04 par morava » Rapporter au modérateur  

Re:formulaire PHP et requete mysql
« Répondre #1 sur: le 06-04-2014 a 18:52:05 »
pppplus
Habitué
***

Hors-Ligne

Messages: 482



php / mysql

Voir le Profil    WWW
Répondre avec citation

Vous envoyez $Commentid qui n'existe pas.
C'est $_POST['Commentid']

Rapporter au modérateur  

capsules rechargeables Dolce Gusto et Nespresso
jeux flash gratuits avec la plus grosse boutique cadeaux du net
Accessoires cuisine pratiques
Re:formulaire PHP et requete mysql
« Répondre #2 sur: le 06-04-2014 a 19:23:09 »
morava
Membre récent
*

Hors-Ligne

Messages: 33





Voir le Profil    E-Mail
Répondre avec citation

Citation de: pppplus le le 06-04-2014 a 18:52:05
Vous envoyez $Commentid qui n'existe pas.
C'est $_POST['Commentid']
Oups, j'ai du mal a comprendre? c'est a dire?

Rapporter au modérateur  
Re:formulaire PHP et requete mysql
« Répondre #3 sur: le 06-04-2014 a 19:30:41 »
pppplus
Habitué
***

Hors-Ligne

Messages: 482



php / mysql

Voir le Profil    WWW
Répondre avec citation

Vous souhaitez récupérer la valeur de :
Code:
<input type='text' name='Commentid' style='width:270px' value='$Commentid'/>$action4

Cette valeur est  $_POST['Commentid'] et pas $Commentid

Donc, votre requête mysql devrait être :

Code:
mysql_query("UPDATE {$dbprefix}Reports SET Comments='".$_POST['Commentid']."' WHERE ID=$id");

Et encore mieux en nettoyant ce $_POST['Commentid'], par exemple :

Code:
mysql_query("UPDATE {$dbprefix}Reports SET Comments='".mysql_real_escape_string($_POST['Commentid'])."' WHERE ID=$id");

Rapporter au modérateur  

capsules rechargeables Dolce Gusto et Nespresso
jeux flash gratuits avec la plus grosse boutique cadeaux du net
Accessoires cuisine pratiques
Re:formulaire PHP et requete mysql
« Répondre #4 sur: le 06-04-2014 a 19:36:41 »
morava
Membre récent
*

Hors-Ligne

Messages: 33





Voir le Profil    E-Mail
Répondre avec citation

Non, ca ne fonctionne pas

Rapporter au modérateur  
Re:formulaire PHP et requete mysql
« Répondre #5 sur: le 06-04-2014 a 20:47:41 »
morava
Membre récent
*

Hors-Ligne

Messages: 33





Voir le Profil    E-Mail
Répondre avec citation

Citation de: pppplus le le 06-04-2014 a 19:30:41
Vous souhaitez récupérer la valeur de :
Code:
<input type='text' name='Commentid' style='width:270px' value='$Commentid'/>$action4

Cette valeur est  $_POST['Commentid'] et pas $Commentid

Donc, votre requête mysql devrait être :

Code:
mysql_query("UPDATE {$dbprefix}Reports SET Comments='".$_POST['Commentid']."' WHERE ID=$id");

Et encore mieux en nettoyant ce $_POST['Commentid'], par exemple :

Code:
mysql_query("UPDATE {$dbprefix}Reports SET Comments='".mysql_real_escape_string($_POST['Commentid'])."' WHERE ID=$id");

J'ai essayé les deux requete dans la page actions.php, aucune des deux ne fonctionnent.

Rapporter au modérateur  
Re:formulaire PHP et requete mysql
« Répondre #6 sur: le 06-04-2014 a 21:13:52 »
pppplus
Habitué
***

Hors-Ligne

Messages: 482



php / mysql

Voir le Profil    WWW
Répondre avec citation

Etes-vous sûr de bien récupérer la valeur de votre formulaire ?

Faites un
print_r($_POST);

Pour voir si vous avez bien des valeurs.
Si vous n'en avez pas, il faut revoir le code html du formulaire

Rapporter au modérateur  

capsules rechargeables Dolce Gusto et Nespresso
jeux flash gratuits avec la plus grosse boutique cadeaux du net
Accessoires cuisine pratiques
Re:formulaire PHP et requete mysql
« Répondre #7 sur: le 06-04-2014 a 21:33:07 »
morava
Membre récent
*

Hors-Ligne

Messages: 33





Voir le Profil    E-Mail
Répondre avec citation

J'ai su resoudre le probléme, j'ai changé le nom de la variable.
voici ce que j'ai changé :

dans action.php :
Code:
if ($action == "Comments")
{
   if ($id != "")
   {

   mysql_query("UPDATE {$dbprefix}Reports SET Comments='Commentaire' WHERE ID=$id");
      
   }
}


Dans page.php :
Code:

$action4 = "<a href=\"action.php?action=Comments&id=$id\">Envoyer le commentaire</a>";

<input type='text' name='Commentaire' style='width:270px' value='$Commentid'/>$action4

Merci pour votre aide, elle m'as bien rendu service

Par compte, j'ai un autre soucie sur mon site :
www.morava-airlines.com
Cliquez sur le drapeau France, vous allez voir que mes accents sont remplacé par un logange avec un point d'interrogation.

Rapporter au modérateur  
Re:formulaire PHP et requete mysql
« Répondre #8 sur: le 06-04-2014 a 21:45:09 »
pppplus
Habitué
***

Hors-Ligne

Messages: 482



php / mysql

Voir le Profil    WWW
Répondre avec citation

Pour moi, vous n'avez rien résolu.

Vous insérez juste le mot commentaire dans le champs Comments de votre table;

Pour les problèmes d'accents sur votre site:
1- il faut que les pages soient toutes en utf8 sans bom
2- il faut que le charset soit utf8
3- il faut que les tables soient en utf8

Si nécessaire, il faut ajouter
mysql_query("SET NAMES 'utf8'");
(juste après mysql_connect)

Rapporter au modérateur  

capsules rechargeables Dolce Gusto et Nespresso
jeux flash gratuits avec la plus grosse boutique cadeaux du net
Accessoires cuisine pratiques
Re:formulaire PHP et requete mysql
« Répondre #9 sur: le 06-04-2014 a 21:45:49 »
morava
Membre récent
*

Hors-Ligne

Messages: 33





Voir le Profil    E-Mail
Répondre avec citation

Erreur, je suis IDIOT !
Il annonce "commentaire sur chaque cellule que je change, normal !
J'ai lancé une requete pour qu'il ecrit "Commentaire" dans chaque champs.
Bon, pffff

Rapporter au modérateur  
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
Pages: [1] Monter
« Précédent Suivant »
Sauter à: 

Votre statut : Invité
Vous devez être membre pour participer.
 
 
Let’s Encrypt : le certificat SSL gratuit
Tester votre site internet sur différents navigateurs
[WordPress] Des problèmes avec l’administration ?
Rappel : Mettez à jour vos CMS et vos sites E-commerce
Le .fr fête ses 25 années d’existence !
Mesurer votre audience en temps réel avec BubbleStat
Porter réclamation contre Google Panda ?
Zlio n’est plus …
 
 
 
 
 

Copyright (c) Devclic 2002 - 2026 - Tous droits réservés

creation site internet strasbourg