background preloader

Ressources

Facebook Twitter

POSTing JSON Data With PHP cURL. I got this question the other day: how to send a POST request from PHP with correctly-formatted JSON data? I referred to the slides from my web services tutorial for the answer, and I thought I'd also put it here, with a bit of explanation. After all, publishing your slides is all very well, but if you didn't see the actual tutorial, I often think they aren't too useful.

We can't send post fields, because we want to send JSON, not pretend to be a form (the merits of an API which accepts POST requests with data in form-format is an interesting debate). Instead, we create the correct JSON data, set that as the body of the POST request, and also set the headers correctly so that the server that receives this request will understand what we sent: All these settings are pretty well explained on the curl_setopt() page, but basically the idea is to set the request to be a POST request, set the json-encoded data to be the body, and then set the correct headers to describe that post body.

How to build (and how not to build) a secure “remember me” feature. Here’s the scenario – a user logs in to your website, comes back tomorrow and… has to log in again. The idea of the “remember me” feature – and let’s face it, we’ve all seen this before – is that their authenticated state is persisted beyond the immediate scope of use. What this means is that they can close the browser, turn off the PC then come back tomorrow or next week or next month or however much later you determine is a reasonable timeframe and the site still knows who they are and offers them all the same features they had when they left it. I’m talking about this little guy here: Seems easy, right? It can be, but as you’ll see it’s also not uncommon to make an absolute mess of it and even when you do get it right, there’s a queue of people ready to tell you how it is, in fact, not quite right enough.

Let’s start with the really wrong stuff and work from there. Anti-patterns This seems obvious, right? That’s all pretty standard, the interesting bit comes after you log in. The Best Freebies for Designers (June 2013) Here are the best freebies for designers from June 2013. We have free GUI templates, icon sets, fonts, Photoshop brushes, PSD templates, textures… and everything else inbetween. Freebies for Designers – June 2013: Icon Sets Thin Stroke Icons (PSD) Download Page → FatIcons (PSD) Download Page → Almosticons (PSD) Download Page → Vectory (PNG) Download Page → Cikonss (Pure CSS Responsive Icons) Download Page → 60 SEO Services Icons (AI, EPS & SVG) Download Page → Free Flat Icon Set (EPS & PSD) Download Page → Flat Icons (EPS) Download Page → Sports Icon Set (AI, EPS, PNG & PDF) Download Page → Icon Set Grid and Guides (AI) Download Page → Foodie Pack (AI, EPS & PNG) Download Page → Garden Icons (PSD) Download Page → iOS 7 Icon Templates iOS 7 Icons in Vector (SVG, EPS & PNG) Download Page → iOS 7 Icon Template (PSD, SVG & Sketch) Download Page → IOS 7 Guide (PSD) Download Page → GUI Kits GitHub Repository Next UI (PSD) Download Page → Rdio UI (PSD) Download Page → Hexagon Blue UI Kit (PSD) Download Page → Marble UI Kit (Sketch)

Cheat Sheet. Download cheat sheet as printable PDF A5 Syntax Child: > nav>ul>li Sibling: + div+p+bq Climb-up: ^ div+div>p>span+em^bq div+div>p>span+em^^bq Grouping: () div>(header>ul>li*2>a)+footer>p (div>dl>(dt+dd)*3)+footer>p Multiplication: * ul>li*5 Item numbering: $ ul>li.item$*5 h$[title=item$]{Header $}*3 <h1 title="item1">Header 1</h1><h2 title="item2">Header 2</h2><h3 title="item3">Header 3</h3> ul>li.item$$$*5 ul>li.item$@-*5 ul>li.item$@3*5 ID and CLASS attributes #header .title form#search.wide p.class1.class2.class3 Custom attributes p[title="Hello world"] td[rowspan=2 colspan=3 title] [a='value1' b="value2"] Text: {} a{Click me} <a href="">Click me</a> p>{Click }+a{here}+{ to continue} <p>Click <a href="">here</a> to continue</p> Implicit tag names .class em>.class ul>.class table>.row>.col All unknown abbreviations will be transformed to tag, e.g. foo → <foo></foo>.

