Par julien lavault le mardi, août 28 2007, 16:58 - Ajax - Lien permanent
Ce tutoriel vous montre comment faire des requêtes en Ajax avec la librairie Javascript Mootols, c'est à dire comment afficher des données provenant d'une base de données en fonction d'une requête SQL sans rechargement de la page et en apportant une touche d'interactivité. Cette application Ajax se greffera sur un site traditionnel, car comme je l'ai déjà expliqué dans un précédent billet, une application Ajax se greffe sur un site déjà existant afin de bénéficier de son référencement et d'une structure stable dans le cas où le client a désactivé le Javascript de son navigateur.
Avant de commencer, il est important de comprendre deux choses qui sont essentielles dans le développement d'un application Ajax: les conteneurs et les gestionnaires d'évènements (je parle aux non initiés !!!).
Les conteneurs
Les conteneurs vont vous permettre de délimiter les zones d'affichage des données, ce sont des 'div' que l'on identifie grâce à leur 'id'. Il est important de bien les nommer afin de pourvoir les retrouver facilement !
Les gestionnaires d'évènements
Les gestionnaires d'évènements vont vous permettre de récupérer les évènements de la page suivant les actions de l'utilisateur. Exemple: quand l'utilisateur 'click' sur un bouton, quand les données sont chargées avec succès 'onSucces' ...
Mootools dispose de puissants gestionnaires d'évènements qui vont vous permettre de contrôler l'ensemble des actions de l'utilisateur et des différents états de la page.
Dans un premier temps il faut développer le site normalement pour qu'il fonctionne en totale indépendance du Javascript et pour être référencé sous Google. Conservez vos méthodes et outils traditionnels pour concevoir votre site, il faut juste bien définir le nom des 'id' des éléments qui seront utilisés par nos scripts Ajax, par exemple le conteneur qui affiche les données, le menu qui déclenche les requêtes Ajax, etc...
Une fois le site construit, nous allons développer notre applications Ajax, pour se faire nous aurons besoin de:
- Notre page XHTML avec un menu en liste,
- La librairie Javascript Mootools à inclure dans l'entête de la page,
- Un fichier Javascript qui exécute la requête Ajax,
- Un fichier PHP qui traite la requête et retourne les données à afficher.
Comme le développement de l'application Ajax est indépendant de votre site, elle peut être déployée sur un site déjà existant sans nécessité de modification sur la structure du site! Il vous faudra alors uniquement inclure vos librairies Javascript et Mootools et créer vos fichiers PHP qui effectueront vos traitements coté serveur.
Débutons désormais le développement de l'application Ajax, tout d'abord il faut inclure dans l'entête la librairie Mootools que vous pouvez télécharger sur le site de Mootools.net, et le script Javascript que nous allons développer. Le principe de base est de déclencher la requête Ajax lorsque l'on 'click' sur un lien du menu. Voici le code XHTML de notre page, comme vous pouvez le constater, il n'y a aucun script ou gestionnaire d'évènements dans notre document XHTML, juste des balises! Tout le contrôle des évènements va se faire depuis notre script Javascript !
<ul id="myElement">
<li><a href="test/voila1/">Test1</a></li>
<li><a href="test/voila2/">Test2</a></li>
<li><a href="test/voila3/">Test3</a></li>
<li><a href="test/voila4/">Test4</a></li>
<li><a href="test/voila5/">Test5</a></li>
<li><a href="test/voila6/">Test6</a></li>
</ul>
Maintenant, nous allons récupérer l'évènement 'click' avant de déclencher notre requête Ajax, et bloquer le pointage naturel du lien vers la page correspondante avec Event(E).stop()
.
// On applique le gestionnaire d'évènement à tous les liens du menu liste
var list = $$('ul#myElement li a');
list.each(function(element) {
// Gestionnaire d'évènement 'click'
element.addEvent('click', function(e){
// On stoppe le pointage naturel du lien pour ne pas recharger la page
e = new Event(e).stop();
// Ici notre requête Ajax décrite plus bas
});
});
Un fois que l'on a récupéré l'évènement 'click', il est temps de déclencher notre requête en Ajax! Pour ce faire nous allons créer un objet 'Ajax' de Mootools avec comme paramètre l'url du fichier PHP qui va traiter notre requête, la méthode de transfert (post ou get), l'encodage des données (uft-8, iso ...), le cadre du conteneur dans lequel vont être affichées les données transférées (update) qui doit être renseigné par le nom de l'id du conteneur. Et enfin, un gestionnaire d'évènements 'onComplete' qui prend en paramètre une fonction, cela permet par exemple de mettre un effet d'apparition sur le conteneur qui affiche les données. Dans un deuxième temps il faut paramètrer la requête Ajax grâce à la méthode 'request' avec les variable à envoyer au fichier PHP de traitement. Voici le code Javascript de la requête Ajax:
// Requête ajax
var url = 'ajax.php';
var ajaxRequest = new Ajax(url, {
method: 'post',
encoding: 'uft-8',
onComplete: showSucces(),
update: log
});
var requestVar = {
var1: 'voila la variable numéro1',
var2: 'voila la variable numéro1',
var3: 'voila la variavle numéro1',
var4: 'voila la variable numéro1',
var5: 'Tutoriel par JFLAD'
};
ajaxRequest.request(requestVar);
Il faut maintenant traiter la requête Ajax avec un fichier PHP qui va retourner le contenu à afficher:
<?php
// On récupère les données
$var1 = $_POST['var1'];
...
// Traitement des données
// Içi vous effectuez vos requêtes SQL et traitement divers
// On retourne le contenu a affiché
if(isset($_POST['var1'])){
print '<p>Votre contenu à afficher...</p>';
}
?>
Le traitement en PHP doit être développé comme à l'habitude, à la différence près que vous allez envoyer votre contenu à afficher à votre page XHTML plutôt que de l'afficher directement. Néanmoins je vous conseille de sécuriser vos fichiers PHP de traitement avec par exemple une session de tests surtout lorsqu'il exécute des requêtes insert/delete
dans vos bases de données afin d'éviter des injections SQL!
Dans un prochain tutoriel, je vous montrerai comment apporter une touche d'interactivité à vos évènements grâce à Mootools et l'utilisation de sa class Fx
!
Commentaires
Bonsoir,
C'est moi qui ne comprend pas ou comment est ce que l'on sait que l'utilisateur a cliquer sur le choix 1 ? Je ne vois pas dans ce code quelque chose qui indique sur quelle balise <a> on a cliqué...
merci de m'éclairer
Bonsoir, en faite le principe est d'assigner un gestionnaire d'évènement à l'ensemble des balise <a> du menu avec la fonction 'list.each(function(element) ' qui va scanné l'ensemble des éléments du menu. Puis le gestionnaire d'évènement qui détecte si on a cliqué est 'element.addEvent('click', function(e){...}'.
Voilà , si tu as encore un problème n'hésite pas !
Ok et merci
mais
Donc la valeur choisie se trouve dans "element", si je fait :
alert(element.getText()); je reçois donc en retour :"http:// ......."
mais ensuite dans le traiment Ajax, je ne vois rien envoie en POST la valeur précédement récupérée, non ? Vous n'envoyez que des "RequestVar"
Glupsss
merci
En faite chaque paramètre de l'objet 'RequestVar' est une variable envoyée en POST, donc pour les récupérer dans le fichier PHP un simple '$maVar = $_POST['maVar']' suffit ! Ensuite il faut effectuer le traitement et retourner le contenu à afficher.
J'ai l'impression qu'il manque certains éléments :
définiton de showSucces et div 'log'.
Pourriez vous poster un petit exemple fonctionnel utilisant ce code ?
Merci pour ce tuto.
Je vais prochainement mettre en ligne un site qui reprend l'ensemble de ces fonctionnalités, je vous teindrais informer dès qu'il sera mis en ligne. Autrement en ce qui concerne la fonction 'showSucces ' elle est personnalisable suivant l'effet voulu ! Je vais mettre en ligne un article pour illustrer son utilisation !
bonjour, j'ai cree une page pour une boutique, j'ai un affichage en accordeon, avec le nom des categories pour chaque element et les produits dessous. J'aimerais intégrer le plugin mootools accordion afin qu'a la suite du renvoi de ma requette (showSucces()), j'ai mon div qui s'affiche avec l'effet accordeon. j'epère que qq m'a compris ? merci
salut et merci, je savais pas trop comment passer des arguments dans un post ajax facon mootools..
qu'est-ce qu'il y a comme syntaxe possible pour la variable requestVar de ton exemple ?
j'ai vu qu'on pouvait passer la form telle quelle juste en sepcifiant son id mais peut-on passer des variables comme "var1=truc&var2=machin&var3=autrebidule" ?
j'ai vu sur MT la fonction Object. toQueryString, mais j'hesite.. est-ce que tu pourrais m'eclairer ? je trouve pas de refs sur MT.
Salut!
Juste une remarque sur le tuto. Une erreur s'est glissée dans la configuration de l'objet mootools pour la requete Ajax.
La propriété encoding peut contenir "utf-8" (pas "uft-8") ou "ISO-8859-1" en général.
Cest quand meme mieux que Miss France
Good job done about the post, thank you!
Their production is of a very high quality!
Great post. I appreciate you bringing this forward.
Au cours des derniers jours de nombreux que je cherchais pour les didacticiels sur des requêtes Ajax avec la demande bibliothèque JavaScript Mootols.My est désormais répondre parce que c'est le grand blog tutoriaux qui m'a beaucoup aidé à apprendre comment faire une demande à la bibliothèque Javascript Mootols .
That is not very easy to get high ranking. You would not do that if you are not a professional in link building. Do not worry about these issues! You are able to find professional forum posting services to optimize your site. Professionals realize how to do that. Thus, there is not reason to worry about!
The dissertation services are presently looking for the superb research related to this good post for the dissertation international performing.
I’ve bookmarked this because I found it interesting. I would be very interested to hear more news on this. Thanks!
http://www.abmahnberatung.de
http://www.charlottegaragedoorsrepa...
I wish I'd discovered this site before I started my business. I would have avoided a lot of mistaks.
http://www.rentseeker.ca/Calgary.as...
http://utahmore.com
Saying thanks will not just be enough, for the extraordinary lucidity in your writing. I will immediately grab your rss feed to stay privy of any updates
http://www.southwestdocumentsolutio...
http://www.Pick4Strategy.com
Hello, my group is just establishing our first website, searching and working out what is needed. This blog stuck out right away. I'm fired up about this, and adore the design of your site. Are you able to let me know what "theme" it is?
http://www.lazysackchairs.com/
http://www.sendingflowersfast.com
Your web site is top-notch I will have to read it all, thank you for the diversion from my classwork!
http://www.SANJOSEMOVING.INFO
http://www.FORTWORTHMOVING.INFO
Ain't that good?
I have read not one article on your blog. You're a big lad
Maintain up the excellent perform people this really brilliant.
http://credit-consommation.financei...
http://www.sendflowersflowerdeliver...
The articles you have on your website are always so enjoyable to read. Good work and I will be returning often.
http://www.howtogetpregnanthelp.org
http://www.txsfautoinsurance.com/Da...
I seriously enjoy your posts. Thanks
I thought it is going to be some boring old post, but it really compensat for ours time. I will posted a link to the article on our blog. I am sure ours visitor will thought that very useful
http://jimmerposter.com
http://www.metropolitanmovers.ca
Ooohh, Just wanted to respond. I thoroughly loved your post. Keep up the great work.
http://outersports.com/mens-hoodies...
http://cheapairportcarrentaldeals.c...
Saying thanks will not just be enough, for the extraordinary lucidity in your writing. I will immediately grab your rss feed to stay privy of any updates
http://www.tungstenringsonline.com/...
I have not found what I wanted
I seriously enjoy your posts. Thanks
I bookmark this post for future reference,I got a lot of information from this post.
I bookmark this post for future reference,I got a lot of information from this post.
Amazing post, truly!
Your blog caught my eye. Thanks for sharing this information.
http://www.signsplusbcs.com/
http://WWW.BUYSOCIALPOWER.COM
Superb work! This info will be very useful for a lot of people. I love the blog very much. Thanks for sharing the info guys.
I like the writing structure of your blog and it does a pretty decent job of presenting the material.
http://www.ccsportsgroup.com
http://ollyshoes.com/Brands/ugg-kid...
thank you for helpful tips and simply good info
I am totally agree with your oppinion.this blog post is very encouraging to people who want to know these topics.
http://www.tigermetals.com
http://www.eastridgeflowers.co.nz
Love this place, check out this quote Prince Andrew's joyous feeling was considerably weakened as he approached the door of the minister's room.
Well done, keep up the good work. Here is one of my favorite quotes: His fertile mind instantly suggested to him a point of view which gave him a right to despise the adjutant and the minister.
Wonderful job recapping this important intel. Here is one of my favorite quotes: Away from the smell of powder, they probably think it easy to gain victories!" he thought. His eyes narrowed disdainfully, he entered the room of the Minister of War with peculiarly deliberate steps
What a joyous occasion coming here to read this fine writing. Here is one of my favorite quotes: This feeling of disdain was heightened when he saw the minister seated at a large table reading some papers and making pencil notes on them, and for the first two or three minutes taking no notice of his arrival.
I will definitely bookmark this site, thanks for your continued hard work. Here is one of my favorite quotes: A wax candle stood at each side of the minister's bent bald head with its gray temples. He went on reading to the end, without raising his eyes at the opening of the door and the sound of footsteps.
Terrific job explaining this key intel. Here is one of my favorite quotes: "Take this and deliver it," said he to his adjutant, handing him the papers and still taking no notice of the special messenger.
Excellent job you have done here, you are a superior writer. Here is one of my favorite quotes: Prince Andrew felt that either the actions of Kutuzov's army interested the Minister of War less than any of the other matters he was concerned with, or he wanted to give the Russian special messenger that impression.
Any way I'll be subscribing to your feed and I hope you post again soon.
The multi tool is a hand tool that incorporates several tools into a single, portable device; the Swiss army knife represents one of the earliest examples. Other tools have a primary purpose but also incorporate other functionality. Thanks a lot.
I’m a long time watcher and I just believed I’d drop by and say hello there for your very first time.
I seriously enjoy your posts. Thanks
You are my role models. Thanks for the article
thank you for helpful tips and simply good info
i can agree with the article
r u sure that is true?
Not so bad. Interesting things here
really good things here, just thanks
hey buddy, this is a very interesting article
Read it, liked it, thanks for it
I am looking for a competent writer, long time in this area. Excellent article!
I have read not one article on your blog. You're a big lad
This is exactly what I was looking for, thanks
Thank you for your work. Article helped me a lot
Really worthwhile article. Pay attention
Hey, buddy, I have not figured out how to subscribe
I am a long time ago I read your blog and has long been saying that you're a great writer
Say "thanks" you to your parents that they gave you the world
It's super blog, I want to be like you
You are my role models. Thanks for the article
Beautiful essay, got the pleasure of reading
I found what I was looking for. great article, thanks
Subscribed to your blog, thanks
I can not figure out how do I subscribe to your blog
Thank you for what you have. This is the best post I've read
I will not talk about your competence, the article simply disgusting
You just copied someone else's story
All material copied from another source
I'll complain that you have copied material from another source
This is the worst article of all, I've read
You are the worst writer
Thank you, this is the worst thing I've read
Reading this article - the gift of your time
Learn to write himself, the article from another source
I would like to uslysht a little more on this topic
I have not found what I wanted
This is a set of words, not an essay. you are incompetent
if you want, I'll write you articles. Copywriter looking for work
I have a few question to you, write to those I do not e-mail
I can not subscribe to your channel
Blog moved out in chrome
Hi! Your article rocks as well as being a legitimate wonderful understand!??
I can??t really help but admire your blog site, your site is adorable and nice
My spouse and I stumbled over here different website and thought I should check things out.
I like what I see so i am just following you. Look forward to exploring your web page yet again.
There is noticeably a bundle to comprehend this. I assume you have made specific nice points in features also.
Lately, I didn’t give lots of consideration to leaving feedback on blog page posts and have placed comments even much less.
Reading by way of your nice content, will help me to do so sometimes.
The telephone is a communication tool that interfaces between two people engaged in conversation at one level. And between each user and the communication network at another. It is in the domain of media and communications technology that a counter intuitive aspect of our relationships with our tools first began to gain popular recognition. Thanks.
Substitution as make shift is when human ingenuity comes into play and a tool is used for its unintended purpose such as a mechanic using a long screw driver to separate a cars control arm from a ball joint instead of using a tuning fork. In many cases, the designed secondary functions of tools are not widely known. Thanks a lot.
Abzuschmirgeln tun Geld verdienen falsifiziert elidieren abschleppen vorausdenken und , derselbe ethisch elfte vollstaendig erwidert Waehrungseinheit pauschalisieren erfragen tun sonder anzusiedeln, blaettern gepfropft kuehn dasselbe ziemlich Konsumption tun.
I’m a long time watcher and I just believed I’d drop by and say hello there for your very first time.
I seriously enjoy your posts. Thanks
You are my role models. Thanks for the article
thank you for helpful tips and simply good info
i can agree with the article
r u sure that is true?
Not so bad. Interesting things here
really good things here, just thanks
hey buddy, this is a very interesting article
Read it, liked it, thanks for it
I am looking for a competent writer, long time in this area. Excellent article!
I have read not one article on your blog. You're a big lad
This is exactly what I was looking for, thanks
Thank you for your work. Article helped me a lot
Really worthwhile article. Pay attention
Hey, buddy, I have not figured out how to subscribe
I am a long time ago I read your blog and has long been saying that you're a great writer
Say "thanks" you to your parents that they gave you the world
It's super blog, I want to be like you
You are my role models. Thanks for the article
Beautiful essay, got the pleasure of reading
I found what I was looking for. great article, thanks
Subscribed to your blog, thanks
I can not figure out how do I subscribe to your blog
Thank you for what you have. This is the best post I've read
I will not talk about your competence, the article simply disgusting
You just copied someone else's story
All material copied from another source
I'll complain that you have copied material from another source
This is the worst article of all, I've read
You are the worst writer
Thank you, this is the worst thing I've read
Reading this article - the gift of your time
Learn to write himself, the article from another source
I would like to uslysht a little more on this topic
I have not found what I wanted
This is a set of words, not an essay. you are incompetent
if you want, I'll write you articles. Copywriter looking for work
I have a few question to you, write to those I do not e-mail
I can not subscribe to your channel
Blog moved out in chrome
Hi! Your article rocks as well as being a legitimate wonderful understand!??
I can??t really help but admire your blog site, your site is adorable and nice
My spouse and I stumbled over here different website and thought I should check things out.
I like what I see so i am just following you. Look forward to exploring your web page yet again.
There is noticeably a bundle to comprehend this. I assume you have made specific nice points in features also.
Lately, I didn’t give lots of consideration to leaving feedback on blog page posts and have placed comments even much less.
Reading by way of your nice content, will help me to do so sometimes.
Thank you, this is the worst thing I've read
I have a few question to you, write to those I do not e-mail
Great post, this is always a subject that requires more attention to understand, and sometimes we stay all
Je conviens avec vous. Vous avez donné à nous avec une telle grande collection d'informations. Excellent travail que vous avez fait en les partageant à tous simplement superbe.
The MooTools JavaScript framework includes support for handling Ajax calls and makes coding for Ajax a lot easier, although there are still some wrinkles. Perhaps the most important benefit of using the MooTools framework for Ajax is that it is cross-browser and so concerns about ensuring that your code will work on all browsers can be mostly left to one side.In the following text you will learn how to develop a simple Ajax request-response pair using MooTools in Joomla! 1.5. This simple example is then extended to cope with out of sequence server responses. In a typical Ajax application you will want to pull some data from a server, which could be your own Joomla site or a remote web service, and update some element on the web page with the data returned by the server. Thanks for sharing.
Every JavaScript framework has its philosophy, and moorools is interested in taking full advantage of the flexibility and power of JavaScript in a way that emphasizes greater modularity and code reuse. Moo tools accomplishes these goals in a way that is intuitive to a developer coming from a class based inheritance language like java with the moo tools class object. Thanks.
I will not talk about your competence, the article simply disgusting
I am looking for a competent writer, long time in this area. Excellent article!
That was exactly what I was looking for. You have done a wonderful job communicating your message. Keep up the good work.
http://www.financeimmo.com/Courtier...
http://www.nvsfautoinsurance.com/Ne...
Perhaps the most important benefit of using the MooTools framework for Ajax is that it is cross-browser and so concerns about ensuring that your code will work on all browsers can be mostly left to one side.In the following text you will learn how to develop a simple Ajax request-response pair using MooTools in Joomla. Thanks.
Beautiful essay, got the pleasure of reading
This simple example is then extended to cope with out of sequence server responses. In a typical Ajax application you will want to pull some data from a server, which could be your own Joomla site or a remote web service, and update some element on the web page with the data returned by the server. Thanks for sharing.
I was going through a big loss in my online business but since I purchased facebook fans and likes from www.fanbullet.com I saw a huge traffic to my website. They have given 100% real facebook likes and some of them are my customers now.
I like the writing structure of your blog and it does a pretty decent job of presenting the material.
http://www.metropolitanmovers.org
http://www.sjifs.com
Hello, my group is just establishing our first website, searching and working out what is needed. This blog stuck out right away.
http://www.tex46.com
http://www.buyqualitywebtraffic.com
I appreciated your kind way of knowledge.Great Stuff Here..hope more to come.
Saying thanks will not just be enough, for the extraordinary lucidity in your writing. I will immediately grab your rss feed to stay privy of any updates
http://directwhite.com
's facial area is equal to 1 and also a fifty percent occasions its width http://www.wereshoes.net/ugg-classi... . Spherical Faceif the size and width of one's experience is practically equal. Longif your experience is extended than it truly is broad http://www.wereshoes.net/ugg-classi... http://www.wereshoes.net/ugg-kids-b... http://www.wereshoes.net/ugg-ultra-... . Deciding on a Wedding ceremony Hair Accessory Now which you know your facial area form, you are able to make an knowledgeable choice while you pick the best kind of accessory to border your facial area. Components for an Oval Facial area In case you have an oval encounter form, you are able to put on almost any design of accessory as your experience is effectively proportioned. nevertheless preserve in thoughts the groom's top if you would like a tall tiara as you might not wish to overpower him http://www.wereshoes.net/ugg-classi... . Equipment to get a Lengthy Deal with Mainly because your facial area is currently lengthy, http://www.wereshoes.net you
The tip should be in bills, not change. For the housekeeper to be sure that the tip is intended for them, it should be left in a conspicuous place such as on the pillow. You may also want to leave a note with it. If you are only leaving a tip when you check out it can be left most anywhere and the housekeeper will assume that it is intended for them. Either method will work, but leaving a small tip daily will often let the housekeeper know that you are a considerate guest and may earn a few special touches. Thanks a lot.
Regards,
Yoga is tremendously beneficial.Yoga is help in improving the brain power,mental as well as physical stregth,sexual life.Yoga is the one type of exercise which makes feel relaxing,more energetic and fresh.
I like what I see so i am just following you. Look forward to exploring your web page yet again.
Class is effortlessly mixed and extended with other class instantiations allowing for the greatest focus of moo tools, code reuse achieved through maximizing the power of java script's prototypical inheritance, but in a Class object syntax more familiar to classical inheritance models. Thanks.
acedkq
i can agree with the article
I found what I was looking for. great article, thanks
Thank you for this great information, you write very well which i like very much. I am really impressed by your post.
I'm sorry for this intrusion, I see from your site that we are very much into the same things.
http://www.webcamdames.nl
http://www.toronto-moving.ca
The HCG side effects one will have to keep an eye out for include the onset of headaches, irritability, restlessness, slight water retention, tenderness of breast tissue, swelling of the injection sight, and depression.
Hey This is some great thing never tought of it like that
http://www.toronto-moving.ca
http://www.easytorontomovingmovers....
i can agree with the article
I will not talk about your competence, the article simply disgusting
Excellent article. I was checking continuously this blog and I am quite impressed! Extremely useful info specially the first part. I care for such info much. I was looking for this particular info for a long time. Thank you and good luck.
All material copied from another source
Ooohh, Just wanted to respond. I thoroughly loved your post. Keep up the great work.
http://www.blacklogic.com
http://www.carsoldforcash.com/
Thanks...Very good info, I feel a lot more people need to read this.
I will not talk about your competence, the article simply disgusting
I can??t really help but admire your blog site, your site is adorable and nice
Hey, I just hopped over to your site via StumbleUpon. Not somthing I would normally read, but I liked your thoughts none the less. Thanks for making something worth reading.
http://www.buyadulttoys.ca
http://www.elseinc.com/5s-audit-che...
Thank you for what you have. This is the best post I've read
I like what I see so i am just following you. Look forward to exploring your web page yet again.
Reading this article - the gift of your time
I am a long time ago I read your blog and has long been saying that you're a great writer
This is the worst article of all, I've read
This is a great inspiring article.I am pretty much pleased with your good work.You put really very helpful information.
http://www.writers-write.co.uk
http://www.writers-write.co.uk/cust...
http://www.writers-write.co.uk/Arti...
Keep blogging. Looking to reading your next post.
http://www.writers-write.co.uk/cove...
http://www.writers-write.co.uk/essa...
http://www.writers-write.co.uk/scho...
http://www.writers-write.co.uk/cv-w...
Very properly published details. It will be effective to anybody who uses it, such as me. Keep up the superb operate. For sure I will examine out more content. This web site seems to get a lot of website visitors.
I wanted to thanks for your time for this wonderful read!! I definitely enjoying every little bit of it and I have you bookmarked to check out new stuff you blog post.
http://www.mightydesigners.com
Hello there buddy, quite enlightening publish. Make sure you maintain them coming.
http://cashyourtech.com/sell-mobile...
http://www.drhamlett.com
I seriously enjoy your posts. Thanks
Great post. Thanks. Pleased I got chance to read it and find out more.
http://mydisabilityplans.com/
http://www.automobility.com.au/
Really appreciate you sharing this post.Really thank you! Want more.
Nicely presented information in this post, I prefer to read this kind of stuff. The quality of content is fine and the conclusion is good. Thanks for the post.
I found what I was looking for. great article, thanks
if you want, I'll write you articles. Copywriter looking for work
Thank you, this is the worst thing I've read
All material copied from another source
I have read not one article on your blog. You're a big lad
Players must kick the ball into fair territory and run to first base. If a player is already on first base, he advances to second base, and so on. Players must make it to the base without being tagged out by an opposing player. A kicker who rounds all three bases and tags home plate scores a run. The team with the most runs at the end of five innings wins the game. Thanks for sharing information.
Regards,
I know what you mean and I tried it in the past, but without results
Good idea for giving a gift to our love ones. Thanks for sharing this with us found it informative and interesting. Look forward for more updates
My spouse and I stumbled over here different website and thought I should check things out.
However, there have been a number of developments in the technologies used in an Ajax application, and the definition of the term Ajax. In particular, it has been noted that JavaScript is not the only client side scripting language that can be used for implementing an Ajax application, other languages such as VB script are also capable of the required functionality. Thanks.
Really I am impressed from this post .This one is great and is really a good post. I think it will help me a lot in the related stuff and is very much useful for me. Very well written I appreciate & must say good job.
Really I am impressed from this post .This one is great and is really a good post. I think it will help me a lot in the related stuff and is very much useful for me. Very well written I appreciate & must say good job.
This is absolutely a commendable post indeed. You share splendid piece of information here. Thank you for attributing this informative post! So please keep me updated.
I like what I see so i am just following you. Look forward to exploring your web page yet again.
I found what I was looking for. great article, thanks
I found what I was looking for. great article, thanks
Simple but interesting blog post I must say. I’ve just added your RSS to my google reader! =)
http://www.metropolitanmovers.org/
http://www.absolutecarports.com/Awn...
Where did you got this much info on your blog from?
http://www.easylius.eu/
http://www.therespiratorytherapist....
Hahaha! Nice! I like your choice of topic! =D
http://disabilityinsuranceillinois....
http://mydisabilityplans.com/
You have really interesting blog, keep up posting such informative posts!
http://www.buyrealfansandlikes.com/
http://www.metropolitanlogistics.co...