php tag archives

Répartion des technologies serveurs Web

Une étude faite, par le Groupe Smile, sur la répartition des technologies employés dans le Web montre que le langage Open source PHP est majoritairement utilisé.
Un peu plus de 2/3 des sites Internet sont donc basé sur PHP. En seconde place on retrouve la technologie Microsoft (.NET). Puis en troisième place Java.

En avril 2010, il en est ressorti la décomposition suivante :

* 67 % PHP
* 21 % ASP.net
* 10 % Java
* 2 % autres

Google Buzz

web2.0     Mots-clefs :

Convertir du HTML en PDF via PHP

Pour convertir du HTML en fichier PDF, voici une solution en PHP :

Cette solution utilise le projet  HTML2PDF  (sourceforge.net/projects/html2fpdf/).  Trés simplement le texte HTML est généré en fichier PDF. Ce projet est basé sur le script FPDF  (www.fpdf.org),  qui est en pur PHP, sans utiliser  PDFlib ou tout autre librairie. Télécharger HTML2PDF, ajouter le à vos projets et voici un script d’exemple de code.

Code exemple

require(« html2fpdf.php »);

$htmlFile = « http://www.mirpod.com »;

$buffer = file_get_contents($htmlFile);

$pdf = new HTML2FPDF(‘P’, ‘mm’, ‘Letter’);

$pdf->AddPage();

$pdf->WriteHTML($buffer);

$pdf->Output(‘test.pdf’, ‘F’);

Google Buzz

Développement-code     Mots-clefs :

Classes PHP pour API

Si vous utilisez PHP et désirez utiliser une API. Voici une liste de classes PHP qui peuvent être utiles.

PEAR

PEAR  qui veut dire  “PHP Extension and Application Repository” propose de nombreuses extensions pour différentes API:

et beaucoup plus.

PEAR est une source intéressante pour trouver une classe reliée à un web service. Voici une liste d’autres classes que PEAR pour différents web services.

Alexa

Amazon

Babelfish

Bit.ly

Bing

DeviantArt

Digg

Drop.io

eBay

Facebook

Feeds

Flickr

FriendFeed

Google

Gravatar

ICQ

Last.fm

LinkedIn

MSN

Prowl

reCAPTCHA

Skype

Twitter

Yahoo

Google Buzz

Geo localisation par IP

Si vous désirez connaitre la provenance de vos visiteurs, voici deux méthodes pour geo localiser. Bien sûr ce positionnement n’est pas très précis car l’IP dépend de votre FAI, mais la localisation reste intéressante surtout si l’on a des visiteurs du monde entier.

Méthode I en javascript via les API Google : pour obtenir une API KEY

Step 1: Charger Google AJAX API script

<script type="text/javascript" src="http://www.google.com/jsapi?key=API_KEY_GOES_HERE"></script>

Step 2: Extraire la localisation par google.loader.ClientLocation

if(google.loader.ClientLocation)
{
	visitor_lat = google.loader.ClientLocation.latitude;
	visitor_lon = google.loader.ClientLocation.longitude;
	visitor_city = google.loader.ClientLocation.address.city;
	visitor_region = google.loader.ClientLocation.address.region;
	visitor_country = google.loader.ClientLocation.address.country;
	visitor_countrycode = google.loader.ClientLocation.address.country_code;
}
else
{
	// pas trouve
}

Deuxième méthode II en PHP :

10
11
12
13
14
15
16
< ?php		
	 $IpAddress=$_SERVER["REMOTE_ADDR"];
	 $adress = 'http://www.geobytes.com/IpLocator.htm?GetLocation&template=php3.txt&IpAddress='.$IpAddress;
	 $tags = get_meta_tags($adress);
print $tags['city'];  // city name
print $tags['country'];  // country name
?>

Google Buzz

web2.0     Mots-clefs :, ,

Apprendre la programmation PHP

Voici 16 vidéos tutoriels pour apprendre à programmer en PHP. Le PHP est un langage de scripts libre principalement utilisé pour produire des pages Web dynamiques via un serveur HTTP.

Tout d’abord l’installation d’un serveur  WAMP / MAMP puis le codage de votre premier script.

Ensuite les variables, passage de valeurs entre pages, les tableaux ….

Google Buzz

web2.0     Mots-clefs :

De Flex à PHP via JSON

Pour envoyer des données de FLEX à un serveur PHP on peut utiliser XML ou JSON.
JSON (JavaScript Object Notation) est un format de données générique. Il utilise la notation des objets JavaScript pour transmettre de l’information structurée.

Pour utiliser Json dans Flex il faut tout d’abord récupérer le .swc à mettre dans le dossier lib de votre projet Flex. Ici le lien Adobe Flex coreLib.

Côté PHP si vous avez une version supérieure à 5.2 pas de soucis si non il faudra récupérer le code ici : php-json

Donc dans l’application Flex on aura :

import mx.collections.ArrayCollection;
import mx.rpc.events.ResultEvent;
import com.adobe.serialization.json.JSON;

Une fonction pour envoyer les data. list de votre dataProvider est encodé via Json en string. Les data sont envoyé via le service sendData.

private function sendPHPData():void
{
var objSend:Object = new Object();
var dataString:String = JSON.encode(list.dataProvider.toArray());
dataString = escape(dataString);
objSend.setTutorials = « true »;
objSend.jsonSendData = dataString;
sendData.send(objSend);
}

et bien sûr :

<mx:HTTPService id=« sendData » url=« sendData.php »

useProxy=« false » method=« GET » resultFormat=« text »

result=« updatedPHPDataResult(event) »>

</mx:HTTPService>

<mx:ArrayCollection id= »myData »></mx:ArrayCollection>

<mx:List id= »list » dataProvider= »{myData} »/>

C’est le code que l’on trouve sur tous les tutoriels. Malheureusement il ne fonctionne pas toujours. J’ai essayé pendant plusieurs jours sur IE7 explorer 7 de transférer des data et curieusement au bout d’un certain nombre de données aucun appel au script PHP. Il y a donc un problème de mémoire cache. Je conseille donc de ne pas utiliser GET mais POST.

Le code PHP :

<?php

if (isset($_REQUEST['jsonSendData'])) $jsonString = $_REQUEST['jsonSendData'];

$jsonString = urldecode($jsonString);

$data = json_decode($jsonString, true);
print_r($data);

?>

Google Buzz

Flex     Mots-clefs :, ,

Un proxy PHP pour flash FLEX Silverlight

Si vous développez des applications  flash, vous avez du vous confronter aux problèmes de cross domain. Pour des raisons de sécurité le plugin flash player bloque la lecture de données d’autres sites.

Voici un script PHP qui agit comme proxy et qui récupère les data du site, il nécessite la librairie CURL de PHP :

<?php
$ch = curl_init();
$timeout = 30;
$userAgent = $_SERVER['HTTP_USER_AGENT'];

curl_setopt($ch, CURLOPT_URL, $_REQUEST['url']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);

$response = curl_exec($ch);

if (curl_errno($ch)) {
echo curl_error($ch);
} else {
curl_close($ch);
echo $response;
}
?>

Pour CURL:

Google Buzz

Flex     Mots-clefs :, , , ,