Salut,
Comme précisé par CptPingu, avant de coder, il faut commencer par vérifier que tout marche bien côté serveur et que ce dernier est accessible depuis un autre PC du réseau local. Puisque tout marche en localhost cela signifie que ton serveur MySQL fonctionne correctement. Voici quelques pistes pour Windows:
1- Sur le PC serveur, dans un invite de commandes, tape "netstat -a" pour voir tous les ports ouverts. Si le port 3306 ne figure pas dans la liste alors ton MySQL utilise un autre port. Pour connaitre le port utilisé tu peux consulter le fichier my.ini (ou my.cnf selon la version)se trouvant dans le dossier dont le chemin ressemble à ceci: C:\wamp\bin\mysql\mysql5.1.36. Dans le bloc [mysqld] de ce fichier regarde la valeur du port. Cela s'applique aussi au bloc [wampmysqld].
2- Dans certaines configurations de MySQL, l'utilisateur "root" n'est pas autorisé à se connecter depuis un PC distant pour des raisons de sécurité. Il est préférable de créer un nouvel utilisateur ("admin" par exemple) en lui assignant un mot de passe et lui donnant le droit de se connecter depuis n'importe où. Tu peux utiliser SQLWave en local sur le PC serveur pour ajouter un utilisateur après s'être connecté en tant que root. C'est la paire login+mot de passe de l'utilisateur nouvellement créé qui sera utilisée pour se connecter à ta base MySQL depuis un autre PC.
3- Dans certaines configurations de MySQL incluses dans WAMP, toutes les connexions distantes sont interdites par défaut pour des raisons de sécurité. Pour les activer, une fois toutes les phases du développement du service web terminées, on va dans le fichier my.ini cité plus haut puis on commente la ligne bind-address=127.0.0.1 en ajoutant un # au début. Un redémarrage du service MySQL est nécessaire pour la prise en compte du changement.
4- Une fois tout est vérifié côté serveur, tu pourras utiliser SQLWave (ou tout autre client MySQL) depuis le PC distant en utilisant les paramètres de connexion corrects. Si tout va bien tu pourras ensuite passer au code de ton client.
5- En ce qui concerne le code du client, il est préférable d'utiliser pour le descripteur de la connexion une structure MYSQL et non un pointeur sur cette structure. C'est précisé dans la documentation de MySQL. Ceci permet, entre autres, de récupérer les derniers codes et messages d'erreur relatifs à la connexion. Petit exemple:
Code C/C++ :
MYSQL conn;
mysql_init(&conn);
if(!mysql_real_connect(&conn,"192.168.1.15","admin","motdepasse","mabase",3306,NULL,0))
{
printf("Failed to connect to database: Error: %s\n", mysql_error(&conn));
}
//...
mysql_close(&conn);
Ce petit bout de code affiche un message d'erreur décrivant la cause de l'échec de la connexion.
Voilà, j'espère t'avoir aidé un peu.