Alias of html:5 <! A a:link a:mail abbr acronym, acr base basefont br frame hr bdo bdo:r bdo:l col link link:css link:print link:favicon link:touch link:rss link:atom meta meta:utf img c. Dimensionner ses fontes avec rem. Par Jonathan Snook Déterminer quelle unité de mesure choisir pour la taille de notre texte peut mener à un débat houleux, même de nos jours. Malheureusement, il existe toujours des avantages et inconvénients qui rendent ces différentes techniques peu désirables. La question est alors de savoir quelle solution est la « moins pire ».

Les deux techniques suivantes sont le plus souvent utilisées : taille en px ; taille en em. Analysons ces deux approches avant que je ne révèle mon troisième atout. Dimensionnement avec px Au tout début du Web, nous utilisions les pixels pour dimensionner notre texte. Pour ma part, je suis du côté de ceux qui pensent que les mises en page en pixels apportent la cohérence nécessaire, et que les utilisateurs possèdent suffisamment d’outils dédiés à l’affichage pour arrêter de penser que l’accessibilité est si préoccupante. Dimensionnement avec em L’impossibilité totale de redimensionner le texte avec IE est une frustration permanente. Dimensionnement avec rem. Les microformats et microdata apportés par HTML5. Microformats, microdata, nouvelle sémantique, nouveaux éléments HTML… Tant de nouveautés qui perturbent les intégrateurs web soucieux de se mettre à jour dans leurs compétences ou curieux de savoir ce dont ils peuvent déjà faire usage dans leurs intégrations.

Bien que les microformats existent depuis 5 ou 6 ans, ce n’est qu’avec l’arrivée de HTML5 que la profession et les outils sont suffisamment mûres pour commencer à les exploiter réellement. Nous allons essayer de nous concentrer sur les microformats et, surtout, les microdata apportées par HTML5. Cet article a été rédigé par Geoffrey Crofte, intégrateur et designer web chez Alsacréations et pour son petit studio Creative Juiz. Également auteur de son propre blog Creative Juiz et de nombreux articles pour la communauté Alsacréations, Geoffrey apprécie les expérimentations sur CSS3 et nous les fait partager sur TryToTry, son laboratoire. Retrouvez Geoffrey sur Twitter : @geoffrey_crofte ou sur son portail perso. Présentation Rendu : Gargarismes ergonomiques. Votre kit "Card Sorting" Votre kit "Agile UX" Inventaire des contenus : modèle et méthode. Ce billet a été lu 12516 fois.

À votre tour? Le plan de contenu répertorie tous les contenus produits dans un projet de stratégie éditoriale. Il désigne le document (généralement dans le format d’un tableur Excel) qui inventorie tous ces contenus. Dans ce billet, je propose une définition, une méthode et un modèle à télécharger. Le plan de contenu – ou inventaire des contenus – est un outil précieux, performant et très rentable, qui devrait être mis en place dès le départ de tout projet de gestion de contenus en ligne… Dans la gamme des outils éditoriaux (dont j’ai déjà évoqué certains : les personæ, la charte lexicale, l’arborescence, la check-list rédactionnelle, etc.), l’inventaire des contenus est l’un des plus simples à créer et à utiliser, et pourtant l’un des plus négligés voire ignorés des projets Web… Téléchargez le modèle en Excel L’inventaire des contenus, c’est quoi?

Comment ça marche? Supposons que nous sommes dans un projet de refonte. Voici à quoi ressemble un tel document. Laws of Simplicity | By John Maeda. Expérience utilisateur, Design, Ergonomie. 10/GUI : The Video. Yazo.net - Accueil. “Right click and save as” needs to go away. For a long time it has been standard practice to ask visitors to “right click and save as” when downloading a file that the browser itself is capable of rendering, but where doing so is not desirable. One reason for doing this is to spare people from the annoying experience of accidentally clicking a link to a 25 MB PDF, which subsequently launches a browser plugin that of course crashes while trying to download and display the file. From a UX perspective though, adding instructions on how to click a link is not optimal, and feels like a hack.

