picture picture
septembre 22, 2017 JavaScript, PHP 0 Commentaire

[Tiny MCE] Installer un éditeur de texte en mode avancé

C’est une demande récurrente de clients : « Faites-moi un champ de saisie de texte où on peut mettre du gras, de l’italique, des listes et des couleurs, comme Word« … L’objectif étant bien entendu de récupérer cette mise en forme, en général pour la stocker dans une base des données.

HTML ne permettant pas ce type de fantaisies, il faut donc se tourner vers les « éditeurs de texte » open-source. Il y en a quelques uns, je présente ici l’intégration de Tiny-MCE. C’est à la fois l’un des plus abouti, et des plus simple d’utilisation. C’est celui qu’a choisi le N°1 des moteur de blog (WordPress) : ce n’est pas pour rien…

septembre 21, 2017 JavaScript, MySQL, PHP 1 Commentaire

Autocomplétion du champ de texte avec JQuery-UI

L’auto-complétion consiste à proposer une pré-sélection de valeurs dans le champ texte d’un formulaire.
Ces valeurs sont extraites à la volée d’une base des données, et contiennent le caractère (ou la chaîne de caractères) déjà saisi par l’utilisateur.

Cette fonction utilise AJAX (JavaScript + PHP), c’est à dire qu’il n’est pas nécessaire de recharger une page pour extraire dynamiquement et afficher les valeurs souhaitées depuis une base des données. Le moteur utilisé dans cet exemple est JQuery-UI (puissant JavaScript opensource)

septembre 19, 2017 PHP 0 Commentaire

Envoyer un e-mail en PHP avec plusieurs pièces jointes

Un client m’a demandé la possibilité de joindre plusieurs pièces jointes aux e-mails envoyés en PHP depuis son intranet.
Mon premier réflexe a été de lui dire de faire un zip avant d’envoyer des fichiers : je craignais surtout pour les ressources du serveur qui n’est pas spécialement taillé pour des uploads lourds. Mais lui craignait que ses destinataires ne soient pas tous suffisamment « geek » pour utiliser un décompresseur (ce qui se justifie pour des envois « grand public » ou seniors…)

Il y a assez peu de ressources sur le net à ce sujet, je vous livre celle-ci : compilation personnelle de plusieurs sources que je n’ai pas toutes retrouvées (que les auteurs m’en excusent… sources en fin d’article)

septembre 19, 2017 PHP 0 Commentaire

Envoyer des e-mails depuis votre ordinateur avec WampServer

Tout développeur qui se respecte a eu un jour (au moins !) besoin d’envoyer des e-mail depuis un site en développement local. Ne serait-ce que pour  tester la mise en forme du sacro-saint formulaire de contact…

Ceux qui utilisent la plateforme de développement web sous Windows WampServer ont pu constater qu’elle n’intègre plus par défaut de serveur d’envoi des e-mails. L’envoi d’un e-mail génère au mieux : rien du tout; au pire : un message d’erreur (Failed to connect to mailserver at « localhost » port 25, verify your « SMTP » and « smtp_port » setting in php.ini…  etc.)

Il existe une solution simple et efficace : le serveur SMTP ( (Simple Mail Transfer Protocol)  Fake Sendmail for Windows !

juin 17, 2015 MySQL, PHP 2 Commentaires

Exporter une table MySQL au format CSV (Excel)

PHP calculsPHP est un langage d’extraction et d’affichage, mais sa puissance de calcul est limitée. Qui n’a pas été confronté un jour ou l’autre à ses erreurs ses memory_limit, upload_max_filesize ou autres blocage du temps de connexion d’un script ?

Il est possible de « bidouiller » le serveur pour tenter de rallonger tout cela, mais c’est tout de même limité et handicapant lorsque certains exports de grosses bases des données nécessitent des calculs croisés complexes. L’autre solution consiste à exporter les tables, puis à les retravailler avec les tableaux croisés dynamiques de Excel ou Access, par exemple, dont c’est la vocation.

Mode d’emploi pour un export PHP propre, d’une table MySQL vers un ficher Excel (csv en l’occurrence) …

octobre 13, 2013 (X)HTML, PHP 2 Commentaires

Le captcha de la mort qui tue :)

captchaLes captcha, vous savez tous ce que c’est : ces petits champs à remplir au bas des formulaire web pour prouver que vous êtes bien… humains ! On ne sait jamais… « des fois que vous soyez des algues » ?

Bref, c’est moche, souvent illisible et pénible à remplir. Les pires ce sont ceux de Google … à pleurer de laideur.

Celui que je vous propose ici, c’est comme l’œuf de Christophe Colomb : tellement simple qu’on aurait presque honte de ne pas y avoir pensé tout seul avant ! […]

octobre 12, 2013 (X)HTML, PHP 0 Commentaire

