<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Content System Manager (C.M.S.)]]></title><description><![CDATA[<p>Tous les guides, ressources et informations nécessaires pour la gestion de votre serveur web ou du C.M.S. installé sur votre hébergement.<br> </p>]]></description><link>https://melinyel.net/category/55</link><generator>RSS for Node</generator><lastBuildDate>Wed, 02 Sep 2026 03:51:28 GMT</lastBuildDate><atom:link href="https://melinyel.net/category/55.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 12 Nov 2014 16:03:45 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[[Entreprise] Pourquoi créer un Blog ?]]></title><description><![CDATA[&lt;p&gt;Bonjour, intéressons-nous à cette question : Pourquoi créer un blog ? Eh oui, pourquoi ? La seule bonne raison ?&lt;strong&gt; Pour accroitre le trafic&lt;/strong&gt; !&lt;/p&gt;
&lt;p&gt;Et oui, dans une entreprise, quand vous avez un site web, c'est pour présenter, donne un moyen de contact et/ou vendre un produit et bien le blog vous permettra de rajouter du contenu qui attirera des visiteurs et peut-être en feront des lecteurs réguliers !   (si le contenu est intéressant bien sûr)&lt;/p&gt;
&lt;p&gt;Si vous écrivez régulièrement des articles intéressants, votre blog sera très vite bien référencé par les mot clés que vous inclurez naturellement en écrivant un article.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Vous inclurez l'activité de votre société dans ce blog, cela permettra évidemment de donner plus de vivant et vous pourrez même présenter des produits (plus généralement les vôtres  ^_^ ) , découvertes, ou astuces pour ainsi, pas qu'attirer le lecteurs mais lui faire partager ce billet d'article sur les réseaux sociaux par exemple !  &lt;/p&gt;
&lt;p&gt;Les blogs vous permettront d'inclure plus de "social" et si vous êtes à l'écoute des lecteurs en répondant à leurs questions par exemple, vous aurez tout gagner, votre entreprise paraîtra plus conviviale. C'est ainsi que les lecteurs vous seront fidèles :wub:  . (et ça accroitra votre trafic ! :ph34r:  )&lt;/p&gt;
&lt;p&gt;Un autre bon coté, c'est que le blog donne un autre visage à votre entreprise, ce que je veux dire par là ? Tout simplement que les visiteurs ne verront plus le côté Business mais aussi un coté amicale, car vous écrivez des articles et le visiteurs le voient ça ! Du coup, une atmosphère chaleureuse s'instaure entre le visiteur et l'entreprise. :wub: &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;De plus, vous pouvez même publiez des articles faisant abord à votre commerce qui pourra développer des partenariats avec d'autre entreprise.   (comme le fait &lt;a href="http://blog.openclassrooms.com/" rel="external nofollow"&gt;Openclassrooms&lt;/a&gt;  )&lt;/p&gt;
]]></description><link>https://melinyel.net/topic/1311/entreprise-pourquoi-créer-un-blog</link><guid isPermaLink="true">https://melinyel.net/topic/1311/entreprise-pourquoi-créer-un-blog</guid><dc:creator><![CDATA[Eloha]]></dc:creator><pubDate>Wed, 12 Nov 2014 16:03:45 GMT</pubDate></item><item><title><![CDATA[[Flyspray] BugTracker]]></title><description><![CDATA[&lt;div&gt;
&lt;p&gt;Salut à tous,&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Je me permet de poster pour vous présenter ce ptite BugTracker surement connu par certains d'entre vous.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Flyspray, c'est quoi ?&lt;/b&gt;&lt;br/&gt;&lt;br/&gt;&lt;b&gt;Flyspray est un bugtracker/gestionnaire de ticket.&lt;/b&gt; C'est un CMS qui s'installe sur un hébergeur web (comme un forum phpBB) et qui sert à gérer les différentes tâches au sein d'une équipe. OVH l'utilise aussi pour tenir ses utilisateurs au courant des travaux en cours &lt;a href="http://travaux.ovh.net/" rel="external nofollow"&gt;(http://travaux.ovh.net/)&lt;/a&gt; ; il s'agit d'une ancienne version.&lt;br/&gt;&lt;br/&gt;
Je vais essayer de vous présenter brièvement ce système, sans rentrer dans les détails. C'est vraiment pas compliqué à utiliser.&lt;br/&gt;&lt;br/&gt;&lt;b&gt;Comment ça fonctionne ?&lt;/b&gt;&lt;br/&gt;&lt;br/&gt;
En bref, &lt;b&gt;Flyspray permet de créer des tâches, de les assigner aux personnes responsables et d'en suivre l'évolution.&lt;/b&gt; Chaque utilisateur dispose d'un compte et peut-être placé dans des groupes en fonction desquels il dispose de droits.&lt;br/&gt;&lt;br/&gt;
Ces tâches se présentent sous la forme de &lt;b&gt;tickets.&lt;/b&gt; Un ticket = un truc à faire. Et chacun d'eux a différentes caractéristiques prédéfinies lors de la configuration (et en fonction de vos besoins) :&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Un résumé (un titre) et une description qui expliquent concrètement la tâche&lt;/li&gt;
&lt;li&gt;Un type de tâche : bug, mise à jour, demande, etc.&lt;/li&gt;
&lt;li&gt;Une catégorie : serveur, site, forum, etc.&lt;/li&gt;
&lt;li&gt;Un état : Nouveau, en cours, à tester, besoin d'info, etc.&lt;/li&gt;
&lt;li&gt;Une sévérité (c'est grave, docteur ?) et une priorité (c'est urgent ?)&lt;/li&gt;
&lt;li&gt;Une assignation pour qui doit faire la tâche (utilisateur ou groupe d'utilisateur).&lt;/li&gt;
&lt;li&gt;D'autres petits détails.&lt;/li&gt;
&lt;/ul&gt;
Tous les tickets (en cours ou fermés) peuvent être listés, ce qui vous donne un aperçu du travail à faire et vous permet d'avoir une trace de ce qui a été fait. Chaque utilisateur peut aussi voir ce qu'il a à faire.&lt;br/&gt;&lt;br/&gt;
Depuis la dernière version, il est aussi possible de lier des tâches entre elle, ce qui permet de les hiérarchiser et de dire dans quel ordre doivent être exécutés les tickets.&lt;br/&gt;&lt;br/&gt;&lt;b&gt;Avantages/Inconvénients&lt;/b&gt;&lt;br/&gt;&lt;br/&gt;
Flyspray n'est pas un outil qui conviendra à tout le monde parce qu'il implique une certaine façon de travailler. Il faut qu'il y ait une répartition du travail où les gens sont complémentaires. Celui qui ouvre le ticket n'est pas celui qui le ferme. Par exemple, celui qui décide des MAJ ne sera pas celui qui les faits ou celui qui traque et qui test les bugs ne sera pas celui qui les réglera. C'est une façon de travailler qui fait gagner du temps aux personnes "qualifiées" ; quelqu'un qui sait scripter a mieux à faire que du travail que quelqu'un d'autre qui ne sait pas scripter pourrait faire. C'est un système qui implique aussi une certaine confiance au sein de l'équipe.&lt;br/&gt;&lt;br/&gt;
Il faut aussi que les gars du staff le consultent régulièrement et prennent le temps de faire les tickets. C'est con à dire, mais si vous savez que vous ne l'utiliserez pas beaucoup, ne perdez pas temps à l'installer.&lt;br/&gt;&lt;br/&gt;&lt;b&gt;Conseils d'utilisation&lt;/b&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Adaptez le système à vos besoins.&lt;/b&gt; L'objectif, c'est quand même d'avoir un outil simple et efficace. Avant de vous lancer là dedans, prenez le temps de réfléchir à ce que vous voulez en faire.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Pas de doubles usages.&lt;/b&gt; Le Flyspray ne doit pas coexister avec un autre système. Soit vous mettez toutes les tâches dessus, soit vous n'en mettez aucune. Mais ça ne sert à rien de partager le boulot entre un forum et un bugtracker.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Des règles d'utilisation prédéfinies.&lt;/b&gt; C'est important que tous les utilisateurs soient d'accord et respectent entre eux une série de conventions. Par exemple, vous pouvez discuter de savoir qui attribue les tâches ; il ne s'agira pas nécessairement de la personne qui créera le ticket.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Tout ce qui est sur le flyspray est à faire et ne doit pas être discuté.&lt;/b&gt; Un Flyspray, c'est pas un forum. L'idée, c'est que quand vous ouvrez votre liste de ticket, vous n'ayez pas à vous poser trop de question sur ce qu'il y a à faire. Un bon ticket contient toutes les infos nécessaires clairement exprimées. Et le ticket concerne quelque chose qui doit être fait. Et en plus, la tâche doit concerner un problème ou une mise à jour "réelle". Par exemple, si les joueurs signalent des bugs via le forum et que les modos les retranscrivent sur Flyspray, il faut d'abord que le modo ait vérifié que le bugs existait et qu'il était reproductible. Autrement, il ferait perdre son temps aux codeurs.&lt;/li&gt;
&lt;/ul&gt;&lt;br/&gt;&lt;b&gt;Infos complémentaires/téléchargement&lt;/b&gt;
&lt;ul&gt;&lt;li&gt;Le site de Flyspray : &lt;a href="http://flyspray.org/doku.php" rel="external nofollow"&gt;Cliquez ici !&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;Le bugkiller de Flyspray (demo) : &lt;a href="https://bugs.flyspray.org/" rel="external nofollow"&gt;Cliquez ici !&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;p style="text-align:right;"&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;&lt;span style="color:rgb(211,211,211);"&gt;&lt;span style="font-size:8px;"&gt;&lt;u&gt;Crédits&lt;/u&gt;: Moathib - &lt;a href="http://forum.sa-mp.com/showthread.php?t=494038" rel="external nofollow"&gt;http://forum.sa-mp.com/showthread.php?t=494038&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align:right;"&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;Cordialement,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Antoine.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
]]></description><link>https://melinyel.net/topic/1244/flyspray-bugtracker</link><guid isPermaLink="true">https://melinyel.net/topic/1244/flyspray-bugtracker</guid><dc:creator><![CDATA[FaKe77]]></dc:creator><pubDate>Fri, 31 Oct 2014 18:10:04 GMT</pubDate></item><item><title><![CDATA[[Optimisation] Tester votre site : Google.]]></title><description><![CDATA[&lt;p style="text-align:center;"&gt;&lt;a data-ipb="nomediaparse" href="http://developers.google.com/speed/pagespeed/insights/" rel="external nofollow"&gt;&lt;span style="font-size:24px;"&gt;PageSpeed Insights&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Bonjour, comme j'en avais parlé dans un autre sujet dans le webmastering, je vous présente un outil développé par Google qui vous permet de rentrer votre URL chez Google, le robot va se charger d'aller sur votre site et analyser les temps de chargement afin de vous donner des conseils sur une optimisation possible.  &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Liens :&lt;/strong&gt; &lt;a data-ipb="nomediaparse" href="http://developers.google.com/speed/pagespeed/insights/" rel="external nofollow"&gt;http://developers.google.com/speed/pagespeed/insights/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Vous aurez une analyse de votre page web directement après ça.  &lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Interface de départ :&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;img alt="JrK7waw.png" src="https://i.imgur.com/JrK7waw.png"/&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;
Après avoir entré l'URL :&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;img alt="1UcJDl5.png" src="https://i.imgur.com/1UcJDl5.png"/&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;(Oui, je devrais me plaindre auprès d'&lt;abbr title="Invision Power Board"&gt;IPB&lt;/abbr&gt;   )&lt;br/&gt;&lt;br/&gt;
Voilà !&lt;/p&gt;
]]></description><link>https://melinyel.net/topic/953/optimisation-tester-votre-site-google</link><guid isPermaLink="true">https://melinyel.net/topic/953/optimisation-tester-votre-site-google</guid><dc:creator><![CDATA[Azad]]></dc:creator><pubDate>Mon, 28 Jul 2014 14:37:05 GMT</pubDate></item><item><title><![CDATA[[SEO] Outils d'analyses]]></title><description><![CDATA[&lt;p&gt;Le site seochat propose un pannel assez vaste (mais limité si on est pas inscrit) pour analyser votre site en tirer les bonnes analyses et savoir quoi améliorer : &lt;a data-ipb="nomediaparse" href="http://tools.seochat.com/" rel="external nofollow"&gt;&lt;strong&gt;Free SEO tools&lt;/strong&gt;&lt;/a&gt; !&lt;br/&gt;&lt;br/&gt;
Ces outils vous permettront de générer des sitemap de vos sites, d'analyser vos META TAG pour savoir ce qu'il manque, etc...  &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Voici un aperçu du site :&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p style="text-align:center;"&gt;&lt;img alt="IiVriif.png" src="https://i.imgur.com/IiVriif.png"/&gt;&lt;/p&gt;
]]></description><link>https://melinyel.net/topic/929/seo-outils-danalyses</link><guid isPermaLink="true">https://melinyel.net/topic/929/seo-outils-danalyses</guid><dc:creator><![CDATA[Azad]]></dc:creator><pubDate>Thu, 24 Jul 2014 12:56:40 GMT</pubDate></item><item><title><![CDATA[[Webmail] RAINLOOP]]></title><description><![CDATA[&lt;p style="text-align:center;"&gt;&lt;img alt="logo-256x256-tiny.png" src="&lt;base_url&gt;/applications/sslimageproxy/interface/image.php?url=http://rainloop.net/static/img/logo-256x256-tiny.png"/&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;a data-ipb="nomediaparse" href="http://rainloop.net/" rel="external nofollow"&gt;&lt;span style="font-size:24px;"&gt;&lt;span style="font-family:tahoma, geneva, sans-serif;"&gt;RAINLOOP&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;Aujourd'hui je viens vous parler d'un CMS Webmail que j'ai découvert, qui est juste fabuleux, et que certains connaissent peut-être déjà.&lt;br/&gt;
Pour les CMS Webmail, on connaissait Squirrel ou Roundcube, mais désormais RainLoop commence à prendre ses marques.  &lt;/p&gt;
&lt;p&gt;Il a pour avantage d'être très souple, performant, rapide et très bien réalisé. Voici ses caractéristiques (en anglais) :&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div&gt;
Features

