j'essaie de récupérer les champs d'une table MySQL et de les insérer dans un tableau pour les afficher plus tard:
int nb_produit = 2;
int b = 1;
char* tableau[] = malloc(nb_produit * sizeof(char));
char* nom_produit = (char*)malloc(nb_produit * sizeof(char));
/* Je récupère le nom de chaque produit */
for (int a = 0; a< nb_produit; a++)
{
sprintf (texte, "SELECT nom FROM produit WHERE categorie = '%s' and id = '%d';", categorie, b);
conn = mysql_init(NULL);
if (conn != NULL)
{
if (mysql_real_connect (conn, "127.0.0.1", "user","mdp", "test", 0, NULL, 0) != NULL)
{
mysql_query(conn, texte);
result = mysql_store_result(conn);
if ((row = mysql_fetch_row(result)) != NULL)
{
printf("%s", row[0]);
strcpy(tableau[a] , row[0]); // Je voudrais insérer ici la valeur de row[0] dans la case du tableau,
// mais j'ai <<passing argument 1 of strcpy makes pointer from integer without a cast>>
}
mysql_free_result(result);
mysql_close(conn);
}
b++;
}
Quelqu'un saurait comment faire ça ?
J'avoue que ça fait un moment que je tourne en rond sur ce morceau
Bonjour, déjà pour ton tableau de chaînes, avant de le faire dynamique, fais le statique tu aura moins de soucis, puisque visiblement tu ne maîtrises pas la chose.
char tableau[2][255]; // tableau de 2 mots ayant une longueur max de 254 caracteres
Récupérer une donnée MySql dans un tableau de char
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.