Ma page PHP commence par 

BoomCela s’appelle un BOM (Byte Order Mark) ou, en français, « Marque d’Ordre des Octets », il se trouve au début des fichiers UTF-8 et contient des renseignements sur le sens de lecture des données.

Malheureusement, certains logiciels n’interprètent pas correctement le BOM, ils le considèrent comme une partie du texte et l’affichent…

octobre 12, 2013 (X)HTML, PHP 1 Commentaire

J’ai des ? à la place des caractères accentués…

point d'interrogation

Classique des caractères latins et des extractions de bases des données UTF8 …

Le sujet a déjà été traité mais une petite synthèse ne fait pas de mal !

octobre 12, 2013 PHP 1 Commentaire

Augmenter la valeur de « memory_limit » en PHP

poids logoIndispensable pour les uploads de fichiers lourds ar exemple, la valeur de la memory_limit valeurs est limitée par défaut à 2 MO par PHP.

Il y a 3 manières de l’augmenter :

 

novembre 29, 2011 MySQL, PHP 3 Commentaires

PHP : exporter une table MySQL vers un fichier Excel

NOTA : article mis à jour ici (juin 2015)

Depuis la version d’Excel 2007, les exportations en PHP de données sous Excel (par exemple des extractions depuis une table MySQL) déclenchent  l’affichage d’un désagréable message d’erreur à l’ouverture du .xls

Il y a bien la solution de passer outre, les données sont tout de même présentes dans le fichier exporté…

Mais il existe une autre solution plus « propre » !

novembre 29, 2011 PHP 2 Commentaires

« Function eregi_replace() is deprecated »…

Vous avez mis à jour votre serveur, et votre nouvelle version PHP est supérieure ou égale à la version 5.3 ?
ce message de « Warning » apparaitra au sommet de bien des pages (si vous autorisez les erreurs à s’afficher pour débuguer le code, bien entendu!)…

La solution est simple.

avril 28, 2011 PHP, TIC News 1 Commentaire

Une bonne raison d’adopter le navigateur Opera !

Manuel PHP sur Opéra<< Cliquez pour agrandir
Opéra, vous connaissez ? C’est le dernier must des  navigateur de geeks !

Personnellement je ne suis pas emballée pour plein de raisons que je ne vais pas détailler ici, mais il a UN avantage sur tous les autres… Il intègre dans ses moteurs de recherche par défaut le manuel PHP !  Mode d’emploi ici …

 

avril 28, 2011 (X)HTML, PHP 18 Commentaires

Réécriture d’URL, ou URL Rewriting : petit tutoriel

Réécriture d'URLL’URL Rewriting consiste en gros à modifier la structure des liens afin d’insérer des mots clés dans celui-ci. Ces mots clés sont généralement ceux qui sont présent dans le titre des pages. L’URL rewriting joue également un rôle non négligeable dans le référencement d’un site car les mots clés insérés dans les liens (donc dans leurs adresses) permettent une meilleure indexation de la page concerné.

Retrouvez ici un mode d’emploi simple de cette technique, en 4 temps (comme la valse :biggrin: )…

mars 26, 2010 PHP 22 Commentaires

Envoyer un mail PHP au format texte sans erreurs d’encodage …

Je trouve toujours géniaux les tutoriaux qui commencent pas « envoyer un mail au format texte avec la fonction mail() de PHP, c’est super simple… » (sous entendu : « en HTML par contre, pfoulala, ça c’est super dur :p « )

Personnellement j’ai toujours trouvé cela assez pénible : selon le logiciel de courrier du client, on a des erreurs d’encodage avec des signes cabalistiques partout dans 50% des cas ! Testez sur un iPhone, vous verrez …

Voilà ce que je fais pour éviter les erreurs, c’est pas sorcier mais au moins cela marche !

février 10, 2010 PHP 16 Commentaires

Envoyer une pièce jointe à un email en PHP

PJ

Pas mal de recherches pour envoyer une simple pièce jointe à un envoi mail() PHP… pour finalement tomber sur un petit bout de code efficace que je livre ici avec quelques (petites) retouches.
testé … et approuvé !

février 4, 2010 PHP 50 Commentaires

Forcer le téléchargement des liens PDF

Rien n’est plus agaçant que de lancer l’ouverture d’un fichier PDF en cliquant sur un lien dans une page web… d’autant plus désagréable lorsque le fichier en question est lourd, ce qui est souvent le cas pour ce type de fichiers (catalogues ou manuels par exemples)
Or c’est pourtant l’action par défaut que proposent la plupart des navigateurs…
. Il existe une solution simple pour forcer le téléchargement :

décembre 22, 2009 PHP 3 Commentaires

La fonction uniqid() ne marche pas sous PHP5 ?

