Note that both Google's service and PEAR::SOAP are technically still in beta, so you might encounter the odd bug from time to time. There are other SOAP client libraries available, including the PHP5 SOAP extension and NuSOAP, and while implementation details are different the basic theory is the same as presented here.
Setting up the PEAR SOAP module
Before we can start using SOAP, we had better make sure both PEAR itself and the SOAP module are available. The PEAR package manager is installed by default with PHP 4.3.0 and later, but if you are using an earlier version or it is missing on your system check out the PEAR manual for instructions.
Once you have the package manager installed, you will need to download the SOAP package. On most systems, you can just enter pear install SOAP into a console window. At least, that's the theory. Unless there is a stable release of SOAP available, you will get the message No release with state equal to: 'stable' found for 'SOAP'. Try pear install SOAP-beta to get the most current version of the package at the time of writing, even though it is in beta, or tell PEAR to accept beta versions without complaint by typing pear config-set preferred_state beta.
You may also get one or more messages starting with requires package, followed by Dependencies failed. In this case, try the pear install command again but add the dependencies on the command line. For example, if PEAR complained that the Net_DIME package is missing, try using pear install Net_DIME SOAP instead.
Getting a license key
Once you have installed the SOAP module, the next step is to download the Google Web APIs developers' kit and register to get a license key. This key allows you to make up to 1000 SOAP queries a day free of charge. Visit Google Web APIs (http://www.google.co.uk/apis/) and follow the instructions on the site.
Unzip the developers' kit and put it in a convenient place. It only contains samples for accessing the service with .NET and Java, but most of the documentation applies equally to calling Google from PHP.
Decoding the WSDL file
In the developer's kit main directory you will find a WSDL file called GoogleSearch.wsdl, which you can open in a text editor or XML browser. This file defines exactly what services we can call using SOAP, though the Google documentation is probably easier to read!
However, we can also see what the SOAP module makes of this file. Create a new PHP page and enter the following.
require_once'SOAP/Client.php';
$wsdl=new SOAP_WSDL('GoogleSearch.wsdl');
header('Content-Type:text/plain);
echo$wsdl->generateProxyCode();
?>
Place it somewhere on your server along with GoogleSearch.wsdl and access it through your web browser. Assuming everything is working right, you should get a lot of PHP code output. This code is the result of the SOAP_WSDL client class parsing the WSDL file and converting it into PHP functions. This tells us what functions we can call in a rather more readable form than the WSDL document, and is handy particularly if you are using a poorly documented WSDL service.
So how does the code work? Let's go through it step by step:
1. First, we load the SOAP client file. If this gives an error, it probably means SOAP isn't installed properly and you should read the instructions above or the PEAR manual.
2. We then create an instance of the SOAP_WSDL class, based on the GoogleSearch.wsdl file. This is one of the main classes we are going to use throughout this tutorial: it parses the WSDL file and represents it as PHP.
3. Finally, we output the proxy code as plain text. (As you can see from the output, in SOAP the proxy is a class that represents the WSDL calls available as PHP functions.)
Spell-checking with Google
If you've been using Google for a while (and type as erratically as me), you have probably noticed the "Did you mean..." line that appears if you misspell a word in a search. Thanks to the Google web service, we can add this spelling checker to our PHP applications (though to be honest, it would probably be better to use pspell in an actual application). Enter the following code, with your own license key as the first string.
Simple, isn't it? The first line is trivial and the next two are the same as the previous example. The fourth line creates the proxy object based on the code we looked at earlier, so we can make SOAP requests by calling its methods. Finally, we call doSpellingSuggestion and output the result. Access this page in your web browser, and you should see the word 'dictionary' on its own.
You might see 'Object' instead, in which case SOAP has encountered a problem and returned a SOAP_Fault object. We will look into dealing with these faults sometime in the future, but for now check if you have entered your license key correctly and not managed to exhaust your 1000 query per day limit (!).
Introduction To Web Services
A site hosting is a service that enables you to upload and store a site's HTML documents and their relative files on a web server.This allows the files to make it available on the World Wide Web and hence permits the public to view them. This welfare service provided to public is called web hosting.
Web hosting often closely associated with domain names. The World Wide Web is a massive collection of web sites. All the sites are hosted on computers called web servers all over the world.The web because of its uniquely global nature, a web site is accessible twenty-four hours a day, seven days a week. One can pay to have a 24/7 dedicated Internet connection to an in-house webserver. Many people decides to host their sites with a web hosting provider. Web hosting clients simply upload their web sites to a shared or dedicated webserver, which ISP maintains to ensure a constant, fast connection to the Internet.
A server is a special computer where web sites are hosted, and stored. A computer that stores Web documents and makes them available to the rest of the world.The complicated web of servers consists of computer systems installed with Web-server software and connected to the Internet. In any facility with Internet connectivity, these servers can be found.The process of operating and maintaining one of these servers is called Web hosting.
Typically companies are WPPs with one or more data-center facilities that are connected to the Internet. With respect to service quality and cost web hosting provided by WPPs can vary widely. Many providers consist simply of a room in the basement of a house and a tier-1 (T1) line connected to the local ISP. However, others are corporations with state-of-the-art hosting centers comprising of redundant electrical power sources, a dry pipe-fire suppression system, an experienced operations group, available twenty-four hours a day, seven days a week and redundant fiber paths for high-speed Internet connections.
Types of Web Hosting services are available in all sizes and shapes. It is useful to break down all services into several "classes" in order to understand the most fundamental differences in pricing and functionality. Each "class" speaks the needs of a particular type of customer.
Shared Hosting is the most basic and important of all services. The hosting service providers put several web sites on a single powerful machine.
Dedicated hosting permits a webmaster to rent an entire server. This server is not shared with anybody. This is more flexible than shared hosting (see below), because the webmasters have full control over the server, including choice of operating system, hardware, etc.
Managed hosting is an expanded dedicated hosting service where the web host will manage your dedicated server for you.
Both shared computer environment or on a dedicated computer system, web hosting facility could be provided. Shared hosting service is the best solution when a Web site consists only standard HTML code and receives a small number of visitors. Whereas dedicated hosting service is the best solution when a web site consists of complex common gateway interface (CGI) scripts and proprietary programs and receives a large number of visitors.
Both Krystal L. L. & Tom Counts are contributors for EditorialToday. The above articles have been edited for relevancy and timeliness. All write-ups, reviews, tips and guides published by EditorialToday.com and its partners or affiliates are for informational purposes only. They should not be used for any legal or any other type of advice. We do not endorse any author, contributor, writer or article posted by our team.
Krystal L. L. has sinced written about articles on various topics from Programming. Joeri Cornelissens is the author of this article. For more information about the subject please visit . Krystal L. L.'s top article generates over 1600 views. to your Favourites.
Basement Wall Finishing System If this happens, you will spend some time each year doing repairs. Not only that, it will cost you and eventually spend more