IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Variables formulaire : Update impossible


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de jlb59
    Homme Profil pro
    Retraité
    Inscrit en
    Août 2004
    Messages
    1 024
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2004
    Messages : 1 024
    Par défaut Variables formulaire : Update impossible
    Bonjour à tous,

    Avec un tuto, j'ai fait un update dans une table.

    Quand j'exécute directement, ça marche, mais quand c'est fait à partir d'un formulaire, y a d'erreur mais il n'y a aucun update d'effectuer.

    J'ai fait ce formulaire pour me simplifier la vie, parce que faire directement par le fichier d'update, je devais modifier la source, transférer et exécuter.

    Ce formulaire, très simple, n'utilise que 2 variables (id et mots-cles) (c'est pour mon moteur de recherche), qui sont récupérées par le fichier d'update, comme le montre ce code :
    Formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <form method="post" action="frm_update-recherche.php" name="update"> 
    	<strong>Mise à jour de mots-clés - Recherche.sql :</strong><br><br><br><br>
    	N° id : <input type="text" name="id" size="3" maxlength="3"><br><br>
    	Mots clés : <textarea name="motscles" cols="50" rows="5"></textarea><br><br><br><br>
    	<input type="submit" value="Envoyer"> &nbsp; <input type="reset" value="Recommencer">
    </form>
    Fichier de l'update :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    <?php
    if ((isset($_POST['motscles']) && !empty($_POST['motscles'])) && (isset($_POST['id']) && !empty($_POST['id'])))
    {
    $id = $_POST['id'];
    $mots_cles = $_POST['motscles'];
    ?>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title></title>
    </head>
    <body>
     
    <!-- /////////////////////////////////////////////////// -->
    <!-- //////////// Mise à jour des mots-clés //////////// -->
    <!-- /////////////////////////////////////////////////// -->
     
    <?php
    mysql_connect("sql.free.fr", "XXXXX", "XXXXX"); 
    mysql_select_db("XXXXX"); 
          $requete = mysql_query("SELECT * FROM recherche WHERE id='$id'");
          $reponse = mysql_fetch_array($requete);
          $contenu_actuel = $reponse['mots_cles'];
          $nouveau_contenu = $contenu_actuel.$mots_cles;
     
    mysql_query("UPDATE recherche SET mots_cles = '$nouveau_contenu' WHERE id='$id'");
     
    mysql_close(); // Déconnexion de MySQL
    ?>
     
    </body>
    </html>
    <?php
    }
    else
    {
    echo 'Mots-clés ajoutés<br><br>';
    echo '[ <a href="javascript:history.go(-1)">Retour page précédente</a> ]';
    }
    ?>
    Personnellement, je ne vois rien d'anormal et je me demande pourquoi la mise à jour ne se fait pas !!!!!

    Est-ce que vous pourriez m'aider à résoudre ce problème ?

    Il est possible que vous voyiez qq chose d'anormal que je ne vois pas !

    Merci de votre aide.

  2. #2
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $nouveau_contenu = $contenu_actuel.$_POST['mots_cles'];
    ?
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  3. #3
    Membre éprouvé
    Avatar de jlb59
    Homme Profil pro
    Retraité
    Inscrit en
    Août 2004
    Messages
    1 024
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2004
    Messages : 1 024
    Par défaut
    Citation Envoyé par RideKick Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $nouveau_contenu = $contenu_actuel.$_POST['mots_cles'];
    ?
    Merci de ton aide RideKic, mais ça marche toujours pas !

    Pourtant, ton code a l'air correct !

    Est-ce que j'ai oublié qq chose dans mon code ?

  4. #4
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    essaie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mysql_query("UPDATE recherche SET mots_cles = '$nouveau_contenu' WHERE id='$id'") or die (mysqlerror();)
    pour voir si ta requette comporte une erreur sinon tu peux etre plus precis sur le fait que ça ne marche pas genre :

    Comportement reel , attendu etc ..

    Edit : la solution que jke t'ai file avant ne marche pas car tu as deja remplace le $_POST en debut de code j avais pas vu lol (le matin c'est mortel...)
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  5. #5
    Membre éprouvé
    Avatar de jlb59
    Homme Profil pro
    Retraité
    Inscrit en
    Août 2004
    Messages
    1 024
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2004
    Messages : 1 024
    Par défaut
    Citation Envoyé par RideKick Voir le message
    essaie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mysql_query("UPDATE recherche SET mots_cles = '$nouveau_contenu' WHERE id='$id'") or die (mysqlerror();)
    pour voir si ta requette comporte une erreur sinon tu peux etre plus precis sur le fait que ça ne marche pas genre :

    Comportement reel , attendu etc ..

    Edit : la solution que jke t'ai file avant ne marche pas car tu as deja remplace le $_POST en debut de code j avais pas vu lol (le matin c'est mortel...)
    Non, y a absolument pas d'erreur !

    Par contre, avec ton code volià ce qui est affiché :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Parse error: syntax error, unexpected ';' in /mnt/163/sdb/9/3/qi98/mysql/update-recherche.php on line 28
    Alors j'ai essayé comme ça (j'utilise le même format pour la recherche complète);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query(UPDATE recherche SET mots_cles = '$nouveau_contenu' WHERE id='$id'") or die(mysql_error());
    C'est pareil, pour la syntaxe cette fois (je crois) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'intelligence,âge mental,age mental,âge réel,age réel,age reel,âge reel,interet,i' at line 1
    Ce qui n'arrange rien ,c'est en anglais ???
    J'ai essayé de traduire (résidu d'école) :
    Vous avez une erreur de syntaxe dans votre requête SQL;regargez le manuel correspondant à votre version de MySQL... .
    après je ne m'en souviens plus (je parle de la traduction).

  6. #6
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    oui j'ai tappé un ; en trop
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mysql_query("UPDATE recherche SET mots_cles = '$nouveau_contenu' WHERE id='$id'") or die (mysqlerror())
    tu as essayé ta reuqtte dans phpMyAdmin ?
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

Discussions similaires

  1. [forms 6i]UPDATE IMPOSSIBLE
    Par pjcejbpojo dans le forum Forms
    Réponses: 5
    Dernier message: 06/05/2006, 14h09
  2. Réponses: 5
    Dernier message: 14/03/2006, 16h12
  3. [Tableaux] passage de variable formulaire
    Par Stef.web dans le forum Langage
    Réponses: 4
    Dernier message: 23/01/2006, 10h44
  4. Windows Update impossible, problème installation WGA
    Par iubito dans le forum Windows XP
    Réponses: 3
    Dernier message: 16/12/2005, 08h58
  5. Réponses: 9
    Dernier message: 30/11/2005, 17h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo