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

C++ Discussion :

probleme pour inserer des choses dans mysql


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Inscrit en
    Août 2013
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2013
    Messages : 274
    Par défaut probleme pour inserer des choses dans mysql
    bonjour a tous,
    voici le code:
    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
     
    #include <iostream>
    #include <stdio.h>
    #include <windows.h>
    #include <stdlib.h>
    #include <time.h>
    #include <winsock.h>
    #include <sys/types.h>
    #include <dirent.h>
    #include <string.h>
    #include <fstream>
    #include <mysql.h>
    #include <MYSQL/mysql.h>
    using namespace std;
     
     
    int main()
    {
    char requete[100];
    char chaine1[100];
    FILE*fich;
    fich=fopen("C:\\Users\\pac\\Desktop\\coco.txt","r");
    fgets(chaine1,100,fich);
     
     
    MYSQL mysql;
    mysql_init(&mysql);
    mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"mysql_test1");
    if(mysql_real_connect(&mysql,"**.fr.mysql","user","mot de passe","BDD",3306,NULL,0)==NULL){
                    sprintf(requete, "INSERT INTO boite VALUES('', '%s')",chaine1);//boite=table dans ma BDD
                    mysql_query(&mysql, requete);
                    mysql_close(&mysql);cout<<"ca marche pas"<<endl;
    }
     
    else{cout<<"ca marche"<<endl;}
     
    }
    la console marque "ca marche pas" donc il rentre pas dans la BDD mais je ne comprend pas
    j'ai regardé sur internet et pourtant c'est ca qu'il faut mettre
    je fais appel a vous pour m'aider ..
    merci d'avance

  2. #2
    Membre Expert
    Profil pro
    Développeur en systèmes embarqués retraité
    Inscrit en
    Mars 2006
    Messages
    952
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2006
    Messages : 952
    Par défaut
    Salut

    Citation Envoyé par cosmoff Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if(mysql_real_connect(&mysql,"**.fr.mysql","user","mot de passe","BDD",3306,NULL,0)==NULL){
                    sprintf(requete, "INSERT INTO boite VALUES('', '%s')",chaine1);//boite=table dans ma BDD


    - Crois tu vraiment qu'il y ait quelque part sur le web un serveur mysql qui s'appelle "**.fr.mysql"?
    - Qu'il y soit défini un utilisateur qui s'appelle "user"?
    - Et qui aurait comme mot de passe "mot de passe"?

    Il faut remplacer ces 3 exemples par de vrais objets. Crée une base de données quelque part (sur ta propre machine ce sera très bien) , démarre la, connecte toi avec les vrais nom de serveur, user et mot de passe. Rajoute ta table (avec mysqlAdmin)... Tu pourras seulement dire à ce moment là que ça ne marche pas. Eventuellement.

    Ton code est visiblement du C++, tu devrais poster dans le bon forum.

    A+

    Pfeuh

  3. #3
    Membre très actif
    Homme Profil pro
    Inscrit en
    Août 2013
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2013
    Messages : 274
    Par défaut
    oui euh... je sais !! j'ai remplacé ca par **, user , mot de passe.. pour que je ne me fasse pas pirater mon compte mysql
    dis toi que les champs la sont remplis correctement..
    tu sais d'ou peux venir le probleme? je pense que mysql est peut etre mal installé ?

  4. #4
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 832
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 832
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par cosmoff Voir le message
    bonjour a tous,
    voici le code:
    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
     
    #include <iostream>
    #include <stdio.h>
    #include <windows.h>
    #include <stdlib.h>
    #include <time.h>
    #include <winsock.h>
    #include <sys/types.h>
    #include <dirent.h>
    #include <string.h>
    #include <fstream>
    #include <mysql.h>
    #include <MYSQL/mysql.h>
    using namespace std;
     
     
    int main()
    {
    char requete[100];
    char chaine1[100];
    FILE*fich;
    fich=fopen("C:\\Users\\pac\\Desktop\\coco.txt","r");
    fgets(chaine1,100,fich);
     
     
    MYSQL mysql;
    mysql_init(&mysql);
    mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"mysql_test1");
    if(mysql_real_connect(&mysql,"**.fr.mysql","user","mot de passe","BDD",3306,NULL,0)==NULL){
                    sprintf(requete, "INSERT INTO boite VALUES('', '%s')",chaine1);//boite=table dans ma BDD
                    mysql_query(&mysql, requete);
                    mysql_close(&mysql);cout<<"ca marche pas"<<endl;
    }
     
    else{cout<<"ca marche"<<endl;}
     
    }
    la console marque "ca marche pas" donc il rentre pas dans la BDD mais je ne comprend pas
    j'ai regardé sur internet et pourtant c'est ca qu'il faut mettre
    je fais appel a vous pour m'aider ..
    merci d'avance
    Salut
    Tel que je te lis, si mysql_real_connect() renvoie NULL (donc si la connexion échoue) tu tentes l'insertion ???
    Moi j'aurais mis != NULL


    Citation Envoyé par cosmoff Voir le message
    oui euh... je sais !! j'ai remplacé ca par **, user , mot de passe.. pour que je ne me fasse pas pirater mon compte mysql
    dis toi que les champs la sont remplis correctement..
    tu sais d'ou peux venir le probleme? je pense que mysql est peut etre mal installé ?
    Est-ce que tu arrives à te connecter en lignes de commandes sur ton serveur ??? Si oui alors mysql est bien installé (ce qui est d'ailleurs généralement le cas)

    Accessoirement, il ne t'est pas venu à l'idée de regarder le code d'erreur via mysql_error() ? C'est pourtant utile dans la recherche de la cause de l'erreur...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  5. #5
    Membre très actif
    Homme Profil pro
    Inscrit en
    Août 2013
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2013
    Messages : 274
    Par défaut Certains hébergeurs bloquent mysql en langage c
    apparemment Certains hébergeurs bloquent mysql en langage c..
    pour ma part je pense que c'est ca mais je suis sur one.com
    connaissez vous un hebergeur de préférence gratuit pour tester mysql en C

    comment se connecter à votre base de données avec une connexion externe??

  6. #6
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 967
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 967
    Par défaut
    Joa,

    Le langage C n'a absolument rien à voir là-dedans, le serveur n'a pas la moindre info pour savoir comment a été créé le client, langage compilé ou interprété, il ne voit que la connexion, correcte ou pas.

  7. #7
    Membre très actif
    Homme Profil pro
    Inscrit en
    Août 2013
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2013
    Messages : 274
    Par défaut
    oui mais pouquoi il ne voit pas que la connexion est correct ?
    il me dit toujours " ca marche pas"
    j'aimerais me connecté a la bdd mais j'arrive pas

    pour les lignes de commande je ne vois pas comment faire..

Discussions similaires

  1. Probleme pour inserer des donnees de type INTERVAL DAY
    Par JUSTIN Loïc dans le forum Oracle
    Réponses: 1
    Dernier message: 01/09/2006, 09h29
  2. insérer des images dans MySQL avec PHPMyAdmin
    Par intik dans le forum Outils
    Réponses: 1
    Dernier message: 29/08/2006, 09h59
  3. Problème pour rentrer des données dans MySQL
    Par Sandara dans le forum Requêtes
    Réponses: 8
    Dernier message: 06/06/2006, 10h59
  4. probleme de trie des nombres dans mysql
    Par fwdavy dans le forum Administration
    Réponses: 3
    Dernier message: 23/03/2006, 21h31
  5. Probleme pour afficher des printf dans le main
    Par Battosaiii dans le forum C
    Réponses: 4
    Dernier message: 13/03/2006, 10h58

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