php tag archives
16
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
26
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’);
24
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:
- Akismet
- Amazon
- Blogging
- Compete
- Delicious
- Digg
- eBay
- Yahoo
- Youtube
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 Notification Class
- Facebook Application Developer
- Facebook Official PHP Class
- Inbox Handler
- Open Inviter
Feeds
Flickr
FriendFeed
Gravatar
ICQ
Last.fm
MSN
Prowl
reCAPTCHA
Skype
- Twitter PHP Class
- php-twitter
- My Twitter
- TwitterLib
- Twitter Client
- CodeIgniter Twitter Lib
- Twitter Async
Yahoo
9
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 ?> |
15
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 ….
22
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);
?>
22
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:












































