![]() |
capslockday automatique - Version imprimable +- N-PN White-Hat Project (https://dev.n-pn.fr/forum) +-- Forum : Questions (https://dev.n-pn.fr/forum/forumdisplay.php?fid=11) +--- Forum : Question diverses (https://dev.n-pn.fr/forum/forumdisplay.php?fid=30) +--- Sujet : capslockday automatique (/showthread.php?tid=2926) Pages :
1
2
|
capslockday automatique - InstinctHack - 18-04-2013 le 22 octobre est le jour internationnal du capslock, vous pouvez ecrire en majuscules sans etre engueuler sur internet. (jamais entendu parler...) M'enfin, je me suis dit que cela pourrais etre un petit défi pour que mon site le fasse automatiquement. Et ce problème n'est pas si facile que ça :p L'expérience utilisateur doit être exactement la même (site fonctionnel et avec les memes fonctionnalités), mais le texte afficher doit etre entièrement mis en majuscules. C'est une demande d'aide ou un challenge ? => Un peu des deux ![]() J'ai pas réussi à remplir entièrement les contraintes. (plus de javascript et certains liens externes peuvent etres dead) Si il y a des personnes qui aiment, comme moi, se faire les dents sur un problème.... ![]() edit : langage libre RE: capslockday automatique - Kiwazaru - 19-04-2013 Tu peux pas tout simplement faire une fonction pour que dès qu'un post est crée, alors le texte qui devrais s'afficher passe par une fonction "X" crée à l'occasion qui parserait le code et remplacerais chaque lettre par sa majuscule? RE: capslockday automatique - Machin - 19-04-2013 Accessoirement le caps-lock-day c'est le 22 octobre ET le 28 juin ( http://en.wikipedia.org/wiki/Caps_lock#International_Caps_Lock_Day ) ce qui réduit considérablement ta dead-line, désolé ![]() RE: capslockday automatique - InstinctHack - 19-04-2013 @Reverse, l'idée lui est de mettre tout le site en majuscules et pas seulement les posts, d'ailleurs même un "simple" post c'est compliqué, vu qu'il ne faut pas casser les liens, etc... @Machin, ouais je sais, mais WTF, pourquoi deux journées ? :') RE: capslockday automatique - Machin - 19-04-2013 Parce que 2 c'est mieux qu'une seul ? ça permet de faire ch*** tes contacts deux fois plus souvent dans l'année ? RE: capslockday automatique - Sh4dows - 19-04-2013 Avec un fonction du style string_between ! Tu récupères les chaines entre ">" et "</". Si sur cette chaine tu peux le refaire, tu le refais sinon tu vérifies qu'il y ait bien une chaine et tu la met en majuscule.. Il doit juste y avoir une ou deux exceptions ![]() RE: capslockday automatique - Polo - 19-04-2013 C'est quoi que tu cherches exactement ? En PHP, en JS ? (ou j'y suis pas du tout ? ^^ ) Quelque-chose qui s'annule après que ces deux dates soient passées (le 22 un com' est posté mais le 23 il sera de nouveau en minuscules ) ? Quelque-chose valable uniquement le jour J mais qui reste actif après (ex un comment taire est posé le 22, le 23 il sera toujours visible en maj) ? .. Ou même es deux ? ou encore quelque-chose qui convertit les caractères lors de la saisie dans le formulaire ? Précise ! ![]() RE: capslockday automatique - Kiwazaru - 19-04-2013 Boarf, tout simplement une fonction capable de modifier tout un site en majuscule sans casser les liens etc , après il peut la virer manuellement c'est pas un problème :p RE: capslockday automatique - InstinctHack - 19-04-2013 Je voudrais un autre en PHP si possible. Mais vu que c'est un challenge que je lance aux gens, langage libre ![]() En fait, c'est plus simple que ça, on utilise la bufferisation de sortie, et on applique une fonction au buffer pour mettre en majuscules tout le texte qui seras afficher à l'écran. Après moi je fais un test sur la date et j'applique la fonction si c'est le bon jour ![]() C'est plus clair ? RE: capslockday automatique - Polo - 19-04-2013 (19-04-2013, 23h01)InstinctHack a écrit : Je voudrais un autre en PHP si possible. Mais vu que c'est un challenge que je lance aux gens, langage libre A mais tu savais comment faire ? Je croyais que c'était une question .. -_- Ça m'étonnait bien aussi ... ^^ 'Fin bref y'a des fonctions PHP qui font ça (strtoupper), pas besoin de se casser le c** pour rien ![]() Pis effectivement, après un petit test de la date et c'est ok. RE: capslockday automatique - InstinctHack - 19-04-2013 Oui, je n'ai pas réussi (en partie juste) Si le problème était si simple, je l'aurais pas posté. Oui, la fonction strtoupper met en majuscules, mais elle met en majuscules TOUT la chaine. Pour le buffer en fait, ça veut dire qu'on récupère le contenu de la page qu'on vas envoyer dans une variable afin de lui faire subir des modifications de dernière minutes. Et si j'applique cette fonction, <a href="http://google.com/page.php">google</a> devient <A HREF=HTTP://GOOGLE.COM/PAGE.PHP">GOOGLE</A> et là le lien est mort ![]() pareil pour le javascript ![]() RE: capslockday automatique - Kiwazaru - 19-04-2013 Polo: En fait il veut que tout le code ENTIER soit en Maj, ce qui influe donc directement sur l'ouverture des pages et les liaisons entre elles... Exemple: <a href="page.html"> to <A HREF="PAGE.HTML">, ce n'est plus pareil :p Mais par contre je n'ai aucune idée en PHP comment on peu faire ça... En JS encore vu que c'est de la gestion dynamique de la page.. Mais en PHP ... :o RE: capslockday automatique - Polo - 19-04-2013 (19-04-2013, 23h14)InstinctHack a écrit : Oui, je n'ai pas réussi (en partie juste)S'cuze moi je suis un peu mal-comprenant sur les bords donc je comprends vite mais faut m'expliquer longtemps, s'pour ça ... ![]() Bhen sinon tu fais des jolies petites regex pour n'appliquer la fonction que sur ce qui n'est pas une balise de lien (ou d'autres trucs qui portent des problèmes) avec preg_replace_callback qui peut être pratique dans ce genre de cas. PS : Normal que le lien est mort, il manque une double quote ![]() RE: capslockday automatique - InstinctHack - 19-04-2013 et c'est quoi cette regex ? ![]() RE: capslockday automatique - Polo - 19-04-2013 D'après ce que j'ai compris c'est que tu veux mettre les pages de ton site en majuscules les jours de la capslockday... Donc en gros moi je ferai comme ça ( je te dis ça à chaud, mais pas sûr que ça fonctionne :B ) : - en haut de la page tu mets une condition qui vérifie la date du jour, puis si la date correspond, alors : - si la date est correcte tu récupères la page en cours avec PHP puis tu fais un strtoupper sur tout le contenu de la page - ensuite, tu fais un strtolower sur les liens avec ça (oui j'ai trouvé plus facile de faire dans ce sens plutot qu n'appliquer que sur ce quin 'est oas un lien :-° ) : Code : <?php PS : y'a peut-etre quelques fautes dans la REGEX (je ne suis pas un spécialiste ^^ ) mais elles devrait être compréhensible et facilement corrigeable ![]() |