Comment retourner les données de service web à partir d`une base de données

Une utilisation fréquente des services Web est de récupérer des informations à partir d`une base de données. Ici, vous regardez le retour des données simples à partir d`une base de données. Vous utiliserez une base de données qui marque si oui ou non un certain site Web est opérationnel.

Créer la base de données

Le service Web retourne simplement « Up » ou « Down » en fonction du contenu de la table de base de données. Vous utilisez une base de données appelée des sites pour cet exemple. Par conséquent, la première étape consiste à créer la base de données elle-même, avec la commande suivante:

mysqladmin -u lt;yourusergt; -p créer des sites

le dans cette commande serait l`utilisateur que vous avez qui peut créer des bases de données. Si vous utilisez un fournisseur d`hébergement partagé, vous pourriez ne pas être en mesure de créer des bases de données. Si tel est le cas, vous pouvez utiliser la base de données quelle que soit le fournisseur d`hébergement a créé pour vous. Si vous utilisez un serveur MySQL sur votre ordinateur local, l`utilisateur est probablement appelé racine.

La table de base de données sera appelée siteStatus et le CRÉER déclaration pour elle est la suivante:

CREATE TABLE siteStatus (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, siteURL VARCHAR (255), siteStatus VARCHAR (10)) -

Vous pouvez entrer que SQL dans la commande MySQL interface de ligne de commande (CLI) pour créer la table. Assurez-vous de vous connecter ou utiliser la sitebase de données lors de la création de la table, avec la commande:

CONNECT sites-

ou

UTILISATION sites-

Une fois la base de données a été créée, une seule ligne peut être ajouté pour cette démonstration:

INSERT INTO siteStatus (siteURL, siteStatus) VALUES ( `http: //braingia.org`,`Up`) -

Créer le service Web

Le service web est créé par la mise en place de la connexion MySQL, interrogation de la base, puis renvoyer les données. Bien sûr, il y a aussi la gestion des erreurs, en cas de problème avec la requête.

Voici le code pour la création de ce service Web.

lt;? php $ header = "Content-Type: application / JSON"-header ($ header) - $ dbLink = mysqli_connect ( `localhost`, `USER`, `password`, `sites`) - if (! $ dbLink) {$ row = array ("siteStatus" = Gt; "Erreur de la base de données") -print json_encode ($ row) -} else {$ query = "SELECT siteStatus DE siteStatus OU siteURL = `http://braingia.org`"-Si ($ result = mysqli_query ($ dbLink, $ query)) {$ row = résultat-$ gt; fetch_array (MYSQLI_ASSOC) -Si (is_null ($ row)) {$ row = array ("siteStatus" = Gt; "Erreur - Site non trouvé") -}} else {$ row = array ("siteStatus" = Gt; "Erreur générale") -} print json_encode ($ row) -mysqli_close ($ dbLink) -} // Fin état d`autre (pour la connexion de base de données) gt?;

Le code contient une bonne quantité de la gestion des erreurs, y compris la gestion des erreurs si la connexion de base de données ne peut pas être établie, s`il y a un problème avec la requête, ou si le site n`a pas été trouvé. Dans tous ces cas, le résultat final est que la production est envoyée à l`utilisateur grâce à la json_encode ($ row).

Ceci est un point important avec les services Web: Envoyer la sortie au indiquant consommateur de services Web qu`il y avait une erreur, plutôt que de simplement sortir.

Vous devez toujours inclure des commentaires dans la sortie du service Web pour les conditions d`erreur afin que la personne qui appelle le service Web peut gérer l`erreur.

Articles connexes