Publié par le 4 mai 2011, 0 commentaire

Cela a dû vous arriver : mettre en place un WebService en PHP (client), et vous n’arrivez à gérer les erreurs lorsque le serveur distant ne répond pas.

La première solution consiste à modifier le niveau d’alerte, et à brider les « hurlements » des méthodes Soap en PHP.

La seconde solution consiste à gérer les connexion en amont afin de ne pas lancer le protocole Soap.

 

je m’explique : avant de lancer le code permettant la construction d’une connexion Soap avec votre serveur distant, vous aller tester si une connexion socket peut être ouverte sur votre serveur distant. Si cela est impossible, alors vous gérer l’erreur de manière fatale sans accéder à vos fonction Soap. Ainsi, pas d’erreur non géré.

Voici le code à mettre en place :

 

// on va tester le socket
$return = @stream_socket_client('tcp://monServeurDistant:80', $errno, $errstr, 5);

// si le socket du WS n'est pas connectable
if( $return === false ){
// On vé gérer l'erreur
}
else{
// on exécute le code Soap
}

Avec ceci, vous pourrez gérer les problèmes de connexion avant que la méthode Soap ne génère d’erreur !!

Publié par le 12 juin 2010, 0 commentaire

JSON : c’est un mode de code des données (on parle bien de données, comme dans une base de données) permettant un transfert architecturé logiquement et optimisé pour le réseau. Ce format est de plus en plus utilisé pour charger dynamiquement des données via des requêtes AJAX, ensuite c’est JavaScript qui va s’occuper d’intégrer ces données brut dans l’arbre DOM HTML.

Voici le code pour l’appel jQuery :

var monUrl = "test.php";
$.getJSON( monUrl, function(data) {
for(id in data){
alert( data[id] );
}
}

En PHP, coté serveur, il suffirai de créer un tableau simple de données, puis de passer ce tableau dans cette fonction :

echo json_encode( $monTableau );

 

Une petit aperçu d’un encodage JSON :

{"total":1318,"current":20,"next":20,"previous":-20}

 

C’est un tableau contenant « total », « current », « next », et « previous ».

Quoi de plus simple ?

Ensuite, il vous reste à créer une méthode de reconstruction DOM HTML.
Comment ? :

$('body').append( "<div>" + maData + "</div>" );

 

La méthode append permet d’ajouter dans l’arbre DOM HTML un code HTML.
Bien sûr, vous pourriez pointer autre chose que le body, par exemple un tableau HTML, ou une autre div, ou autre chose encore.

Juste une chose importante : lorsque vous ajouter des lignes dans un tableau HTML, pensez bien à ajouter les tbody pour chaque ligne, sinon IE ne voudra pas reconstruire correctement votre arbre DOM HTML.

Publié par le 7 juin 2010, 0 commentaire

Juste rapidement, les organisateurs du forum PHP 2010 (AFUP) cherchent des conférenciers pour participer au forum PHP 2010.

Je vous mets le lien :

http://www.afup.org/pages/site/?route=actualites/412/experts-php-participez-au-forum-php-2010

Publié par le 2 août 2009, 2 commentaires

L’optimisation de son site Internet …. Très grande problématique, bien souvent compliqué à résoudre, tant de chose pouvant être à l’origine du problème.

Commençons par cette vidéo de PHPTV de décembre 2008 :

Ensuite, attaquons un petit récapitulatif :

  1. Différence back/front.
  2. Optimisation du back.
  3. Optimisation du front.

(Lire la suite…)

Publié par le 1 août 2009, 0 commentaire

Alors que PHP 5.3 vient de sortir, il serait temps de vraiment se spécialiser dans PHP objet. A l’aube de PHP ASPECT (utilisation des tisseurs pour optimiser le contrôleur), le fait de connaitre PHP 5 sur le bout des doigts n’est surement pas le futur.

La société Anaska, fondatrice du très célébre WAMPSERVER, propose des formations au passage de la certification ZEND, certification reconnus dans le monde du développement et attestant des connaissances et des compétences de son propriétaire.

Cette formation possède un coût assez important, mais permet vraiment de justifier le prix d’un bon développement, et permet d’aquérir des compétences précise en sécurité, optimisation, et ergonomie. Les formateurs de chez Anaska sont les fondateurs actifs français du PHP.

La page concernant la formation :

http://www.anaska.com/formations/formation-zend-framework.php