Scopas
Messages postés24Date d'inscriptiondimanche 21 août 2005StatutMembreDernière intervention26 octobre 2009
-
15 juin 2006 à 19:11
nightlord666
Messages postés746Date d'inscriptionvendredi 17 juin 2005StatutMembreDernière intervention23 mai 2007
-
18 juin 2006 à 01:07
Bonjour,
Voila j ‘aimerais savoir si quelqu’un pourrais me donner la requête pour récupérer une donner dans une édit box et ensuite l’envoyer dans une base de donnée
Du style j ai une valeur dans l édit box nome IDC_Temp je récupère cette valeur et je l’envoi à ma base. Car moi je ne connais que cette commande .(en c++)
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /?>
mysql_query(&mysql,"INSERT temp_ext FROM releve ");
Scopas
Messages postés24Date d'inscriptiondimanche 21 août 2005StatutMembreDernière intervention26 octobre 2009 15 juin 2006 à 22:28
D'accord, j'utilise l'API mysql donc la librairie mysql.h et en regardant sur le site j'ai vu du code qui fessais la même requête que moi c'est a dire mysql_query(conn,<var>"SELECT * FROM nom_table"</var>)si tu pouvais me dire quel librairie utiliser pour ta requête car j'ai plein d'erreur ou alors comment l'écrire.
Et si j'ai bien compris INSERT INTO 'temp_ext'(champ1, champ2) VALUES(valeur1, valeur2);
pour recupe la valeur de l edit box sa donnerais INSERT INTO 'temp_ext'(champ1) VALUES(GetWindowText(IDC_Temp));
car j etais parti aussi pour utilser le GetDlgItemInt(IDC_Tem)
Juste aussi pour dire que la table c'est releve et le champ temp_ext.
nightlord666
Messages postés746Date d'inscriptionvendredi 17 juin 2005StatutMembreDernière intervention23 mai 200710 16 juin 2006 à 09:44
GetDlgItemInt va récupérer un entier dans ton editbox. Pour le texte c'est en fait GetDlgItemText.
Pour la requète : temp_ext est à remplacer par le nom de ta table, champ1 et champ2 par les noms des colonnes de ta table, et valeur1 et valeur2 par les trucs que tu veut mettre à l'intérieur.
GetDlgItemText ne faisant pas parti de SQL, il va te renvoyer des erreurs car il ne faut pas le mettre dans la requète. Il faut faire comme ceci :
char* query = new char[1024];
wsprintf(query, "INSERT INTO 'temp_ext'(champ1) VALUES('%s')", GetDlgItemText(IDC_Tem));
mysql_query(conn, query);
Scopas
Messages postés24Date d'inscriptiondimanche 21 août 2005StatutMembreDernière intervention26 octobre 2009 16 juin 2006 à 20:27
Merci bien je peu juste te demander comment tu as déclaré conn?
Car j'ai essayé en MYSQL_ROW et en MYSQL mais j'ai une erreur dessus qui me dit : 'mysql_query' : impossible de convertir le paramètre 1 de 'MYSQL_ROW' en 'MYSQL *'
Les types pointés n'ont aucun rapport entre eux ; conversion nécessitant reinterpret_cast, cast de style C ou cast de style fonction
je te passe aussi le code que j ai mit avant
MYSQL mysql;
// Initialisation de la connexion
mysql_init(&mysql);
// Connexion sur le serveur
if
(!mysql_real_connect(&mysql,"localhost","root","","meteo2006",0,NULL,0))
{
SetDlgItemText(IDC_Communication,"La connexion sur le serveur a échoué");
}
// se que tu ma dit
/*wsprintf(query, "INSERT INTO 'releve'(temp_ext) VALUES('%s')", GetDlgItemText(IDC_Temp));
mysql_query(mysql, query);*/
}
// Déconnexion du serveur
mysql_close(&mysql);
///////////////
j ai testé cette requete mysql_query(&mysql,"INSERT INTO releve(temp_ext,pression,humidite,pluviometrie,vitesse_vent,direction_vent) VALUES('1','2','3','4','5','6')");
qui marche très bien merci à toi, si tu peu m'aider pour les edit box cela serait la totale
Vous n’avez pas trouvé la réponse que vous recherchez ?
nightlord666
Messages postés746Date d'inscriptionvendredi 17 juin 2005StatutMembreDernière intervention23 mai 200710 18 juin 2006 à 01:07
Arghhh, les MFC...
Dans ce cas, je ne peut pas t'aider, je ne vais pas aller regarder la doc de trucs qui ne m'interessent pas... Regarde dans la MSDN à CWnd::GetDlgItemText.