blog sur le développement web, jquery,css3, Magento, Symphony, php et bien d'autres choses

Archives de la catégorie ‘Uncategorized’

PHP web services : comment créer un service web php avec soap

image creer web services php

Cet article est un petit pense bête pour expliquer simplement comment créer un service web. Nous allons donc voir comment retourner un tableau d’informations en php.

1 – telecharger la librairie NuSOAP

2 – Création de l’objet serveur et définition de l’objet à renvoyer dans la réponse, notre tableau


/**
* Coté serveur
*
*/
<?php
// on inclut la librairie que l'on a téléchargé
include('lib/nusoap.php');
//on crée l'objet server
$serveur = new soap_server
$serveur->wsdl->addComplexType(
'Contact',
'complexType',
'struct',
'all','',
array(
'nom' => array('name' => 'nom', 'type' => 'xsd:string'),
'prenom' => array('name' => 'prenom', 'type' => 'xsd:string'),
'web' => array('name' => 'web', 'type' => 'xsd:string'),
'tel' => array('name' => 'tel', 'type' => 'xsd:int'),
)
);

$serveur->wsdl->addComplexType(
'ContactArray',
'complexType',
'array','',
'SOAP-ENC:Array',array(),
array(
array('ref'=>'SOAP-ENC:arrayType','wsdl:arrayType'=>'tns:Contact[]')
),
'tns:Contact'
);

// on définit la méthode qui sera appelé par le client
$serveur->register('getContacts',
array(), //pas de paramètre en entré
array('Contact' => 'tns:ContactArray')
);

// on implémente la méthode

function getContacts() {
$result = array();
$req="SELECT * FROM `Contacts`";
$res=mysql_query($req);
while($obj=mysql_fetch_object($res)) {
$result[] = array( 'nom' => $obj->nom, 'prenom' => $obj->prenom,'email'=>$obj->email, 'tel'=>$obj->tel);
}
return $result;
}
?>

et l’appel coté client


<?php

/**

* Coté client

*

*/

require_once('lib/nusoap.php');

// url du fichier qui contient le code que l'on a définit juste avant

 $serverpath ='http://url-vers-le-fichier-php-du-web-service';

$client = new soapclient($serverpath);

// on appelle la fonction get client

$result = $client->call('getContacts');

// on affiche la requete

print($client->request);

?>

Pour cet article, j’ai complété cette source : www.jkraft.fr

PHP : remplir les propriétés d’un objet PHP à partir d’un tableau

On est souvent confronté à ce shéma lors de nos développement, on à d’un un tableau php qui contient des informations, de l’autre notre objet ayant des propriétés, lesquelles doivent être renseignées avec les informations du tableau. Voici une petite fonction qui permet de faire ce traitement de manière générique. Si vous connaissez uneautre fonction php qui permet de remplir un objet php à partir d’un array plus rapidement encore je suis preneur.


// mon tableau de données
$array = array('prop1' => 'foo', 'prop2' => 'bar');
// mon objet
$object = new maRandomClass();

// ma fonction qui va injecter les données dans l'objet
function feed($arr, $object) {

    foreach($arr as $key => $value)
    {
        // si la clef du tableau est effectivement une propriete de mon objet
        // alors je renseigne la propriete de mon objet avec la value
        if(property_exists(get_class($object), $key)) {
            $object->{$key} = $value;
        }
    }

    return $object;
}

// on recupere l'objet avec les nouvelles value
$object = feed($array, $object);

 

Meteor : synchroniser vos données cotés client automatiquement de manière asynchrone en javascript

Image

Meteor est une plateforme javascript qui vous permettra de mettre en temps réels à jour l’affichage coté client, lorsque des informations de votre base de données seront mise à jour. bref un outil super intéressant pour vos applications web. à tester impérativement, ça va faire partie du BA ba pour les applications de demain.

 

voici la documentation de meteor

 

 

 

 

PHP : protéger une image grace à un watermark

watermarked php script

Pour ceux qui souhaitent ajouter leur marque ou leur nom sur une ou des images, voici une fonction qui pourra vous aider:

Cette fonction colle une image Png (la marque )  sur une image Jpeg (l’image à protéger) et ça donne ceci :


/**
 * Water marked les images a partir du stamp
 * 
 * @param type $file
 * @param type $fileName
 */
