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 :

Message d'erreur MySQL [MySQL]


Sujet :

PHP & Base de données

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

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2004
    Messages : 1 024
    Points : 243
    Points
    243
    Par défaut
    Citation Envoyé par darkstar123456 Voir le message
    non mais cherche pas et lis ce que j'écris. Tu dois forcément avoir une condition ou une boucle quelque part (ça fait juste la 3ieme fois que je le dis hein !).

    Montres-nous le code en entier, car je suis certain que ton erreur mysql_close vient du fait qu'il n'a rien à fermer car tu ne fais pas de requête (condition qui ne passe pas/jamais).
    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
    41
    42
    43
    44
    45
    46
    <?php
    if ((isset($_GET['motscles']) && !empty($_GET['motscles'])) && (isset($_GET['id']) && !empty($_GET['id'])))
    {
    $id = $_GET['id'];
    $motscles = $_GET['motscles'];
    ?>
     
    <!-- /////////////////////////////////////////////////// -->
    <!-- //////////// Mise à jour des mots-clés //////////// -->
    <!-- /////////////////////////////////////////////////// -->
     
    <?php
    $host = "localhost";	
    $user = "root";	
    $password = "";	
    $nombase = "recherche";
    $nomtable = "recherche";
     
    $lien = mysql_connect($host,$user,$password) or die('Erreur de connexion : ' . mysql_error() . ""); 
    mysql_select_db($nombase,$lien) or die ('Erreur de connexion à la base. ' . mysql_error() . ""); 
    $sql = mysql_query("SELECT * FROM $nomtable LIMIT 0, 30") or die('Erreur de la requête : ' . mysql_error() . ""); 
     
    echo '<fieldset>';
    echo '<legend>Mise à jour de mots-clés de la table <strong>', $nomtable, '</strong></legend>';
     
    $requete = mysql_query("SELECT * FROM $nomtable WHERE id=$id");
          $reponse = mysql_fetch_assoc($requete);
          $contenu_actuel = $reponse['motscles'];
          $nouveau_contenu = $contenu_actuel.$motscles;
     
    echo 'Base : <strong>', $nombase , '</strong> <br /> Table : <strong>',  $nomtable , '</strong>';
    echo 'ID modifié : <strong>' ,$id ,'</strong> <br />';
    echo 'Titre : <strong>',$reponse[titre], '</strong> <br /><br />';
    echo 'Nouveaux mots clés enregistrés : <br /><strong>', $nouveau_contenu ,'</strong><br /><br />';
     
    mysql_query("UPDATE $nomtable SET motscles = '$nouveau_contenu' WHERE id=$id"); 
    }
    mysql_close();
    ?>
     
    <br /><br />
    [ <a href="javascript:history.go(-1)">Retour page précédente</a> ]
    <br /><br />
    <form method="post" action="../choix.html">
    <input type="submit" name="choix" value="Retour au choix">
    </form>
    J'ai encore cherché "{" mais je vois pas, sauf peut-être au tout début du code.
    C'est peut-être de là que vient l'erreur !
    Je regarde ça de plus près.

  2. #22
    Membre émérite Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 896
    Points : 2 838
    Points
    2 838
    Par défaut
    et bien voilà c'est bien le if() du début...

    La condition n'est pas remplie DONC pas de requête DONC mysql_close() renvoie une erreur car pas de requête.

    CQFD.


    Vérifie ta condition pour qu'elle renvoie true

    PS : Petit conseil, indente ton code... tu aurais vu tout de suite la faute, même sans l'habitude de coder
    PS 2 : tu as des doubles () dans ta condition :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if( (tes conditions) ) {
    }

    les 2iemes parenthèses ne sont pas obligatoires car tu n'as que des ET (&&)

  3. #23
    Membre expérimenté
    Avatar de Jumano
    Profil pro
    Inscrit en
    Février 2007
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 1 163
    Points : 1 595
    Points
    1 595
    Par défaut
    Positionne ton "}" juste après mysql_close();

  4. #24
    Membre émérite Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 896
    Points : 2 838
    Points
    2 838
    Par défaut
    Citation Envoyé par jumano Voir le message
    Positionne ton "}" juste après mysql_close();
    ouais mais bon, ca résoudra pas son problème parce que ça je l'avais déjà dit.

    Faut vérifier les conditions pour que le script passe de temps en temps

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

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2004
    Messages : 1 024
    Points : 243
    Points
    243
    Par défaut
    Citation Envoyé par darkstar123456 Voir le message
    La condition n'est pas remplie DONC pas de requête DONC mysql_close() renvoie une erreur car pas de requête.
    CQFD, CQFD, pour toi peut-être !
    Pour moi, et j'en ai encore beaucoup à apprendre, tant que la base n'est pas fermée, je fais la ou les requête !
    Je suis certainement à côté de mes pompes...

    Citation Envoyé par darkstar123456 Voir le message
    les 2iemes parenthèses ne sont pas obligatoires car tu n'as que des ET (&&)
    Là, j'ai très bien saisi...
    Les () ne sont pas nécessaires avec ce genre d'opérateurs ?

    Alors bonjour l'angoisse...

  6. #26
    Membre émérite Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 896
    Points : 2 838
    Points
    2 838
    Par défaut
    CQFD, CQFD, pour toi peut-être !
    Pour moi, et j'en ai encore beaucoup à apprendre, tant que la base n'est pas fermée, je fais la ou les requête !
    Je suis certainement à côté de mes pompes...
    En fait oui, tant que tu n'es pas connecté à la BDD, tu ne peux pas faire de mysql_close(). Or dans ton code, la connection se faire dans le if() [qui à première vue ne passe pas]. Donc ton mysql_close() te dit qu'il se la coule douce car il a rien fait du tout :p

    les 2iemes parenthèses ne sont pas obligatoires car tu n'as que des ET (&&)
    En fait, en logique pour qu'un ET (&&) soit vrai, il faut que toutes les conditions soient vraies, et donc pas besoin de parenthèses supplémentaires

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

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2004
    Messages : 1 024
    Points : 243
    Points
    243
    Par défaut
    C'est noté darkstar123456, en espérant m'en rappeler.

  8. #28
    Membre émérite Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 896
    Points : 2 838
    Points
    2 838
    Par défaut
    Voilà pour t'aider les "tables de vérité" (c'est vraiment leur nom :p)

    LE "ET" (&&)



    LE "OU" (||)

  9. #29
    Membre expérimenté
    Avatar de Jumano
    Profil pro
    Inscrit en
    Février 2007
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 1 163
    Points : 1 595
    Points
    1 595
    Par défaut
    darkstar123456, selon toi quelle serait la bonne syntaxe pour cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if ((isset($_GET['motscles']) && !empty($_GET['motscles'])) && (isset($_GET['id']) && !empty($_GET['id'])))

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

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2004
    Messages : 1 024
    Points : 243
    Points
    243
    Par défaut
    Merci pour ces tables darkstar123456.

    Là je m'adresse à toi et à Jumano.

    Mon problème est résolu, c'était juste une question de "$_GET[...]"

    En vérité, il fallait mettre POST à la place du GET, puisque dans mon formulaire le type était en "post".

    Je comprends plus parce qu'à cause de ça uniquement cela engendre toutes ces erreurs !

    Ah ! l'informatique...

  11. #31
    Membre émérite Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 896
    Points : 2 838
    Points
    2 838
    Par défaut
    Citation Envoyé par jumano Voir le message
    darkstar123456, selon toi quelle serait la bonne syntaxe pour cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if ((isset($_GET['motscles']) && !empty($_GET['motscles'])) && (isset($_GET['id']) && !empty($_GET['id'])))
    haa mais la synthaxe n'est pas fausse... c'est juste qu'en tant que programmeur, moins on en fait mieux c'est Donc j'aurais juste mis :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if( isset($_GET['motscles']) && !empty($_GET['motscles']) && isset($_GET['id']) && !empty($_GET['id']) )


    PS : lolilol j'ai l'impression de passer une interro

  12. #32
    Membre expérimenté
    Avatar de Jumano
    Profil pro
    Inscrit en
    Février 2007
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 1 163
    Points : 1 595
    Points
    1 595
    Par défaut
    Ok, merci car depuis tout à l'heure j'essayais en vain d'enlever certaine "(" mais je voulais absolument laisser une "(' devant isset, donc message d'erreur à chaque fois ...

  13. #33
    Membre émérite Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 896
    Points : 2 838
    Points
    2 838
    Par défaut
    j'avoue que c'est aussi pour la bonne santé mentale de tout le monde qu'il vaut parfois mieux limiter les parenthèse

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

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2004
    Messages : 1 024
    Points : 243
    Points
    243
    Par défaut
    Jumano et darkstar123456,

    Je tiens beaucoup à vous remercier de votre aide.

    J'en ai appris pas mal, maintenant, le plus dur, c'est de retenir ! Bonjour Alzheimer... Non mais je plaisante !

    Quand je pense qu'il faut faire vachement gaffe avec les "()" et les "{}", brrrr ! Rien que d'y penser...

    A bientôt les gars.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. message d'erreur MYSQL
    Par triger100 dans le forum JDBC
    Réponses: 2
    Dernier message: 15/04/2008, 10h43
  2. [MySQL] Message d'erreur MySQL
    Par XpFive dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 12/04/2008, 18h49
  3. ? Message d'erreur MySQL
    Par Trebor_ dans le forum Installation
    Réponses: 5
    Dernier message: 15/02/2008, 15h21
  4. [MySQL] Messages d'erreur Mysql liés à la fonction mysql_result
    Par Diabless6 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 05/06/2007, 20h59
  5. Message d' erreur Mysql
    Par Blaireau dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 12/04/2007, 13h44

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