Pour ceux qui cherchent à générer des noms uniques (références de produits, noms d’images uploadées sur un serveur, clés primaires non auto-incrémentées, mots de passes, etc…), la fonction uniqid() est parfaite.
…Sauf que chez moi, elle ne marche pas sous PHP 5 … La solution est simple :

décembre 5, 2009 PHP 3 Commentaires

Extraire l’url de la page en cours

La question est rémanente : « comment afficher l’adresse de ma page avec PHP ?« … on la trouve sur tous les forums PHP, et pourtant la réponse est toute simple : c’est la variable globale $_SERVER qui la donne …

juillet 18, 2009 MySQL, PHP 3 Commentaires

Les problemes d’encodage UTF-8 entre une base mySQL et une page PHP…

Les forums de développeurs sont remplis de questions relatives à ce problème : « Help ! Je vois des carrés, des ? ou des signes bizarres qui s’affichent sur les pages de mon site à partir des extractions de ma base des données ! »
Cela peut effectivement être assez complexe si le site est mal conçu dès le départ. Il faut permettre à la fois à la base et à la page de parler le même langage : soit UTF-8 pour des pages destinées à un affichage international, soit ISO-8859-1 pour des pages destinées à un affichage exclusivement français.
Pour débuter, un peu de méthode s’impose…

juillet 18, 2009 PHP 2 Commentaires

Vérifier l’extension d’un fichier uploadé depuis un champ "file"

Vous voulez permettre à vos visiteurs d’envoyer des photos, mais vous ne souhaitez pas leur permêttre de télécharger des fichiers autres que des JPG ou des GIF par exemple ? C’est très simple avec la fonction pathinfo() de PHP…

avril 8, 2009 MySQL, PHP 15 Commentaires

Réalisation dynamique d’un fichier sitemap pour Google en PHP4/MySQL

Le protocole Sitemaps, proposé par Google et ensuite adopté par Live Search, Yahoo, Ask et Exalead, permet de spécifier un plan de site dans un format lisible par les robots d’indexation, en texte brut ou en XML.
Par défaut, les outils pour développeurs de Google proposent une création en Python… Pour les amoureux de PHP, voici quelques explication pour créer ce plan du site en PHP4 – MySQL : efficacité garantie en matière de référencement des sites et d’amélioration des page-rank !

novembre 9, 2008 MySQL, PHP 3 Commentaires

MYSQL : Sauvegarde pour toutes les bases sous WAMP

Même si phpMyAdmin s’avère pratique afin de faire un export (structure ou structure et données) d’une base (en vue d’en faire une sauvegarde), les limitations de tailles de transferts en PHP limitent sensiblement son utilisation massive.
Voici une méthode rapide avec MysqlDump pour importer et exporter l’ensemble des bases de données de vos sites locaux

août 11, 2008 PHP 4 Commentaires

Tester un formulaire… sans utiliser JavaScript !

Quelques utilisateurs (désagréables pour les développeurs :( …) trouvent subtils de désactiver les javascripts de leurs navigateurs… rendant du même coup inefficaces tous les scripts de contrôles des formulaires.
La question est donc de pouvoir demander dynamiquement un retour en page d’envoi en cas de non-respect d’une règle, par exemple lorsqu’un un champ obligatoire est vide…
Il existe une solution en PHP !

juillet 25, 2008 MySQL, PHP 15 Commentaires

Quelques règles de sécurité pour un PHP moins vulnérable…

Il y a les maîtres hackers, ceux qui trouvent les « exploits » en créant des brèches dans les failles des sites. Pour ceux là j’ai du respect, comme tout développeur : ce sont de vrais pros, et leurs travaux font avancer la sécurisation des codes.

Et puis il y a la foule des charognards… tous ces petits informaticiens en culotte courte qui se jettent sur les bouts de codes trouvés sur « Gougueul », en s’affublant de pseudos à la « darkMitnik » ou « KiNg~HaCk » pour faire croire qu’ils savent; et qui passent le plus clair de leurs nuits à casser des bases avec jubilation : pour ceux là je n’ai que du mépris. Ils ne le savent probablement pas (ils sont si jeunes, ces chérubins…), mais ils occasionnent, à peu de risques, des pertes financières sensibles à des gens qui n’ont demandé qu’à vivre honnêtement du fruit de leur juste labeur (comme c’est bien dit !)

C’est pour tenter de mettre quelques barrières simples contre ceux là, après avoir été victime d’un de ces petits bidouilleurs du dimanche, que j’ai tenté de réunir ici quelques éléments de sécurisation dans les applications PHP…

juin 1, 2008 MySQL, PHP 4 Commentaires

MySQL : optimiser la requete SELECT (niveau utilisateur)

Suite du billets précédent, quelques conseils pour les utilisateurs un peu plus avertis… sans prétendre être experts :)