Not to mention that lots of people are literally afraid of the right mouse button. My mother is anyway. Luckily there’s a correct way of doing this now, though it hasn’t seen widespread adoption yet: The HTML5 download attribute You use it like this: <a href="hugemothereffinpdf.pdf" download>Download file</a> Any file the browser would normally try to display natively or through a plugin can be forced to download using this attribute. Support Old IE <! Pourpre.com - les mondes de la couleur, les couleurs du monde. Les Media Queries CSS3. La spécification CSS3 Media Queries définit les techniques pour l'application de feuilles de styles en fonction des périphériques de consultation utilisés pour du HTML.

On nomme également cette pratique Responsive Web Design, pour dénoter qu'il s'agit d'adapter dynamiquement le design à l'aide de CSS. Ces bonnes pratiques permettent d'exploiter encore plus les avantages de la séparation du contenu et de la présentation : l'intérêt est de pouvoir satisfaire des contraintes de dimensions, de résolutions et d'autres critères variés pour améliorer l'apparence graphique et la lisibilité (voire l'utilisabilité) d'un site web.

Les plateformes exotiques sont concernées en premier lieu : navigateurs mobiles et tablettes, écrans à faibles résolutions, impression, tv, synthèses vocales, plages braille, etc. Approche historique Avec CSS2 et HTML4, il était déjà possible de spécifier un média de destination pour l'application d'une ou plusieurs feuilles de style. <! Screen Écrans handheld print Impression. WAI-ARIA Overview.

Quick links: WAI-ARIA, User Agent Implementation Guide, FAQ See also FAQ: What is the current status of WAI-ARIA development? Introduction WAI-ARIA, the Accessible Rich Internet Applications Suite, defines a way to make Web content and Web applications more accessible to people with disabilities. It especially helps with dynamic content and advanced user interface controls developed with Ajax, HTML, JavaScript, and related technologies. Currently certain functionality used in Web sites is not available to some users with disabilities, especially people who rely on screen readers and people who cannot use a mouse.

WAI-ARIA addresses these accessibility challenges, for example, by defining new ways for functionality to be provided to assistive technology. This page describes the problems that WAI-ARIA addresses, and introduces the WAI-ARIA suite of technical documents. Making Ajax and Related Technologies Accessible Figure 1: Tree control Technical Solutions The WAI-ARIA Documents. XHTML 1.0 : Le langage de balisage hypertexte extensible. Cette spécification a été traduite par Karl Dubost, Normandie Web (karl+misc@la-grange.net) dans une démarche volontaire. Toute amélioration est la bienvenue. François Yergeau (yergeau@alis.com) pour la correction des détails. La version française de cette traduction est : Traducteur : Karl Dubost - <karl+misc@la-grange.net> François Yergeau <yergeau@alis.com> pour la correction des détails.

La version française peut contenir des erreurs. Résumé Cette spécification définit XHTML 1.0, comme une reformulation de HTML 4 en une application XML 1.0, et trois DTDs correspondant àcelles définies par HTML 4. Statut de ce document Cette section décrit le statut de ce document à la date de sa publication. Ce document a été validé par les membres du W3C ainsi que par d'autres organismes et a été approuvé par le Directeur comme une recommandation.

Ce document a été produit comme une partie de l'Activité HTML du W3C. Sommaire Les documents XHTML sont conformes à XML. Web Squared: Web 2.0 Five Years On - by Tim O'Reilly and John Battelle. Five years ago, we launched a conference based on a simple idea, and that idea grew into a movement. The original Web 2.0 Conference (now the Web 2.0 Summit ) was designed to restore confidence in an industry that had lost its way after the dotcom bust. The Web was far from done, we argued. In fact, it was on its way to becoming a robust platform for a culture-changing generation of computer applications and services. In our first program, we asked why some companies survived the dotcom bust, while others had failed so miserably. We also studied a burgeoning group of startups and asked why they were growing so quickly. Chief among our insights was that "the network as platform" means far more than just offering old applications via the network ("software as a service"); it means building applications that literally get better the more people use them, harnessing network effects not only to acquire users, but also to learn from them and build on their contributions.

Schema.org. Most webmasters are familiar with HTML tags on their pages. Usually, HTML tags tell the browser how to display the information included in the tag. For example, <h1>Avatar</h1> tells the browser to display the text string "Avatar" in a heading 1 format. However, the HTML tag doesn't give any information about what that text string means—"Avatar" could refer to the hugely successful 3D movie, or it could refer to a type of profile picture—and this can make it more difficult for search engines to intelligently display relevant content to a user. Schema.org provides a collection of shared vocabularies webmasters can use to mark up their pages in ways that can be understood by the major search engines: Google, Microsoft, Yandex and Yahoo! 1. 1a. Your web pages have an underlying meaning that people understand when they read the web pages. 1b. itemscope and itemtype Let's start with a concrete example.

To begin, identify the section of the page that is "about" the movie Avatar. Back to top 1d. Bienvenue sur le wiki des microformats ! Les microformats sont des extensions au HTML pour marquer les personnes et organisations, événements, endroits, billets de blog, produits, critiques, C.V., recettes etc. Les sites utilisent les microformats pour publier une API standard qui est consommée et utilisée par les moteurs de recherche, navigateurs et d'autres outils.

Regardez C'est Quoi les Microformats pour en savoir plus. nouveau ! Microformats2 est la dernière extension de langage de marquage stable et interopérable. Utilisez-la sur les pages web publics de pour les APIs HTML. Introduction Ce wiki est la ressource centrale de la communauté microformats et fournit des guides de publication des microformats, des références, des spécifications, des drafts, des modèles de publication, de la recherche, du brainstorming et de la résolution de problème. Pour démarrer Pour démarrer avec les microformats : Premièrement, familiarisez-vous à écrire vos pages et applications avec du HTML 'CHIC'. Définition Comment contribuer ? Spécifications. Mobile HTML5 - compatibility on iPhone, Android, Windows Phone, BlackBerry, Symbian and other mobile and tablet devices. Tri de cartes et ergonomie web. Introduction L'architecture de l'information est le fondement de la structure d'une application.

Pour optimiser cette architecture, plusieurs méthodes sont utilisées. Cet article décrit l'une d'entre elles, le tri de cartes. Nous détaillerons les caractéristiques des différents types de tris, le déroulement classique d'une session de tri, ainsi que le rapport entre les caractéristiques de la méthode et les besoins et contraintes de l'ergonomie web. Cet article sera volontairement orienté vers le domaine web, car c'est celui dans lequel nous disposons du plus d'exemples concrets.

Cependant, les principes que nous évoquerons sont souvent valables aussi dans le domaine logiciel. 1. 1.1. Il est essentiel de travailler sur l'organisation des contenus lorsque l'on conçoit une interface informatique. Un des méthodes en architecture de l'information est le tri de cartes ou tri par cartes (card sorting). 1.2. ETAPE 1. La première étape est la présentation des cartes à l'utilisateur. ETAPE 2. 2. Top 5 Browsers from Feb 2012 to Feb 2013. How Users Read on the Web. L’URL Rewriting expliqué aux débutants.

Url Rewriting, Regex: actualité, tutoriel, download. Styles auteur, utilisateur et agent utilisateur : 3 raisons de lâcher prise sur votre design. Cascade CSS et priorité des sélecteurs. Les sélecteurs. RESS: Responsive Design + Server Side Components. Les feuilles de style en cascade, niveau 2. Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification. Caractères spéciaux et entités HTML - Doc’ Alex. Media Queries. Web Hypertext Application Technology Working Group. Welcome! - The Apache HTTP Server Project.

Wiki