&lt;/div&gt;
&lt;ul&gt;&lt;li&gt;Modern user interface.&lt;/li&gt;
&lt;li&gt;Complete support of IMAP and SMTP protocols including SSL and STARTTLS.&lt;/li&gt;
&lt;li&gt;Minimalistic resources requirements.&lt;/li&gt;
&lt;li&gt;Direct access to mail server is used (mails are not stored locally on web server).&lt;/li&gt;
&lt;li&gt;Allows for adding multiple accounts to primary one, simultaneous access to different accounts in different browser tabs is supported. Additional identities.&lt;/li&gt;
&lt;li&gt;Administrative panel for configuring main options.&lt;/li&gt;
&lt;li&gt;Really simple installation and update (the product is updated from admin panel).&lt;/li&gt;
&lt;li&gt;Integration with Facebook, Google, Twitter and Dropbox.&lt;/li&gt;
&lt;li&gt;Managing folders list.&lt;/li&gt;
&lt;li&gt;Simple look'n'feel customization.&lt;/li&gt;
&lt;li&gt;Configurable multi-level caching system.&lt;/li&gt;
&lt;li&gt;Extending functionality with plugins installed through admin panel.&lt;/li&gt;
&lt;li&gt;Perfect rendering of complex HTML mails.&lt;/li&gt;
&lt;li&gt;Drag'n'drop for mails and attachments.&lt;/li&gt;
&lt;li&gt;Keyboard shortcuts support.&lt;/li&gt;
&lt;li&gt;Autocompletion of e-mail addresses.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Il comprend notamment la double authentification, chiffrage PGP, intégration Facebook / Twitter / Dropbox, et l'ajout de domaine personnalisé.&lt;br/&gt;
Le CMS est gratuit pour une utilsation personnelle et non-commerciale, vous pouvez le &lt;a data-ipb="nomediaparse" href="http://rainloop.net/downloads/" rel="external nofollow"&gt;télécharger ici&lt;/a&gt;.&lt;br/&gt;
Ou même &lt;a data-ipb="nomediaparse" href="http://demo.rainloop.net/" rel="external nofollow"&gt;l'essayer ici&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Voilà, je pense l'adopter pour mon usage quotidien.  &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
]]></description><link>https://melinyel.net/topic/928/webmail-rainloop</link><guid isPermaLink="true">https://melinyel.net/topic/928/webmail-rainloop</guid><dc:creator><![CDATA[Azad]]></dc:creator><pubDate>Thu, 24 Jul 2014 12:31:28 GMT</pubDate></item><item><title><![CDATA[[SEO] Utilisation de Ping-O-Matic]]></title><description><![CDATA[&lt;p style="text-align:center;"&gt;&lt;span style="font-size:24px;"&gt;&lt;a data-ipb="nomediaparse" href="http://pingomatic.com/" rel="external nofollow"&gt;http://www.pingomatic.com/&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Pingomatic est un site web spécialisé dans ce qu'on appelle le "ping" de moteur de recherche.&lt;br/&gt;
Concrétement, ce site a développé une API permettant de communiquer avec les moteurs de recherche et des informer des mises à jour à effectuer sur certains sites.&lt;br/&gt;
Par exemple, vous venez de faire une mise à jour et vous souhaitez que cela soit considéré par les moteurs de recherche : plutôt que d'attendre le passage des bots sur votre site, rendez-vous sur &lt;a data-ipb="nomediaparse" href="http://pingomatic.com" rel="external nofollow"&gt;pingomatic.com&lt;/a&gt; :&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;img alt="EfYD2TI.png" src="https://i.imgur.com/EfYD2TI.png"/&gt;&lt;/p&gt;
&lt;p style="text-align:center;"&gt; &lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;L'image parle d'elle-même : vous rentrez le nom de votre site web, l'URL de ce dernier, et les services à notifier. Pingomatic va se charger de les contacter pour les informer qu'il y a des nouveautés sur votre site web, et qu'il faut aller indexer ça.  &lt;br/&gt;&lt;br/&gt;
Pour informations, Melinyel a investit un peu d'argent pour qu'un ping soit fait quotidiennement vers ses sites webs : Google ne ratera plus rien !&lt;/p&gt;
]]></description><link>https://melinyel.net/topic/921/seo-utilisation-de-ping-o-matic</link><guid isPermaLink="true">https://melinyel.net/topic/921/seo-utilisation-de-ping-o-matic</guid><dc:creator><![CDATA[Azad]]></dc:creator><pubDate>Wed, 23 Jul 2014 14:23:53 GMT</pubDate></item><item><title><![CDATA[Re-écrire des adresses grâce à un fichier .htaccess]]></title><description><![CDATA[&lt;p&gt;Bonjour à tous,&lt;/p&gt;&lt;p&gt;Je vais vous expliquer comment faire plusieurs redirection interne grâce à un fichier .htaccess car oui on peut faire beaucoup de chose avec ce petit fichier (comme gérer les accès).&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;On va commencer par quelque de simple: faire une page d'erreur, LA célèbre page "404 Not Found" (400 est le numéro de l'erreur, et "Not Found" signifie "non-trouvé").&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;pre class="ipsCode prettyprint"&gt;# Contexte: Notre gentil admin nous offre un accès pour faire notre site dans mon cas nous allons dire qu'il s'agit de "mars073.melinyel.net" mais lorsque l'on fait un lien vers un fichier inexistant (ex: [url=http://mars073.melinyel.net/monFichier.txt]http://mars073.melinyel.net/monFichier.txt[/url]) la redirection se fait sur [url=]"http://melinyel.net/error"[/url] alors je crée un fichier error.php et je veux que lorsque l'on veut afficher un fichier inexistant.
#Syntaxe: ErrorDocument [n°erreur] [fichier]
ErrorDocument 404 ./error.php
&lt;/pre&gt;&lt;span style="color:#FF0000;"&gt;&lt;strong&gt;/!\ Attention :&lt;/strong&gt;&lt;/span&gt; l'url du client ne va pas changer donc si vous avec un fichier à charger (ex: &lt;img src="uploads/123.gif"&gt; ou le css) et que le mauvais lien est "&lt;a href="http://mars073.melinyel.net/ecrits/monFichier.txt" rel="external nofollow"&gt;http://mars073.melinyel.net/ecrits/monFichier.txt&lt;/a&gt;" l'image sera cherché dans &lt;a href="http://mars073.melinyel.net/ecrits/_uploads/123.gif" rel="external nofollow"&gt;http://mars073.melinyel.net/ecrits/_uploads/123.gif&lt;/a&gt;. (à titre informatif l'erreur 403 est lorsque l'accès est refusé)&lt;p&gt;&lt;/p&gt;&lt;p&gt;Maintenant nous allons faire un peut plus compliqué, comme vous le voyez sur pas mal de boutique en ligne ou autre vous avez souvent des liens comme "&lt;a href="http://mars073.melinyel.net/article-9986.html" rel="external nofollow"&gt;http://mars073.melinyel.net/article-9986.html&lt;/a&gt;" mais pourtant si vous accédez aux dossiers vous ne verrez pas le fichier "article-9986.html", c'est normal, enfaite l'adresse que vous avez cherchez vous a envoyé une réponse en réécrivant l'accès en son entre.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Dans mon cas (car mon cas est très intéressant &lt;/3) vous allons dire que j'ai fais un fichier du nom de "shop.php" et qu'il charge un article selon une variable GET du nom de "id" (c'est les données dans l'url), ce fichier se trouve dans un dossier du nom de "engine" à la racine du site et je veux donc créer un système comme expliqué au dessus.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;pre class="ipsCode prettyprint"&gt;#Syntaxe: RewriteRule [lien_d'origine/regex] [lien_à_charger]
#On autorise les liens symboliques:
Options +FollowSymlinks
#On active la réécriture de l’accès:
RewriteEngine on
#On donne notre regex et sa redirection:
RewriteRule ^article-([0-9]+).html$ ./engine/shop.php?id=$1
&lt;/pre&gt;Petite explication sur ce qu'est un regex (REGular EXpression ou expression régulière en français), c'est enfaite un motif, c'est à dire que l'on cherche une certaine syntaxe, dans l'exemple que j'ai donné au dessus on peut décomposer les élèments ainsi:&lt;p&gt;- ^article- : celà commence par "article-"&lt;/p&gt;&lt;p&gt;- () : récupérer la valeur entre les parenthèses qui est retourné dans $n (n = n&lt;sup&gt;éme&lt;/sup&gt; récupération)&lt;/p&gt;&lt;p&gt;- [0-9]+ : celà contient des caractères de 0 à 9, le "+" symbolise que le caractère doit-être présent au moins une fois.&lt;/p&gt;&lt;p&gt;- .html$ : celà termine par ".html"&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Nous allons monter d'un cran, cette fois-ci à la place d'avoir un nom.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;pre class="ipsCode prettyprint"&gt;# premier cas nous n'autorisons que les caractères alphanumériques (a à z et 0 à 9) et le caractère "" et nous allons le mettre insensible à la case ( ne pas faire la différence entre majuscule est minuscule).
RewriteRule (?i)^article-([a-z0-9_]+).html$ ./engine/shop.php?name=$1
deuxième cas nous autorisons tout les caractères même si il y en a aucun et nous rendons le caractère "-" qui se trouve juste avant
RewriteRule (?i)^article?-(.).html$ ./engine/shop.php?name=$1
&lt;/pre&gt;le "(?i)" devant symbolise donc que la chaîne est insensible à la case.&lt;p&gt;&lt;/p&gt;&lt;p&gt;Vous voulez faire un système de page et donc vous écrivez&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;pre class="ipsCode prettyprint"&gt;Rewrite (.) ./index.php?p=$i
&lt;/pre&gt;Et surprise: 500 internal error&lt;p&gt;En réalité le serveur va faire:&lt;/p&gt;&lt;blockquote class="ipsQuote" data-ipsquote=""&gt;&lt;div&gt;&lt;p&gt;#requête de base: &lt;a href="http://mars073.melinyel.net/Accueil" rel="external nofollow"&gt;http://mars073.melinyel.net/Accueil&lt;/a&gt;&lt;/p&gt;&lt;p&gt;#première réécriture:&lt;/p&gt;&lt;p&gt;&lt;a href="http://mars073.melinyel.net/index.php?p=Accueil" rel="external nofollow"&gt;http://mars073.melinyel.net/index.php?p=Accueil&lt;/a&gt;&lt;/p&gt;&lt;p&gt;#deuxième réécriture:&lt;/p&gt;&lt;p&gt;&lt;a href="http://mars073.melinyel.net/index.php?p=index.php" rel="external nofollow"&gt;http://mars073.melinyel.net/index.php?p=index.php&lt;/a&gt;&lt;/p&gt;&lt;p&gt;#troisième réécriture:&lt;/p&gt;&lt;p&gt;&lt;a href="http://mars073.melinyel.net/index.php?p=index.php" rel="external nofollow"&gt;http://mars073.melinyel.net/index.php?p=index.php&lt;/a&gt;&lt;/p&gt;&lt;p&gt;...&lt;/p&gt;&lt;/div&gt;&lt;/blockquote&gt;car comme vous l'avez spécifié que ça pouvait être une chaîne de n'importe quel caractère de n'importe quelle longueur donc "index.php" (les variables GET ne sont pas prissent en compte dans la réécriture) est une chaîne correct pour réécriture donc il va pas arrêter de la réécrire et vous afficher un message d'erreur comme quoi il s'agit d'une boucle infinie  &lt;p&gt;&lt;/p&gt;&lt;p&gt;Il existe plusieurs solutions:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;pre class="ipsCode prettyprint"&gt;#première solution: mettre un page/ en premier
RewriteRule (?i)^page/(.+)$ ./index.php?p=$1
#deuxième solution: mettre les différentes pages existantes séparé par une barre ("|")
RewriteRule (?i)^page/(accueil|boutique|contact)$ ./index.php?p=$1
ou
RewriteRule (?i)^(accueil|boutique|contact)$ ./index.php?p=$1
#troisième solution vous testez si le fichier existe et si ce n'est pas le cas il fait la redirection
RewriteCond %{REQUEST_FILENAME} !-f #il ne faut pas que ça soit un fichier existant
RewriteCond %{REQUEST_FILENAME} !-d #il ne faut pas que ça soit un dossier existant
RewriteRule (.) ./index.php?p=$1
&lt;/pre&gt;Dans la dernière solution vous voyez "REQUEST_FILENAME" qui est une des nombre variable que l'on peur utiliser dans mon cas (en local) elle restourne "C:/xampp/htdocs/" puis le fichier/répertoire que j'ai entré dans l'url, vous pouvez aussi utiliser "REQUEST_URI" qui ne retourne que le répertoire/fichier entré dans l'url.&lt;p&gt;&lt;/p&gt;&lt;p&gt;Imaginons que maintenant vous voulez faire un système de sous page dedans donc page 1, 2, 3, 4, ... et vous mettez ce paramètre dans l'url donc &lt;a href="/" rel="external nofollow"&gt;http://.../&lt;/a&gt; Accueil?page=2 (attention si vous mettez "p" comme non vous allez réécrire sur la variable faite dans le htaccess enfin vous pouvez toujours changer son nom pour une meilleur esthétique côté client)&lt;/p&gt;&lt;p&gt;Comme vous le constaterez la variable n'est pas déclaré sur votre page après la réécriture, c'est normal vous devez ajouter un flag lors de la réécriture pour dire qu'il faut aussi donner les variable GET, il s'agit du flag ("drapeau" en français) QSA, ce qui va donner dans votre htaccess:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;pre class="ipsCode prettyprint"&gt;
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.) ./index.php?p=$1 [QSA]
&lt;/pre&gt;Je pense que j'ai dis le principal à connaître si vous désirez faire un peu compliqué ou si vous cherchez plus d'info voici de la doc:&lt;p&gt;- &lt;a href="http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriterule" rel="external nofollow"&gt;RewriteRule&lt;/a&gt;&lt;/p&gt;&lt;p&gt;- &lt;a href="http://httpd.apache.org/docs/current/rewrite/flags.html" rel="external nofollow"&gt;Les flags/drapeaux&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;J'espère que mon tutoriel sera utile à quelqu'un,&lt;/p&gt;&lt;p&gt;Bonne programmation à tous,&lt;/p&gt;&lt;p&gt;Cordialement,&lt;/p&gt;&lt;p&gt;Mars073.&lt;/p&gt;
]]></description><link>https://melinyel.net/topic/909/re-écrire-des-adresses-grâce-à-un-fichier-htaccess</link><guid isPermaLink="true">https://melinyel.net/topic/909/re-écrire-des-adresses-grâce-à-un-fichier-htaccess</guid><dc:creator><![CDATA[mars073]]></dc:creator><pubDate>Tue, 22 Jul 2014 15:47:29 GMT</pubDate></item><item><title><![CDATA[Concevoir et créer un site web]]></title><description><![CDATA[&lt;p&gt;Nous allons nous plonger dans la création complète d’un site web. De la conception jusqu’à la mise en ligne, nous allons explorer chaque aspect de cette aventure. N’hésitez pas à me faire part de vos retours.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Ce post est à voir comme une grande introduction à une série de tutoriel consacré à la création de site web.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Il ne s’agira pas d’apprendre à programmer, ni à dessiner ou à communiquer. Mais de voir comment conjuguer ses trois aspects dans la création d’un site.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Pour la petite histoire, dans mon métier (chef de projet web), j’ai rencontré pas mal de bons programmeurs, quelques bons graphistes et certains communicants plutôt compétents. Ce qui est plus rare, c’est de rencontrer quelqu’un qui maîtrise suffisamment tous ces domaines pour les harmoniser au service du web.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Avant de rentrer dans le vif du sujet, je tiens à préciser que j’ai choisie l’ordre des étapes tel qu’il est pour une personne seule. Dans le cas d’un travail à plusieurs, il peut y avoir des choses faîtes en parallèles, mais cela rajoute une dimension : de la gestion de tâches que l’on n’abordera pas ici !&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:24px;"&gt;&lt;span style="color:rgb(75,0,130);"&gt;I. Le concept&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;1. Etablir le concept (Qui ?)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Tout commence par une idée. Cette idée doit être la plus clair et complète possible avant d’envisager quoique ce soit d’autre.&lt;/p&gt;
&lt;p&gt;Un concept de base bien établi repose sur plusieurs points fondamentaux :&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Il doit permettre de déterminer un public cible&lt;/li&gt;
&lt;li&gt;Ainsi que déterminer les technologies à utiliser&lt;/li&gt;
&lt;li&gt;Enfin, permettre de communiquer sur le site&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Avoir un public cible est essentiel pour ne pas se tromper dans les choix technologies et esthétiques. Exemple d’erreur courante : faire un site à destination d’un public de jeune adulte et ne pas prévoir une compatibilité avec les appareils mobiles.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Pour ce le dernier point cité, la raison est simple : établir un concept fourni, réfléchit et maîtrisé c’est pourvoir facilement communiquer sur le sujet et cela évitera de se perdre dans les étapes futurs.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;em&gt;Exemple :&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Un site communautaire à destination des jeunes adultes leurs permettant d’échanger librement leurs idées, savoirs et cultures. L’accent est mis sur l’attrait aux nouvelles technologies d’information et sur l’informatique en générale.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;2. Définir les fonctionnalités de base (Quoi ?)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Maintenant que l’on sait ce que l’on va faire, nous pouvons réfléchir aux fonctionnalités maîtresses.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;L’important ici, comme pour l’étape précédente est de bien détailler les fonctionnalités et déjà réfléchir à leurs possibles évolutions.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Exemple non détaillé :&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Forum public / privé&lt;/li&gt;
&lt;li&gt;Système d’inscription&lt;/li&gt;
&lt;li&gt;Gestion de profil des membres&lt;/li&gt;
&lt;li&gt;Préférences des membres&lt;/li&gt;
&lt;li&gt;Shoutbox&lt;/li&gt;
&lt;li&gt;Messagerie membre à membre&lt;/li&gt;
&lt;li&gt;Systèmes de notifications&lt;/li&gt;
&lt;li&gt;Système de newsletter&lt;/li&gt;
&lt;li&gt;Système de ranking&lt;/li&gt;
&lt;li&gt;Système de réputation&lt;/li&gt;
&lt;li&gt;Système de modération&lt;/li&gt;
&lt;li&gt;Gestion &amp; Administration&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;3. Définir les scénarios de navigations (Comment ?)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Maintenant nous savons qui va faire quoi. Nous devons donc déterminer comment.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Cette étape peut se révélé être très simple comme devenir un véritable casse-tête. Tout dépend de ce que l’on souhaite faire. Il s’agir d’imaginer et de concevoir comment un utilisateur lambda va réaliser des actions et utiliser les fonctionnalités décrites plus haut.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Le mieux pour s’organiser est d’écrire des scénarios généraux, puis de détailler chaque fonctionnalité à part.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Etablir un nombre important de scénarios permettra de faciliter le design et le développement du site. Cela permet de mettre en évidence quels fonctionnalités / outils / contenus sont à mettre en évidence ou à rendre discret dans certaines situations.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;em&gt;Exemples :&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;De n’importe où sur le site : accéder en clic à sa messagerie personnelle.&lt;/p&gt;
&lt;p&gt;Arriver sur site, consulter un sujet, allez sur la page d’inscription du site, remplir le formulaire et validez. Attendre le mail de confirmation. Activer son compte et consulter sa page de profil.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Toutes mes félicitations : votre projet est né ! Il est temps de le baptiser !&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:24px;"&gt;&lt;span style="color:rgb(75,0,130);"&gt;II. Le design&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;1. Définir un thème graphique&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;La première étape de design consiste à définir l’esthétique générale du site. Cette esthétique doit être en adéquation avec le public visé.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Par exemple, il faut éviter de choisir un thème gothique pour un magazine d’informations générales pour la ménagère de moins de 50 ans.&lt;/p&gt;
&lt;p&gt;Plus le public cible est large est varié, moins l’esthétique doit être forte et prononcée. Par contre, si la cible est une catégorie de personnes bien précises, il est quasiment indispensable de marquer l’esthétique.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;em&gt;Exemple :&lt;/em&gt; un site d’actus pour les geekettes, il doit être un minimum girly et marquer l’appartenance à la technologie.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;2. Conceptualiser les étapes des scénarios&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Grâce à notre thème graphique, nous allons enfin pouvoir mettre en image les fonctionnalités du site.&lt;/p&gt;
&lt;p&gt;Ici, il s’agit d’établir de manière schématique les différentes actions possibles pour les utilisateurs.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;3. Rédiger les principaux textes&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Il est important de rédiger les textes les plus importants assez tôt ; désignations des boutons, titres des encarts, labels des champs et autres textes de fronts (accueil, messages d’informations, accroches).&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Ceci pour éviter d’être confronter à des problèmes d’intégrations et de devoir revoir certains concepts ou propriétés ou parce qu’un texte ne rentre pas. Mais si dans l’absolu, tout l’art du webdesigner consiste à concevoir des sites qui s’adapte au contenu, mieux vaux savoir quels seront les impératifs à respecter en termes d’adaptabilité.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;4. Faire une maquette graphique&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Une maquette graphique consiste en une représentation idéaliste du projet de site dans un état donné. C’est-à-dire que vous devez représenter dessus ce qu’un utilisateur pourra voir en prenant un cas particulier.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Aujourd’hui, il est souvent nécessaire de faire plusieurs maquettes graphiques des sites. En raison de la grande diversité des supports et notamment de résolutions d’écrans, il faut prévoir à quoi noter site ressemblera sur ces supports.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Plus la maquette graphique est détaillée et complète, plus le développement et surtout l’intégration sera facilité.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:24px;"&gt;&lt;span style="color:rgb(75,0,130);"&gt;III. Le développement&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Que votre site soit en PHP, Ruby, ASP ou n’importe quel autre langage. Une bonne conception de site passe par une conception Modèle / Vue / Contrôleur (MVC).&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Il s’agit de séparer le code définissant les modèles de données, celui effectuant des contrôles et de la gestion sur les modèles et celui dédié à l’affichage et aux interactions avec l’utilisateur.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Cette séparation ne doit pas uniquement être physique (dans des fichiers séparés), mais aussi logique (du point de vue de l’exécution du code). Concrètement, le code des modèles, des contrôleurs et des vues ne doivent pas être dépendent les uns des autres.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;En pratique ça donne quoi ?&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Pour les modèles : ceux-ci doivent pouvoir être utilisé dans n’importe quel contexte (autres sites, autres environnement)&lt;/li&gt;
&lt;li&gt;Pour les contrôleurs : ils doivent avoir une exécution ininterrompue. C’est-à-dire qu’ils doivent gérer tous les cas d’erreurs et d’exceptions et fournir une réponse voulue. En clair, ils ne doivent pas planter, même si le code des modèles ou des vues à côté fait n’importe quoi.&lt;/li&gt;
&lt;li&gt;Pour les vues : ici, le but est d’avoir un affichage indépendant du contexte. A savoir, en fonction du résultat d’un contrôleur, elles doivent toujours offrir un résultat cohérent.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;1. Concevoir les modèles de données&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;La première étape de la programmation d’un site consiste à concevoir les modèles de données. Pour faire simple : majoritairement il s’agit de concevoir la base de données qui sera interfacée avec le site.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Celle-ci peut s’avérer très simple dans le cas d’un site de type blog (une suite d’article daté). Mais dans le cas de sites offrants des fonctionnalités plus complexes, la conception de la base de données n’est pas à négliger. Que ce soit aux niveaux des performances du site ou de la facilité de maintenance, des modèles bien réfléchis, optimisés et intégré c’est déjà un bon départ pour assurer une longue vie au site.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Cette conception ce fait avec un Modèle logique de données (MLD) qui est indépendant d’un langage de programmation.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;2. Développer les modèles&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Une fois la base de données en place, il est temps de passer à la programmation… enfin !&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;La programmation débute par créer les modèles de données et à les interfacer avec la base de données. Ceci peut être réalisé avec l’aide d’un ORM (Object-Relationnal Mapping) qui permettra de d’interfacer directement les modèles crées avec la base de données.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;L’avantage d’un ORM est qu’il permet de lier de manière logique les modèles entre eux par des contraintes.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Par exemple, un article de blog possède du contenu une date et un auteur. Il s’agit donc d’un modèle, mais un auteur d’article est lui aussi un modèle (pseudo, email, date d’inscription, ….).&lt;/p&gt;
&lt;p&gt;Un ORM permettra de lier ses modèles en disant, qu’un article est toujours lier à un et un seul auteur. De même un auteur peut avoir aucun, un ou plusieurs articles.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;3. Développer les contrôleurs&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Une fois les modèles en place, il est désormais possible de développer les différents contrôleurs. C’est-à-dire tous ce qui permettra de gérer et de travailler avec les modèles.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Un exemple simple en lecture : avoir une liste d’articles de tel auteur trié par date. Le contrôleur va vérifier que les articles sont bien affichable (pas de modération, contenu non masquer, …) et que l’utilisateur à le droit de les consulter (utilisateur non banni, article dans la bonne langue, …).&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Un autre exemple en écriture : lors de l’inscription d’un utilisateur, vérifier le pseudo, le mot de passe, l’email, ….&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:24px;"&gt;&lt;span style="color:rgb(75,0,130);"&gt;IV. L’intégration&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Dans le modèle MVC on a fait le M puis le C, il nous reste donc le V. Les vues, il s’agit donc bien sur des pages vues par les utilisateurs, mais aussi les pages d’administration jusqu’aux résultats de scripts console se lançant directement sur le serveur (même en ASCII ça reste une vue &lt;span style="font-family:wingdings;"&gt;J&lt;/span&gt;).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;1. Intégrer le design&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Dans les vues, je conseille de commencer par intégrer le design du site. Cela permet de vérifier assez rapidement que le design convient et de faire des retouches au besoin.&lt;/p&gt;
&lt;p&gt;Pour bien intégrer un design, il est nécessaire de maîtriser le CSS. Le but de l’intégration est transcrire un dessin en page web dynamique, il va donc falloir traduire des éléments graphiques de base en éléments web.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Tout l’art de l’intégration constant à recourir à un minimum d’images et de règles CSS pour un maximum de respect de dessin original.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;2. Intégrer les textes&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Une fois le design en place, vous pouvez insérer dans les pages, tous les textes fixes.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Ces textes sont particulièrement importants. Ce sont eux qui vont être repérer en priorité par les moteurs de recherche et également ceux qui vont renseigner les nouveaux utilisateurs sur le site.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Bien intégré c’est texte en utilisant tous les moyens possibles (couleurs, gras, italique, taille, …) permet de capter facilement l’attention et d’informer efficacement sans gêner la lecture pour l’utilisateur.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Ensuite, vous pouvez vous assurer que les textes dynamiques s’intègre bien dans le design. Notamment les infobulles, les menus, et les principaux titres dynamiques.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;3. Intégrer les médias&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Si votre site comporte des médias riches (animations, sons, vidéos, …), leur intégration doit être particulièrement soignée. En effet, la plupart des utilisateurs trouvent les médias riches envahissants et dérangeants.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Donc, les animations doivent rester discrètes, les sons doivent pourvoir facilement être coupés et les vidéos ne devrait pas se déclencher automatiquement. Sauf, dans des cas exceptionnel et évidant, comme une page qui intègre uniquement un lecteur vidéo et une playlist, par exemple.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Dans tous les cas, l’accent doit être mis pour mettre en avant l’information recherchée par l’utilisateur.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;4. Enrichir l’expérience utilisateur&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Votre site est presque fini, il ne manque plus que les finitions. Et c’est peut-être là le plus important, tous ces petits détails qui font que l’utilisateur se sente bien, et que les moteurs de recherches lisent correctement les pages.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Enrichir un site peut être fait d’une multitude de manière.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Parmi les plus « vielles » méthodes : la newsletter, le flux RSS, les notifications en espace membre, etc. Mais il faut penser aussi, aux réseaux sociaux, aux sitemaps, aux micro-données, aux retours participatifs (les utilisateurs eux-mêmes qui enrichissent le contenu), et la liste est longue.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Voilà ! Votre site est prêt à être diffusé !&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:24px;"&gt;&lt;span style="color:rgb(75,0,130);"&gt;V. La production&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;La mise en production d’un site rassemble toutes les dernières étapes qui ne peuvent être correctement faîtes que si site fonctionne en condition réelle.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;1. Mise en ligne&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Une mise en ligne réussie est une mise en ligne qui ne se voir pas !&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Afin d’éviter de crée des erreurs d’entrée de jeu sur votre site, il convient de préparer la mise en ligne. En effet, une mise en ligne prend du temps (configurations, upload, …). C’est un laps de temps ou le site est accessible via son URL mais où il n’est pas totalement prêt à accueillir les visiteurs.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Le plus simple est de rediriger l’ensemble du trafic sur une simple page d’explication le temps de la mise en ligne. Le but étant au final de pourvoir activer le site en une seule action brève.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;2. Tester le site&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Une fois en ligne, vous pouvez tester l’ensemble de votre et notamment les fonctionnalités spécifique à une exécution sur un serveur distant. A savoir, les systèmes d’upload, de mailing, ou toute action nécessitant des extensions particulière sur le serveur web.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Le mieux étant d’avoir un environnement de développement avec un accès restreint, mais ce n’est pas toujours possible ni forcément nécessaire (dans le cas d’un petit site relativement fixe).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;3. Intégrer les ressources externes&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Ça y est ! Tout fonctionne enfin ! Le dernier coup d’éponge consiste à intégrer toutes les ressources des services extérieurs.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Les services de statistiques, comme Google Analytics et New Relic, les services de publicités ou encore l’intégration des réseaux sociaux (de type flux des posts, partage rapide, …).&lt;/p&gt;
&lt;p&gt;Avec tout ça en place vous êtes on ne peut plus prêt alors c’est parti !&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ouverture du site !&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:18px;"&gt;4. Ouvrir le site&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Vous pouvez rendre le site accessible au public, et là, il ne faut pas oublier le plus important : prévenir tout le monde !&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Si votre site rencontre suffisamment de visiteurs, le travail ne fait que commencer et il faudra maintenir le site et adapter des fonctionnalités et/ou en apporter de nouvelles.&lt;/p&gt;
&lt;p&gt;Plus vous avez soigné votre création de base et plus la maintenance et l’ajout de fonctionnalité sera facilité.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;Merci d'avoir suivi jusqu'au bout !&lt;/p&gt;
]]></description><link>https://melinyel.net/topic/421/concevoir-et-créer-un-site-web</link><guid isPermaLink="true">https://melinyel.net/topic/421/concevoir-et-créer-un-site-web</guid><dc:creator><![CDATA[Anaeria]]></dc:creator><pubDate>Wed, 02 Apr 2014 18:18:33 GMT</pubDate></item><item><title><![CDATA[Implémenter Google Universal Analytics]]></title><description><![CDATA[&lt;p&gt;Nous allons voir comment intégrer efficacement Google Analytics sur les pages web.&lt;/p&gt;
&lt;p&gt;Il s'agira d'intégrer la version Universal Analytics (par défaut) en version asynchrone. Le tutoriel se fera en 2 parties, premièrement les étapes d'administration dans l'interface de Google Analytics, puis l'intégration du code de suivi.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:18px;"&gt;&lt;strong&gt;I - L'interface de Google Analytics&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Ajouter un site&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Une fois sur le tableau de bord &lt;em&gt;&lt;span style="font-size:10px;"&gt;&lt;span style="color:#696969;"&gt;(disponible ici : &lt;/span&gt;&lt;a href="https://www.google.com/analytics/web/?authuser=0" rel="external nofollow"&gt;&lt;span style="color:#696969;"&gt;https://www.google.com/analytics/web/?authuser=0&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#696969;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Allez dans l'onglet "&lt;strong&gt;Admin&lt;/strong&gt;" tout en haut de la page sur la gauche.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Vous arrivez sur une vue à 3 colonnes : Compte, Propriété et Vue.&lt;/p&gt;
&lt;p&gt;Vous pouvez posséder plusieurs comptes; chaque compte contient des propriétés (plus ou moins un "site", mais cette notion peut-être beaucoup plus fine que cela).&lt;/p&gt;
&lt;p&gt;Enfin chaque propriété contient des vues, a savoir des accès rapides a des données filtrées. Par exemple, une vue par sous-domaine.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Ici, ce qui nous intéresse c'est d'ajouter un site. Nous allons donc crée une propriété. Pour cela, dans le menu déroulant de la colonne "&lt;strong&gt;Propriété&lt;/strong&gt;", sélectionnez "&lt;strong&gt;Créer une propriété&lt;/strong&gt;".&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;2. Configurer le site&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Nous avons plusieurs options :&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Le premier choix consiste à sélection un site web ou une application mobile.&lt;/li&gt;
&lt;li&gt;En suite, nous devons choisir entre "Universal Analytics" et "Classic Analytics". Dans ce tutoriel, je montrerai l'intégration de la version "&lt;strong&gt;Universal Analytics&lt;/strong&gt;", plus complète.&lt;/li&gt;
&lt;li&gt;Ensuite donner un nom a votre site web&lt;/li&gt;
&lt;li&gt;Renseignez le nom de domaine &lt;span style="font-size:12px;"&gt;&lt;em&gt;(Attention : de préférence ne pas mettre de "www" sauf dans le cas ou l'on souhaite gérer les sous-domaines séparément)&lt;/em&gt;&lt;/span&gt;
&lt;/li&gt;&lt;li&gt;Sélectionnez la catégorie sectorielle. Ici, c'est en fonction du type de site web à suivre, au pire on peut choisir "Autre".&lt;/li&gt;
&lt;li&gt;Enfin choisissez votre fuseaux horaire préféré&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Cliquez sur "&lt;strong&gt;Obtenir un ID de suivi&lt;/strong&gt;" et voilà !&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Google va vous proposer un code d'intégration, mais je préfère en fournir un autre qui présente plein d’avantages !&lt;/p&gt;
&lt;p&gt;Pour poursuivre il faut juste retenir l'ID de suivi généré sous la forme : &lt;strong&gt;UA-XXXXXX-X&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;La première partie sera toujours identique pour votre compte et le derniers chiffre s'incrémente à chaque propriété crée.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:18px;"&gt;&lt;strong&gt;II - Intégrer le code dans une page&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;La première partie s’intègre dans le header de votre page. C'est à dire entre les balises &lt;strong&gt;&lt;head&gt;&lt;/strong&gt; et &lt;strong&gt;&lt;/head&gt;&lt;/strong&gt;:&lt;/p&gt;
&lt;pre class="ipsCode prettyprint lang-html"&gt;
&lt;script&gt;
(function(doc, script) {
var js,
fjs = doc.getElementsByTagName(script)[0],
frag = doc.createDocumentFragment(),
add = function(url, id) {
if (doc.getElementById(id)) {return;}
js = doc.createElement(script);
js.src = url;
js.async = true;
id &amp;&amp; (js.id = id);
frag.appendChild( js );
};
// Google Analytics
add(('https:' == document.location.protocol ? 'https://' : 'http://') + 'stats.g.doubleclick.net/dc.js', 'ga');
fjs.parentNode.insertBefore(frag, fjs);
}(document, 'script'));
&lt;/script&gt;
&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Alors, c'est quoi ce machin et comment ça marche ?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Cette syntaxe permet de charger Google Analytics de manière asynchrone, c'est à dire que sont chargement ne perturbera pas l'exécution de votre page.&lt;/p&gt;
&lt;p&gt;Concrètement ce script déclenche une fonction anonyme qui va rajouter des balises &lt;script&gt; asynchrones dans le DOM de la page.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pourquoi cette intégration plutôt que celle de Google ?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;La raison n'est pas liée à Google Analytics lui-même, mais à l'orientation que prennent la plupart des sites aujourd'hui. De plus en plus de code d'intégrations sont fourni avec beaucoup d'API : Google, Facebook, Twitter, etc....&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Cette syntaxe permet de rajouter facilement un script asynchrone propre. Exemple avec d'autres API :&lt;/p&gt;
&lt;pre class="ipsCode prettyprint lang-html"&gt;
&lt;script&gt;
var pwidget_config = { defaults: { gaTrackSocialInteractions: true } };
window.___gcfg = {lang: 'fr'};
(function(doc, script) {
var js,
fjs = doc.getElementsByTagName(script)[0],
frag = doc.createDocumentFragment(),
add = function(url, id) {
if (doc.getElementById(id)) {return;}
js = doc.createElement(script);
js.src = url;
js.async = true;
id &amp;&amp; (js.id = id);
frag.appendChild( js );
};
// Google Analytics
add(('https:' == document.location.protocol ? 'https://' : 'http://') + 'stats.g.doubleclick.net/dc.js', 'ga');
//Po.st
add('http://i.po.st/share/script/post-widget.js#publisherKey=USERKEY');
// Google+ button
add('http://apis.google.com/js/plusone.js');
// Facebook SDK
add('//connect.facebook.net/fr_FR/all.js#xfbml=1&amp;appId=APPID', 'facebook-jssdk');
// Twitter SDK
add('//platform.twitter.com/widgets.js');
fjs.parentNode.insertBefore(frag, fjs);
}(document, 'script'));
&lt;/script&gt;
&lt;/pre&gt;
&lt;p&gt;Une fois ce script mis en place, il reste deux petits bout de code à intégrer.&lt;/p&gt;
&lt;p&gt;Dans le corps de la page, idéalement juste après le &lt;strong&gt;&lt;body&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Remplacer l'identifiant, par celui fourni par Google.&lt;/p&gt;
&lt;pre class="ipsCode prettyprint lang-html"&gt;
&lt;script type="text/javascript"&gt;window.google_analytics_uacct = "UA-XXXXXX-X";&lt;/script&gt;
&lt;/pre&gt;
&lt;p&gt;Et enfin en toute fin de page juste avant le &lt;strong&gt;&lt;/body&gt;&lt;/strong&gt;, on va pouvoir déclencher le script. Vous devez reprécisez les informations sur suivi dans cet appel : le code de suivi et le nom de domaine. C'est également ici que s'intégreront diverses options au besoin.&lt;/p&gt;
&lt;pre class="ipsCode prettyprint lang-html"&gt;
&lt;script type="text/javascript"&gt;
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXX-X']);
_gaq.push(['_trackPageview']);
_gaq.push(['_setDomainName', 'mondomaine.net']);
&lt;/script&gt;
&lt;/pre&gt;
&lt;p&gt;Une fois tout ça intégré, le script prends effet immédiatement et vous pouvez consulter le résultat dans la section "&lt;strong&gt;Temps réel&lt;/strong&gt;" de l'onglet "&lt;strong&gt;Création de rapport&lt;/strong&gt;" et voir que tout marche.&lt;/p&gt;
]]></description><link>https://melinyel.net/topic/299/implémenter-google-universal-analytics</link><guid isPermaLink="true">https://melinyel.net/topic/299/implémenter-google-universal-analytics</guid><dc:creator><![CDATA[Anaeria]]></dc:creator><pubDate>Thu, 27 Mar 2014 17:24:06 GMT</pubDate></item><item><title><![CDATA[Un éditeur de texte modulable et simple]]></title><description><![CDATA[&lt;p&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:Calibri, helvetica, sans-serif;"&gt;Salut à tous,&lt;br/&gt;
 &lt;br/&gt;