function WM($file, $fileName) {
    // Load the stamp and the photo to apply the watermark to
    $stamp = imagecreatefrompng('img/stamp.png');
    $im = imagecreatefromjpeg($file);

    //attribution des marges et recuperation des largeurs x et y du stamp
    $marge_right = 10;
    $marge_bottom = 10;
    $sx = imagesx($stamp);
    $sy = imagesy($stamp);

    // application du stamp sur l'image
    // positionnement du stamp

    $imgX = imagesx($im) - $sx - $marge_right;
    $imgY = imagesy($im) - $sy - $marge_bottom;

    $iY   = imagesy($stamp);
    $iX   = imagesx($stamp);

    imagecopy($im, $stamp, $imgX , $imgY, 0, 0, $iX, $iY);

    // si vous voulez que l'image s'affiche dans le navigateur 
    // apres traitement
    // décomentez la ligne ci dessous
    // header('Content-type: image/png');

    // une fois traité, j'enregistre mon image dans 
    // un dossier tagged contenu dans /img
    // si ce dossier n'existe pas il sera crée
    if(!is_dir('img/tagged')) {
        mkdir('img/tagged');
    }
    imagepng($im,'img/tagged/'.$fileName);
    imagedestroy($im);

}

mot clefs pour trouver mon site web google en PHP

Pour ceux qui voudraient savoir quels mots clefs ont été utilisé pour trouver leur site internet, voici un petit code PHP qui va récupérer les mot clefs passés au moteur de recherche.

/**
 * 
 * @param type $url
 * @return string
 */
 function parse_keyword($url = false) {

    if(!$url && !$url = isset($_SERVER['HTTP_REFERER']) ?
                            $_SERVER['HTTP_REFERER'] : false) {
        return '';
    }

    $parts_url = parse_url($url);
    $query = isset($parts_url['query']) 
                 ? $parts_url['query'] :
                      (isset($parts_url['fragment']) ?
                          $parts_url['fragment'] : '');
    if(!$query) {
        return '';
    }
    parse_str($query, $parts_query);
    return isset($parts_query['q']) ?
               $parts_query['q'] :
                   (isset($parts_query['p']) ?
                        $parts_query['p'] : '');

    }

   public function snif() {
    $arToReturn = array();
    $actualUrl  = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
    $url        = $_SERVER['HTTP_REFERER'];
    $reponse    = $this->search_engine_query_string($url);

    // ce code n'est que de la mise en forme,
    // a vous de le transformer comem bon vous semble

    $arKw   = explode(' ', $reponse);
    $arKw['complet'] = $reponse;
    $arToReturn[$actualUrl] = $arKw;
    var_dump($arToReturn);die;
   }

    // appel de la fonction 
    $this->snif();

Developpement Web : les 10 articles les plus consultés sur Benjion’s blog ces 12 derniers mois

Voici donc le top 10 des articles les plus consultés concernant le développement web sur Benjion’s blog

1 Optimiser le poid d’un PDF: compresser optimiser et réduire la taille d’un fichier PDF avec deux logiciels gratuits: doPDF et PDFcompressor

2 Vous cherchez un développeur web php sur Lyon ? :cv développeur web PHP MAGENTO DRUPAL SYMFONY 2 sur Lyon et jeune développeur web php de Lyon

3 Vous souhaitez manipuler un fichier Excel avec PHP ? :utiliser et lire un fichier excel XLS avec la librairie PHPExcel

4 La petite astuce pour réinitialiser les paramètres de vos cartes réseau sous DOSréinitialiser les paramètres de la carte réseau via commandes DOS

5 La petite astuce pour copier/coller un fichier sous DOScopier / coller un fichier ou un dossier avec un fichier bat avec des commandes DOS

6 Encore une astuce pour manipuler les fichiers Excel avec PHP : Librairie PHPExcel, créer et écrire dans un fichier et plein d’autres astuces …

7 Faire défiler du texte avec jquery : texte défilant avec jquery

8 Afficher des documents comme dans un explorateur : JQUERY FILE TREE – un “folder browser’ efficace

9 Lier sa boutique Prestashop à son compte paypal : Prestashop module Paypal et clef API : comment configurer le module

10 Serializer les valeurs de vos formulaires pour les récupérer avec jquery : Jquery – serialize() ou comment envoyer les valeurs d’un form de manière sérializé en jquery

WebCodeSniffer : un outil en ligne permettant d’utiliser code sniffer en ligne

A la base, PHP code  sniffer est un script php qui permet de garder un code respectueux des conventions et standard de développement. en vue d’avoir un code propre clair, et donc d’éviter les bugs et prévenir la création de futurs bugs. Son utilisation se fait par ligne de commande. Et peut paraitre fastidieuse.

Avec web code sniffer, bénéficier de cet outil pour surveiller vos scripts en ligne via votre navigateur sans passer par la console. vos projets vous seront présenté sous forme d’arborescence, sélectionnez l’un de vos script, sélectionnez le standard de référence puis cliquez sur sniff. un rapport est généré vous indiquant les différentes erreurs ou warning.

logo webcodesniffer

web code sniffer

En route vers un code plus propre ! ;)

Suivre

Recevez les nouvelles publications par mail.

Rejoignez 295 autres abonnés

%d bloggers like this: