#PHP

Laisser un commentaire

Extraire des informations du DOM en php

Il arrive que l’on soit amené à rechercher des informations dans un fichier HTML ou XML. Si on parcourt des pages web à la recherche d’une information précise, telle qu’une adresse email par exemple, il va falloir extraire cette information du reste du code de la page. On peut faire cela principalement de deux manières : soit en utilisant les expressions rationelles, soit en utilisant le DOM xpath de PHP. Cette dernière solution s’avère très puissante et efficace. D’autant plus si l’on sait où se trouve l’information dans le DOM, elle aura aussi l’avantage d’être plus rapide – autant en vitesse d’exécution qu’en temps de développement.

Laisser un commentaire

Détecter les requêtes ajax en php

Pour diverses raisons, on peut avoir besoin de savoir si une requête http provient d’un chargement de page classique, ou d’une requête ajax. Une variable serveur va nous permettre de trouver facilement la réponse.

// Vérification AJAX
if (!empty($_SERVER['HTTP_X_REQUESTED_WITH'])
&& strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
    // on effectue un traitement spécifique pour l'ajax
}

else {
    // on effectue un traitement spécifique au chargement classique
}

Cependant, il y a des cas où cette variable n’est pas présente, cela dépend de votre serveur. Plus de détails sur stackoverflow [en].

Laisser un commentaire

Automatiser son backoffice avec Paypal IPN

Paypal possède une grande notoriété et je ne vous le présenterai donc pas. C’est un bon choix d’intermédiaire pour récolter des paiements sur son site internet. Qu’il soit seul ou couplé à une solution bancaire, Paypal est devenu indispensable. Seulement, Paypal propose une multiplicité de moyens d’intégration sur son site. Du bouton HTML à l’API NVP, il est parfois difficile d’automatiser son backoffice. De l’envoi d’un email de confirmation de commande à la synchronisation de sa base de données clients, l’automatisation est plus pratique – et efficace – que d’attendre les mails de confirmation paiement de Paypal et d’agir manuellement.

Laisser un commentaire

Créer et afficher des graphiques à la volée

On dit d’une illustration qu’elle vaut 1000 mots. L’extension GD de php permet de manipuler des images, et avec un peu de pratique, vous pouvez très bien créer de superbes graphiques. Voici un article en anglais, qui vous expliquera en détail comment parvenir à créer des graphiques, en barre, en fromage…

Gardez cependant à l’esprit que GD consomme des ressources côté serveur, et que pour cette raison, il est bloqué sur les offres mutualisées de nombreux hébergeurs. Par ailleurs, javascript et le html5 offrent aujourd’hui la possibilité de créer des graph directement dans la navigateur du client. Ils auront même l’avantage d’être interactifs ! De très bonnes bibliothèques ont d’ailleurs été écrite à cet effet :

Un peu à part se situe Charts.css il permet en effet de ne faire reposer vos graphique que sur quelques styles CSS ! Une très bonne alternative au JS si vous voulez rester simple et léger.

À vous de faire votre choix !

Laisser un commentaire

Synthèse de la POO en PHP

Ce post était jusque là en privé, juste pour mon usage personnel, et puis je me suis dit qu’il serait bête de ne pas en faire profiter les autres (c’est le but d’un blog non ?). Voici donc quelques rappels sur la POO en PHP. Bien que j’explique un peu les différentes notions, cet article est une cheatsheet sur la POO. Par conséquent, il n’est pas destiné à ceux qui n’en ont jamais fait (ils seront totalement perdus). En revanche, ceux qui connaissent déjà mais qui, comme moi, ont quelques trous de mémoire, vous pouvez bookmarquer cet article !

Laisser un commentaire

Installer et configurer PHP pour Apache2

Apache et PHP ont déjà quelques années de vie conjugale. Et comme tout couple qui dure, ils sont très complémentaires et savent se réinventer. Nous allons voir comment configurer PHP de deux manières différentes : en tant que module Apache, mod_php, et et en tant que serveur FastCGI via php-fpm.

Laisser un commentaire

Les petits secrets de MAMP

MAMP est un outil super pour développeur web sur mac. Cependant, il a parfois tendance à jouer un peu le rebel. Bien souvent par exemple, le serveur MySQL ne veut pas se lancer. Ou encore, par défaut, il refuse de nous afficher les erreurs PHP. Voici en quelques lignes, comment faire rentrer la bébête dans le droit chemin.

Laisser un commentaire

PHP et la vidéo avec ffmpeg-php

FFMPEG php, à l’instar de FFMPEG, est le genre d’outil qu’on ne se lasse jamais de présenter. FFMPEG PHP offre des classes permettant de “discuter” en php avec FFMPEG. On peut donc récupérer toutes sortes d’info sur des vidéos, en extraire des images etc. En revanche, il n’est pas possible d’encoder directement d’un format à un autre avec FFMPEG PHP. Pour cela, il faudra passer par FFMPEG tout court.

Laisser un commentaire

Lumière sur les fetch modes de PDO

Si vous utilisez PDO, pour récupérer vos données après un select, vous faites peut-être tout simplement :

$pdo = new PDO('mysql:host=host;dbname=DBNAME', 'user', 'pass');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

while($mesDonnees = $maRequete->fetch()) {
    echo $mesDonnees['machin'];
}

// ou

$mesDonnees = $maRequete->fetchAll()

foreach ($mesDonnes as $element) {
    echo $element['machin'];
}

Vous utilisez donc probablement la méthode de récupération par défaut, FETCH_BOTH. Sachez qu’il existe de nombreuses autres méthodes pour récupérer ses données. À la fois plus efficacement et peut-être de manière plus adaptée à vos scripts que la méthode par défaut.

Tout ceci est bien entendu disponible sur la doc officielle PHP. Mais si c’est un article clair et qui parle le langage de l’homme que vous cherchez, alors j’ai trouvé une petite série qui se chargera de rendre tout ceci limpide dans votre cerveau !

Bonne lecture.

Laisser un commentaire

Créer un crawler web en PHP

Sur le web, les robots, spiders ou crawlers, selon les termes, sont très employés. Google, bien sur, en utilise pour explorer les sites à référencer, mais leur utilisation ne s’arrête pas là. Facebook aussi a recours à eux lorsque vous postez un lien et qu’une image et la description s’affichent sur le mur, on pourrait penser également aux portails d’informations (ou les applis comme Flipboard) qui vont chercher les contenus sur divers sites, mais encore Pinterest qui est très à la mode… La liste est longue. Apprenons à programmer le notre pour nos propres besoins !