Je viens vous présenter ce soir un éditeur de texte (pas vraiment un IDE) multi-langages que j'apprécie particulièrement pour sa sobriété, sa modularité et sa puissance.&lt;br/&gt;
Je ne vais pas vous en faire l'éloge pendant des lignes et des lignes, puisque après tout les goûts de chacun sont déterminants dans le choix d'un environnement de travail.&lt;br/&gt;&lt;br/&gt;
Sans plus attendre, voici le lien de téléchargement : &lt;a href="http://www.sublimetext.com/" rel="external nofollow"&gt;Sublime Text&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;
Je vous conseille de télécharger la version 2 qui est plus aboutie et plus stable que la 3ème.&lt;br/&gt;
Je rajouterai à la suite de ce topic quelques rapides tutoriels pour vous expliquer comment modifier l'environnement à votre guise à l'aide de différents plugins.&lt;br/&gt;&lt;br/&gt;
Bonne soirée à tous.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
]]></description><link>https://melinyel.net/topic/135/un-éditeur-de-texte-modulable-et-simple</link><guid isPermaLink="true">https://melinyel.net/topic/135/un-éditeur-de-texte-modulable-et-simple</guid><dc:creator><![CDATA[Abraham]]></dc:creator><pubDate>Thu, 13 Mar 2014 22:48:31 GMT</pubDate></item><item><title><![CDATA[Introduction aux sites web]]></title><description><![CDATA[&lt;p style="text-align:center;"&gt;&lt;img alt="site_internet.jpg" src="&lt;base_url&gt;/applications/sslimageproxy/interface/image.php?url=http://www.gouffaprod.com/wp-content/uploads/2011/02/site_internet.jpg"/&gt;&lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;em&gt;Un site web est dans la plupart des cas très complexe en réalité. En effet, lorsque vous cherchez à accéder à une page d'un site, vous envoyez une requête à l'hébergeur avec les informations que vous voulez obtenir à la fin. L'hébergeur va traiter cette requête en fonction des critères puis il vous enverra un code HTML que le navigateur sera capable de traduire.&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align:center;"&gt; &lt;/p&gt;
&lt;p style="text-align:center;"&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;strong&gt;Fonctionnent d'un site web  :&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;Lorsque vous naviguer sur une page internet, vous êtes amené, sans le savoir, à &lt;u&gt;envoyer une &lt;strong&gt;requête &lt;/strong&gt;voir plusieurs au &lt;strong&gt;serveur &lt;/strong&gt;du site en question&lt;/u&gt;. Le serveur va &lt;u&gt;traiter cette requête et &lt;strong&gt;gérera la page&lt;/strong&gt; en fonction des critères de celle-ci avant de vous l'envoyer&lt;/u&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;img alt="207097.png" src="http://uploads.siteduzero.com/files/207001_208000/207097.png"/&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;em&gt;Schéma d'une requête à un serveur dans le cas d'une site statique.  OpenClassrooms&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;Selon le type de site que vous voulez réaliser plusieurs langages vont s'ouvrir à vous. Un &lt;strong&gt;site statique&lt;/strong&gt; est principalement codé en &lt;strong&gt;HTML &lt;/strong&gt;et &lt;strong&gt;CSS, &lt;/strong&gt;donc &lt;u&gt;le webmaster doit modifier le code source à chaque mise à jour du site&lt;/u&gt;. Au contraire, un &lt;strong&gt;site dynamique&lt;/strong&gt; aura des fonctions beaucoup plus avancées grâce notamment au &lt;strong&gt;PHP &lt;/strong&gt;et au &lt;strong&gt;SQL &lt;/strong&gt;qui permettront, combiné ensemble, de &lt;u&gt;créer des interface ajoutant dynamiquement via un formulaire du contenu sur le site&lt;/u&gt;. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;img alt="207100.png" src="http://uploads.siteduzero.com/files/207001_208000/207100.png"/&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;em&gt;Schéma d'une requête à un serveur dans le cas d'une site dynamique.  OpenClassrooms&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;Ainsi, les langages &lt;strong&gt;HTML et CSS&lt;/strong&gt; sont conçus pour &lt;u&gt;mettre en forme le site&lt;/u&gt; tandis que le &lt;strong&gt;PHP et le MySQL&lt;/strong&gt; sont conçus pour &lt;u&gt;dynamiser le site&lt;/u&gt;. Ces quatre langages ne sont pas les seuls bien sûr, il en existe bien d'autres comme le &lt;strong&gt;JavaScript &lt;/strong&gt;permettant &lt;u&gt;l’exécution de scripts par le navigateur chez l'internaute&lt;/u&gt; ou bien encore le&lt;strong&gt; ASP .NET &lt;/strong&gt;et le&lt;strong&gt; &lt;strong&gt;Django&lt;/strong&gt;&lt;/strong&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;img alt="292939.png" src="http://uploads.siteduzero.com/files/292001_293000/292939.png"/&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;em&gt;Schéma d'une requête à un serveur dans le cas d'une site contenant un script JavaScript.  OpenClassrooms&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;strong&gt;Programmer son site web :&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;Pour réaliser un site web complet, vous aurez besoin de &lt;u&gt;nombreux outils&lt;/u&gt; et surtout de beaucoup de temps. Pour commencer, un serveur web : &lt;strong&gt;Apache &lt;/strong&gt;vous permet de &lt;u&gt;créer et d'héberger votre propre site&lt;/u&gt;. Combiné à Apache, &lt;strong&gt;PHP &lt;/strong&gt;vous permettra d'&lt;u&gt;utiliser le langage PHP dans tous vos scripts réaliser sur votre serveur web&lt;/u&gt;. Enfin, PHP ne sort jamais sans bases de données, je vous propose donc le célèbre système de gestion de base de données (&lt;abbr title="Système de Gestion de Base de Données"&gt;SGBD&lt;/abbr&gt;) &lt;strong&gt;MySQL&lt;/strong&gt; qui vous permettra de &lt;u&gt;stocker des données de votre site dans les bases de données de MySQL&lt;/u&gt;. Pour coder votre site web, je vous laisse le choix entre plusieurs outils : le &lt;strong&gt;Bloc-notes&lt;/strong&gt; (classique mais fonctionne très bien), &lt;strong&gt;Notepad++&lt;/strong&gt; (bien mieux que le bloc note) ...&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;Ça fait beaucoup de logiciels à installer, heureusement, &lt;u&gt;des logiciels regroupent ces trois logiciels&lt;/u&gt; (Apache, PHP, MySQL) et vous permettent de &lt;u&gt;contrôler votre serveur web bien plus facilement&lt;/u&gt;. Notamment &lt;strong&gt;&lt;abbr title="X Apache MySQL Perl PHP"&gt;Xampp&lt;/abbr&gt; &lt;/strong&gt;compatible avec Windows et Linux, &lt;strong&gt;&lt;abbr title="Windows Apache MySQL PHP"&gt;Wamp&lt;/abbr&gt;&lt;/strong&gt; compatible avec Windows ou encore &lt;strong&gt;&lt;abbr title="Linux Apache MySQL PHP"&gt;Lamp&lt;/abbr&gt;&lt;/strong&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;De nombreux guides existent vous permettant d'apprendre à créer un site web de A à Z :&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;a data-ipb="nomediaparse" href="http://fr.openclassrooms.com/informatique/cours/apprenez-a-creer-votre-site-web-avec-html5-et-css3" rel="external nofollow"&gt;&lt;strong&gt;Cours OpenClassroom sur le HTML/CSS &lt;/strong&gt;&lt;/a&gt;: Cours très instructif pour concevoir un site statique et élégant.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;a data-ipb="nomediaparse" href="http://fr.openclassrooms.com/informatique/cours/concevez-votre-site-web-avec-php-et-mysql" rel="external nofollow"&gt;&lt;strong&gt;Cours OpenClassroom sur le PHP/MYSQL&lt;/strong&gt;&lt;/a&gt; : Cours très instructif pour concevoir un site dynamique.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;a data-ipb="nomediaparse" href="http://fr.openclassrooms.com/informatique/cours/programmez-en-oriente-objet-en-php" rel="external nofollow"&gt;&lt;strong&gt;Cours OpenClassroom sur le PHP orienté objet&lt;/strong&gt;&lt;/a&gt; : Cours très instructif pour utiliser les objets en PHP.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size:14px;"&gt;&lt;span style="font-family:'lucida sans unicode', 'lucida grande', sans-serif;"&gt;&lt;a data-ipb="nomediaparse" href="http://www.php.net/manual/fr/" rel="external nofollow"&gt;&lt;strong&gt;Documentation officiel PHP :&lt;/strong&gt;&lt;/a&gt; Très utile quand vous recherchez des fonctions ou pour connaitre l'utilité d'une d'entre elles.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
]]></description><link>https://melinyel.net/topic/113/introduction-aux-sites-web</link><guid isPermaLink="true">https://melinyel.net/topic/113/introduction-aux-sites-web</guid><dc:creator><![CDATA[Soulalex]]></dc:creator><pubDate>Thu, 13 Mar 2014 20:09:47 GMT</pubDate></item></channel></rss>