Bonsoir,

J'aimerais créer une app mobile qui communique avec une bdd MySQL, j'aimerais donc utiliser de l'ajax (le PHP ne pouvant pas être utilisé sur mobile) ma question est donc comment je pourrais faire pour envoyer des requêtes ajax vers un fichier PHP présent sur un serveur web qui s'occuperait de la gestion des requêtes (insertion et récupération) et carrément afficher un retour des requêtes envoyé et reçu sur une page web.
J'ai entendu parler du CORS, mais je me demande si ça s'applique a mon cas (app vers domaine extérieur et non ce cas : domaine vers domaine)

J'ai aussi envisagé d'utiliser nodeJS pour toute la partie requête, mais je trouve que c'est un peu overkill surtout pour une si petite app. Sinon, j'ai également consulté quelque tuto sur Couch / Pouch Db, mais je n'ai pas bien compris qui fait quoi.

7 réponses


Lartak
Réponse acceptée

Bonsoir.
Pour ce qui concerne ton application web, soit le serveur distant, tu peux te faire une petite API Rest, qui te permettra de faire communiquer tes deux applications et afin que ton serveur distant s'occuper de la plus grosse partie des traitements.

Maenhyr
Réponse acceptée

Si tu as déjà codé avec un framework, tu connais le principe des routes, Controller, ... . Une API Rest ne change rien a ce principe hormis qu'au lieu de renvoyer une vue, tu renvoies du JSON.

Laznet
Auteur

Ca me semblais assez clair,

Je développe une app mobile, avec de l'HTML, du CSS et du Javascript que je compile ensuite avec Phonegap (ne connaissant absolument rien en Java),
En suite pour les mot page web et domaine je pense que ça ne posera pas de problème.

Wow ... Attention l'exemple de @saibe est pas à prendre au pied de la lettre, ceux-ci est juste pour t'illustrer une requête dans un cas pratique. On ne gère jamais les requêtes SQL coté client.

De façon plus général :
On isole les roles, ici le backend doit s'occuper de valider, traiter, manipuler, stocker les données, le frondend doit les afficher et parfois les ordonner. Souvent on retrouve une validation coté client pour éviter un surplus de requête innutile mais ce rôle est celui du backend, il est donc nécéssaire de refaire le même contrôle coté backend.

Ce découplage doit se retrouver dans le plus petit élément de ton développement.

plus d'information :

Laznet
Auteur

Bonjour

En faite je sais faire des requêtes ajax depuis une page web "standard".
Mais là j'utilise du web pour créer une app mobile (et compiler avec phonegap).

Et donc ma question était : Comment faire une requête ajax vers un serveur distant ?
Donc une requête de mon appli vers un script PHP présent sur un serveur (ce serveur représentant donc la partie Web du projet).

Car on ne peut pas exécuter de PHP sur une appli vu qu'il n'y rien pour l'interpréter
Dans mon premier post je mentionne le CORS car je crois qu'on ne peut pas faire tout ce que l'on veut avec des requête Ajax (GET, POST et load vers un site distant).

En faite j'aimerais pouvoir écrire du texte sur mon appli et qu'après validation ce soit transmis a ma bdd (sur le serveur externe).
J'ai également entendu parler de nodeJS pour toute la partie back de mon appli. Mais je trouvais ça un peu overkill d'utiliser de NodeJS juste pour la gestion des requêtes.

Laznet
Auteur

L'idée est intéressante Lartak, j'ai déjà cherché a en créer une, mais je ne suis tombé que sur des déjà existante.

Laznet
Auteur

Ok merci :D