
TheRec
Hubmaster-
Compteur de contenus
1 777 -
Inscrit(e) le
-
Dernière visite
Tout ce qui a été posté par TheRec
-
Bonsoir, Le cas du forum a déjà fait couler de l'encre... (ou en tous cas fatigué quelques doigts sur des touches) : [* ]http://www.accessifyforum.com/viewtopic.php?p=31351&highlight= [*]http://forum.stylegala.com/about193.html Je vois les choses ainsi, les tableaux doivent être utilisés pour présenter des données cohérentes et doivent respecter les recommandations du WCAG à ce sujet (au mieux). En gros on décrit ce qui se trouve dans le tableau, les en-têtes (lignes ou colonnes et leurs niveaux subséquents)...On n'y présente uniquement des données dont les éléments sont cohérents, pas une hiérarchie ou autre structures... Si un élément du tableau a une forme hiérarchique, on peut tout à fait le refléter en utilisant les structures prévues à cet effet (dl, dt, dd, ol, ul, li). Le cas d'une interview, qui se rapproche d'un forum (questions/réponses), est typiquement un cas ou les données ne sont pas cohérentes réellement...elles ont bien un lien entre-elles (elles concernent généralement le même sujet ou en tout cas impliquent les mêmes personnes) mais ne sont pas directement liées par des dénominateurs communs... Je parle là des détails d'un message (le sujet original et ses réponses, ou les questions et réponses d'une interview ou encore les commentaires d'un billet). Concernant la liste des sujets (messages les plus haut dans la hiérarchie) d'un forum, c'est typiquement le cas dans lequel l'utilisation d'un ou plusieurs tableaux est justifiée, les données sont cohérentes, il y a plusieurs champs qui différencient les messages et cela représente à chaque fois une ligne du tableau au moins... une linéarisation de la page, correctement faite, donnera à chaque élément le titre de la colonne ou de la ligne attenante à celui-ci et l'accessibilité sera conservée. Si le système est plat (liste simplement chronologique de messages), une liste de définition fera l'affaire... le W3C le dit bien : L'inconvénient est que cela empêche un titrage efficace de la page avec les éléments <hn> dont on connaît l'utilité... Dans le cas de systèmes ou la structure est clairement hiérarchique, par exemple un message qui peut avoir ses propre réponses (et non juste une réponse qui suit mais qui peut aussi bien concerner l'article en question que lun des commentaires précédents), il faut représenter sémantiquement ce fait. Avec un liste de définitions (dl,dt,dd) cet aspect hiérarchique nest pas reflété (seulement deux niveau et impossibilité de les imbriquer). Alors que des liste désordonnées (ul,li) imbriquées permettent de refléter ceci et en plus ils permettent de continuer un titrage efficace du document. <li> nempêche pas lutilisation délément de type bloc, contrairement à <dt> qui nautorise que les éléments de type inline. Le problème c'est que les gens s'attendent à une réponse générique qui s'applique à tous les cas... la modélisation des données est un travail à part entière et cela implique un impact sur leur présentation... Une ébauche de règle générique serait : lorsquil y a une logique hiérarchique elle doit être reflétée, lorsquil sagit juste dune liste déléments cohérents un tableau est la solution appropriée... Mais cela nest pas suffisant, certains cas implique lutilisation dun mélange des deux...ou même dautres solutions comme le titrage avec des <hn> qui indiquent une hiérarchie sémantiquement, mais aucunement vis-à-vis de la hiérarchie du document, au niveau DOM...c'est-à-dire que <h2> nest pas forcément contenu dans <h1>, il peut être utilisé sans <h1> ou même avant que <h1> napparaisse sur la page...Il est de la responsabilité du créateur de la page dutiliser ces balises correctement pour refléter une hiérarchie...alors que les listes (ul,ol,dl) reflètent cette hiérarchie dès la syntaxe... Pardon pour ce pâté, javais du temps libre ce soir (sûrement trop)
-
~200 KB en 10 secondes ? Après de multiples calculs savants (non je rigole) ça représente 20KB/s de moyenne... alors effectivement c'est peu si on parle de serveurs dédiés professionnels (avec une ligne décente)...toutefois c'est encore décent comme taux d'upload dans beaucoup de pays pour les connexions de particulier... Mais à mon avis il est hors de question de se fier à ce type de débit pour récupérer des données essentielle à ta page Si c'est une question de l'ouverture du fichier en local (une fois transféré), c'est qu'il y a un problème sur le serveur qui ouvre ce fichier...j'ai eu ouvert de fichiers texte de plusieurs mégas en quelques millisecondes
-
Bonsoir, Tu n'étais pas loin... si tu veux pouvoir accéder à ta page en écrivant le nom de la variable suivi de ".htm" il faut procéder ainsi : ErrorDocument 404 /erreur404.htm RewriteEngine on RewriteRule ^(.+)\.html$ index.php?page=$1 [L] Les points qui ont changé : index-([a-z]+) est devenu (.+) qui signifie au moins un caactère ou plus quel qu'il soit... (tu vera souvent (.*) ..cela permet de définir "n'importe quel caractère ou même aucun"...c'est très utile !) .html est devenu \.html car le "." s'il n'est pas échappé avec un antislash correspond à la classe de caractères "tous les caractères"...en l'occurrence tu veux l'interpréter comme un simple point Si tu le souhaites tu peux conserver ([a-z]+), mais cela limite à uniquement de caractères compris entre a et z ...et surtout en minuscules. Tu peux soit ajouter [a-zA-Z] ou ajouter un flag à la fin de la règle : [L,NC] (ou NC signifie Not Case-sensitive)
-
En fait Anonymus a précisé rapidement dans son message d'origine qu'il veut accéder à des fichiers distants (et non locaux), il utilise donc les URL wrappers de PHP (fopen peut lire des fichiers distant grâce aux URL wrappers)...et par défaut ils ne permettent pas la récupération partielle de données pour les examiner... donc l'entier du fichier est téléchargé.. En utilisant les flux on peut utiliser les Ranges comme Boo2M0rs0 l'a dit...Quant à déterminer les Ranges (partie du fichier qu'on veut récupérer) c'est une autre histoire... Les Chunks sont une autre alternative à mon avis, le fichier sera récupéré en entier en définitive...mais le fichier est morcelé (parts égales et déterminées tant que possible) et ces morceaux sont transférées les un après les autres...
-
Il y a moyen de faire du multi-threading en PHP5 : http://netevil.org/node.php?nid=280 (via http://www.atelierphp5.com/multi-threading-en-php.html) Les fonctions de contrôle de processus servent aussi à cela, entre autres, à en croire le manuel...mais cela pose de problème de portabilité, la gestion de processus ne peut se faire que dans un environement Unix (à fortiori Linux)... Un explication d'un cas se trouve dans les commentaires du manuel
-
Bonsoir, tu n'as pas répondu à une question dans tes messages... d'où viennent les données qui seront affichées... Nous avons compris que tu veux afficher une recette aléatoirement lorsque le visiteur clique sur un lien (ou un bouton) Générer... Avec PHP tu n'auras qu'une page, par exemple randrecette.php, qui lorsqu'elle sera demandée par l'utilisateur, elle affichera une recette aléatoirement... Si tes recettes sont stockées dans une base de données, MySQL dans cet exemple, tu peux utiliser une requête comme la suivante (avec tes noms de tables et de champs bien entendu) : SELECT * FROM recettes ORDER BY RAND() LIMIT 1 Si tu as tes données (recettes) sous forme d'un tableau PHP (ou que tu prends ces données d'un fichier texte et que tu les ordonne dans un tableau), utilise la méthode citée par Anonymus... ou éventuellement la fonction array_rand ... elle a l'avantage de retourner le nom de la clé du tableau en plus du contenu ... Ce représente donc un seul et unique fichier PHP qui affiche une recette, au hasard, à chaque fois qu'elle est chargée...
-
J'adore tes traits d'humour Arlette Sil était interdit de vendre quelque chose qu'on ne possède pas...le secteur tertiaire et quaternaire auraient des problèmes...et le secteur secondaire aurait de la peine à vendre des objets qu'il n'a pas encore fabriqués avec des matières premières qu'ils n'ont pas encore (je schématise.. "un peu") Sans compter que si tu souhaites cacher ta source (le vendeur auquel tu t'adresse) tu devras faire transiter la marchandise par ton entreprise, emballer la marchandise à nouveau et l'envoyer...cela va diminuer tes marges (un peu) et augmenter les délais pour tes clients (beaucoup), si tu compte ne jamais avoir de stock...
-
Bonsoir, et du côté des Stream Functions (Fonctions de Flux) ? Parce qu'après avoir lu quelques lignes de la RFC2616 - HTTP/1.1 et plus précisément la section 3.6, qui parle d'un transfert morcelé (Chunked Transfer). J'ai l'impression (je ne l'ai pas testé) que cela correspond à tes besoins... stream_context_create (ou même fsockopen) devrait te permettre d'utiliser cette méthode... Tout cela a condition que ton serveur Apache (ou autre) te permette de communiquer en HTTP/1.1 ... regarde dans les commentaires de du manuel PHP, il y a des exemples d'utilisation du Chunked Transfer... Bonne chance et je serais ravis de voir ce à quoi tu es arrivé...ou au moins comment
-
Bonjour, lbody, je rejoins Jeanluc sur le fond de ton problème, si tu veux faire du commerce tu n'a pas le temps de t'attarder sur des vengeances de ce type... Si tu est repartis dans le même domaine, la meilleure attitude à avoir est de faire fructifier ton affaire plus qu'eux et avec des procédés moins douteux (ce n'est pas vraiment loyal de s'attaquer aux personnes âgées)...c'est plus dur, je le sais, mais c'est la seule manière constructive d'avancer, en te vengeant tout ce que tu fais c'est te mettre au niveau de tes concurrents... Le fair-play ne coûte au long terme qu'à celui qui ne l'a pas adopté. Après ce message j'ai fait mon compte de morale pour un moment je pense Désolé, bon je retourne à mon recueil de fable de La Fontaine (non, je rigole). Bonne continuation et plein de succès à ton entreprise !
-
Bonsoir, cela te donne le nombre de jour(s) entier(s) entre deux dates (peu importe celle qui est plus élevé que l'autre (utilisation de abs) : <?php function datediff($timestamp1,$timestamp2) { return intval(abs($timestamp1-$timestamp2)/86400); } function date_uk2iso($date) { return join("-",array_reverse(explode("/",$date))); } $date1 = date_uk2iso("15/02/2006"); $date2 = date_uk2iso("15/01/2006"); echo datediff(strtotime($date1),strtotime($date2)); ?> Explications : dans datediff on trouve la différence entre deux timpestamps UNIX, ce qui donne un résultat en secondes, on divise donc par : 60 (secondes) * 60 (minutes) * 24 (heures) = 86400 intval set a ne récupérer que la valeur entière du résultat (les minutes et seconde du dernier jour entamé ou non ne t'intéressent pas, sauf erreur). La fonction date_uk2iso sert à convertir la date dans le format que tu as fourni (Grande-Bretagne)... La date est scindée par les "/", le tableau retourné et renversé et join à nouveau par des "-"...cela correspond à une date ISO 8601 (YYYY-MM-DD) et grâce à cette conversion tu peux utiliser la fonction strtotime qui permet d'obtenir un timestamp depuis une date au format "English" ou ISO...
-
<{POST_SNAPBACK}> Hmm... Cest le pendant du débat pro et anti recommandations du W3C, donc je ne vais pas me lancer dans un argumentaire... <{POST_SNAPBACK}> Une simple page "Politique d'accessibilité" (comme il devrait y en avoir plus souvent) expliquant qu'aucun lien n'est intrusif sur le site et que pour ouvrir un lien dans une nouvelle fenêtre il y a telles et telles solutions (Shift+Clic, Bouton droit de la souris, ...). Mais il est bien clair que si personne ne change cette pratique (lien vers une nouvelle fenêtre) cela ne changera jamais sur le long terme...enfin, c'est comme les recommandations du W3C, si personne ne prend un peu sur lui et s'y met il y a peu de chance que cela marche Si tu travaille avec DOM et que tu utilises les fonctions qui sont supportées par tous les navigateurs modernes, tu ne devrais pas avoir beaucoup de problèmes... Références des objets JS : http://fr.selfhtml.org/javascript/objets/index.htm Des concepts de bases, tables de compatibilités et exemples : http://www.quirksmode.org/js/ Le principe que j'exposais plus tôt est le même que celui d'un menu dont les animations sont basées sur Javascript (mais reste quand même accessible). Ce menu est expliqué dans cet article.
-
Hé bien l'utilisateur moyen à des mauvaises habitudes (s'il s'attend à ce qu'on lui ouvre un lien dans une nouvelle fenêtre), données par des webmasters qui ont choisi d'utiliser des attributs qui nuisent à l'accessibilité... quand à un attribut "onglet" je ne vois pas l'intérêt, ce n'est pas plus accessible et actuellement la majorités des visiteurs n'ont pas de navigateur capable nativement de gérer des onglets... En d'autres termes, l'utilisateur et le seul maître de son navigateur. Pour le système d'information sous forme de popup dont tu parles je préfère utiliser un peu de Javascript qui cache des <div> d'aide lorsque la page est chargée et lorsque l'utilisateur clique sur le bouton d'aide correspondant, le <div> apparaît. Et lorsque le Javascript est désactivé l'aide est affichée tout le temps...elle reste accessible.
-
Bonjour, Oui, et également car ce n'est pas à toi de décider du comportement du navigateur de ton visiteur... La également c'est à toi de t'occuper de ce problème..pas au navigateur de ton visiteur Tu as les données qu'il a envoyé la première fois, donc tu peux les utiliser pour compléter le formulaire lorsque tu veux lui indiquer une erreur...
-
Bonjour, non malheureusement c'est impossible en CSS2 et cela ne semble pas prévu pour CSS3 (malgré quelques requêtes de la part des utilisateurs)... Tu peux toutefois faire ceci en PHP ou autre langage interprété côté serveur (cela ne parait pas viable avec langages côté client, par exemple Javascript)... Au début de ton fichier PHP (par exemple style.php), tu envoies l'entête appropriée pour le faire correspondre à un fichier CSS : <?php header("Content-type: text/css"); ?> Dans ton fichier (x)HTML tu inclus la feuille de style ainsi : <link rel="stylesheet" type="text/css" media="screen" href="style.php"> Ensuite libre à toi de déclarer des variable, des constantes et de les utiliser comme valeurs (ou même comme nom de propriétés, bref tout texte peut être remplacé par une variable). **EDIT**: Bon brûlé..mais pas totalement grillé par Sibelius
-
Bonjour, Pourquoi plutôt PNG... La transparence alpha (transulcidité) Un format libre (CompuServe a un brevet pour GIF) Un format qui fait l'office d'une recommandation du W3C La taille de fichier bien souvent plus petite qu'en GIF 2^48 couleurs (48bits) contre 256 couleurs (8bits) pour GIF Lors qu'on sauve un PNG, qu'on le restaure et qu'on le re-sauve il ne perd pas en qualité L'utilisation de "hack" (PHP et JavaScript en l'occurence) pour amélioré le support de PNG ne rend pas inaccessibles images dans les vieux navigateur lorsque JavaScript est désactivé...(les fonctionalités de base sont conservées) ... Faisons une liste de ce qui favorise l'utilisation de GIF. Il permet de faire de fichiers animés (je ne commentais même pas ceci ) Il est supporté pas de vieux naviateurs qui ne supportent pas PNG Maintenant c'est vrai que l'utilisation de fichier .HTC implique que lrosque Javscript est désactivé, le menu ne fonctionnera plus... Dans le cas de ce menu cela affecte seulement IE à voir le code source du .htc ... Cela rends le menu totalement inaccessible pour ces utilisateurs, je n'avais pas remarqué ceci lorsque j'ai regardé le code pour la première fois, un peu en vitesse je l'admet.
-
Bonsoir, les balises <meta> sont à mettre en <head> et </head> et ceci bien avant la balise <body> bien entendu ... on mettera ça sur le compte de la fatigue pour Jan
-
Bonjour, tu peux utiliser la fonction imagefontheight pour déterminer la hauteur d'un caractère (le plus grand) d'une police... ensuite ajoute l'espace nécessaire en dessous pour définir l'ordonée de la ligne suivante... Si tu utilises une taille de police différent de la taille par défaut, utilise une simple règle de 3 pour calculer la hauteur de la police dans la taille souhaitée... Je n'ai pas testé ceci..c'est une hypothèse
-
Le problème c'est que la multiplicité de ces forum d'entraide, dans le domaine de la programmation et des technologies, font foison ... et les intervenants se concentrent sur les gros forums déjà disponibles : le Hub, Alsacreations, Sitepoint (en), WRI, ... Ce "secteur" est déjà pas mal exploité à mon avis et à moins de proposer des "services" surpassant ceux des autres tu auras de la peine... je n'essaie pas de te décourager car à mon avis tout les initiatives de ce genre méritent qu'on s'y intéresse...j'essaie juste d'être objectif.
-
Ah...c'était donc le but de ton message ?
-
Bonjour, le document que tu présente n'est pas un flux RSS (2.0) ... Si tuveux être confirme aux spécifications RSS 2.0 voici un site pour t'aider : http://www.stervinou.com/projets/rss/ (traducation français de : http://blogs.law.harvard.edu/tech/rss ). Il existe aussi un validateur de flux RSS (<= 2.0) et Atom (<= 1.0 .. 0.3 étant déprécié maintenant). Si tu veux continuer en RDF, tu peux utiliser le validateur de RDF du W3C pour parser ton document. Apparement tu n'a pas de problème de ce côté, à part que du ne fourni pas l'encodage lorsque tu envoies le dicument d'où les points d'intérogation...ce sont des caractères qui n'ont pas pu être affiché...
-
Que penser de ce type de Web agency
TheRec a répondu à broadcastor - Forum : Le salon de Webmaster Hub
Premièrement la "normalisation" n'est jamais la source de la création ou d'innovations, mais un moyen de décrire les tenants et aboutissants d'une technologie (innovatrice ou utilisée largement)...il y a donc forcément un moment ou l'innovation est en phase de "normalisation"... il n'est noté nulle part que l'utilisation de l'objets "non-normalisés" est prohibée sur Internet (c'est sûrement un raison pour laquelle ils éditent des recommandations et non des standards, le processus de normalisation est trop lent par rapport à celui de l'évolution). Le but du W3C est de rassembler les acteurs qui travaillent autour de ces technologies et de leur demander ce qu'ils, en tant que spécialistes (et créateur de ces innovations), préconisent pour une utilisation normalisée de leur création...Ensuite le comité et les membres (au passage les entreprises que vous citez y sont...) définissent : ce dont ils ont besoin, ce qui est applicable ou non dans le cadre dune application globale... Deuxièmement rien ne vous empêche d'utiliser ces objets ne disposant pas encore de recommandations définitives (ou même aucune recommandation), la position du W3C sur ce sujet (au niveau de l'accessibilité) est que de tels objets ne doivent pas empêcher l'accès et l'utilisation d'une page...au développeur de s'assurer de ceci... et je le répète c'est valable pour XMLHttpRequest, pour le plugin Flash, ... -
Rediriger l'accés suivant l'Url
TheRec a répondu à yvan - Forum : Fichier .htaccess et réécriture d'URLs
Non ce nest pas une fonction en soit "fallback"...C'est un concept, si aucun des cas spécifique que tu traites avec des RewriteCond n'a correspondu à la requête de l'utilisateur il faut tout de même le rediriger vers une page (de ton choix) -
Que penser de ce type de Web agency
TheRec a répondu à broadcastor - Forum : Le salon de Webmaster Hub
Intégrée correctement, son utilisation peut être conforme aux recommandations du W3C : tant au niveau de l'accessiblité : solution "fallback" (ah ce bon vieux Web 1.0), modification du document uniquement par DOM, ... Ensuite, si c'est de l'objet XMLHttpRequest qui te pose problème car il n'est pas encore recommandé...hé bien tant que tu proposes une alternative accessible rien ne t'empêche d'évoluer... et lorsque la recommandation en cours d'écriture sera terminée tu pourra même te rassurer en pensant que maintenant tu utilise un objet qui devrait être le même dans tous les navigateurs modernes... Il en va de même pour Flash...un site entièrement en Flash ne me pose pas de problème, tant qu'il existe une alternative accessible. -
Tu ne redéfini pas la date...mais le référentiel pour effectuer le calcul... si tu fais "+1 month" à une date, par exemple le 31 janvier, si tu es dans une année bissextile tu obtiendra le 2 mars...si c'est une année normale tu obtiendra le 3 mars... car il calcul le 31 février, qui n'existe pas et utilise la différence par rapport au dernier jour du mois... d'où la nécessité de fixé le début du mois qui est commun à tous les mois...
-
Rediriger l'accés suivant l'Url
TheRec a répondu à yvan - Forum : Fichier .htaccess et réécriture d'URLs
Bonjour, et surtout ne pas oublier une solution "fallback" qui redirigera les utilisateurs avec un autre référant ou même un champs référant vide pour ceux qui désactivent cette fonctionnalité ou qui tout simplement viennent de "nulle part" (ceux qui aurait par exemple ta page en page d'accueil) Il ne faut pas les oublier à moins que tu le fasses en connaissance de cause.