•   V.Normale 
Board Index » Autres » Projets
Nom d’utilisateur:
Mot de passe:
Register


Aller à la page 1, 2  Suivante

Voila, comme je suis en vacances et que je n'ai pas grand chose à faire, je vais vous raconter comment fonctionne mon avatar, et pour ceux que ça intéresse, je peux même les aider à s'en faire un pareil !

Je trouvais plutôt ennuyeux qu'il ne soit possible de n'avoir qu'un seul avatar, alors que j'avais de nombreuses images de fennec que je voulais toutes utiliser.

J'ai donc été voir les possibilités offertes par le moteur du forum je me suis rendu dans l'interface de configuration et j'ai vu que je pouvais mettre des images en "Lien distant".

Je me suis donc empressé de tester. J'ai essayé avec une image sur elynx (serveur mutualisé, merci Hiro :3 ) première image ça marche, je change l'image sur le serveur, mon avatar change ! trop bien !

On passe à l'étape suivante, il faut que ça change tout seul. Mais comment ? J'ai cherché un peu le protocole HTTP (sur la wikipedia) et j'ai trouvé la réponse 303 qui dit qu'il faut aller voir ailleurs. Je me suis donc fait un petit scripte PHP pour choisir un image aléatoirement.

Code:
<?php

$file = sprintf("http://fenax.elynx.fr/AVs/V2/fennec_%d.png",rand(1,30));

header("HTTP/1.1 303 See Other");
header("Location: ".$file);

?>


Et la ... rien !
Le forum ne veux pas de fichier PHP !
Mais je fais comment moi alors ? c'est simple ... enfin pas tant que ça ...
il y a un fichier appelé .htaccess pour faire toutes ces choses. et c'est plutôt obscure, une sorte de magie noire
et en plus il y a des regexp.

ça donne un machin comme ça :
Code:
RewriteEngine On
RewriteRule ^(avatar.png)(/.*)?$ avatar.php


Et la je met donc http://fenax.elynx.fr/AVs/V2/avatar.png dans mon profil et joie, mon avatar change !

Donc voila, je suis content, si il y as une V2 c'est juste parce-que j'ai mis d'autres images de fennec et que je vouais pas effacer les autres.


Merci du tuyau ! :P


Fennecs ! :love:


J'ai oublié de préciser, si vous comptez le faire, il faut que toutes les images aient la même taille

Après on est pas obligé de faire comme ça non plus l'image de ma signature est construite dynamiquement
et on peut choisir les images suivant des critère arbitraire, comme par exemple le browser ou le système d'exploitation de celui qui regarde. Ou alors selon le sujet regardé... ce qui permetrais d'avoir des avatar +18 dans cette section


Je croyais que tu changeais d'avatar régulièrement ... pas mal l'astuce ! :) Ca redonne envie de bidouiller :D

Celà dit, je n'ai pas compris où et avec quoi on programme ce petit système. Puisses-tu nous en dire d'avantage ? Du moins pour les néophytes gros noobs innocents comme moi ? :cat:


Ahah ! Cela marche ! Me reste plus à me constituer une base d'avatars. :P

*hugs* Fenax :love:


c'est assez simple comme matériel, un serveur apache et du php, c'est faisable avec la plus-part des hébergeurs gratuits à mon avis.

Sinon ça se programme avec du code en php, tout le code est dans mon premier post, le script PHP demande simplement au navigateur d'aller voir ailleurs, choisissant une image de 1 à 30.
Si tu va sur http://fenax.elynx.fr/AVs/V2/ tu peux voire les image numérotées de 1 à 30.

Et le code du .htaccess est utilisé pour exécuter le script php quand on demande le fichier avatar.png (qui lui n'existe pas au passage)


Vector : Et en plus tu à modifié le fichier htaccess !
Vector est une sorcière !

Edit : Vector : je savais pas que tu faisait du PHP

Edit 2 : apparemment il y as pas de referer, donc pas moyen de choisir l'avatar selon ce que l'utilisateur est en train de visiter, ce qui est chiant.

Edit 3 : en fait je suis vraiment une wiche lorraine moi !
Merci Hiro bis ... ne pas se fier aux commentaire de la doc de PHP pour coder, sinon on se demande pourquoi ça marche pas ...
Bons ça marche j'ai un avatar spécial dans la section +18 et un spécial dans mon profil


Ah ok, je crois y voir un brin plus clair :)


Code:
<?php
function StartsWith($Haystack, $Needle){
    // Recommended version, using strpos
    return strpos($Haystack, $Needle) === 0;
}

$ref = $_SERVER["HTTP_REFERER"];
$file = "fail";

if(StartsWith($ref,"http://forum.francefurs.org/memberlist.php?mode=viewprofile&")){
        // Profil
        $file = "http://fenax.elynx.fr/AVs/V2/profil.png";
  }elseif(StartsWith($ref,"http://forum.francefurs.org/viewtopic.php?f=17&")){
        // +18
        $file = "http://fenax.elynx.fr/AVs/V2/.pron.png";
  }else{
        //Autre
        $file = sprintf("http://fenax.elynx.fr/AVs/V2/fennec_%d.png",rand(1,30));
  }

header("HTTP/1.1 303 See Other");
header("Location: ".$file);

?>


Voila quelques modifications, j'ai ajouté grâce au 'referer' (donné permettant de savoir quelle page vous êtes entrain de visiter) la possibilité de changer d'avatar suivant la page visitée, j'en ai fait un pour la section +18 et un pour le profil, tout cela avec le début de l'adresse de la page.

ça ne se limite évidement pas à ça, il est possible d'avoir un avatar différent sur chaque section (intérêts / introduction, projets, english connexion, ... c'est évidement possible pour une image de signature aussi, avoir une image de signature en anglais dans la partie du forum ou il y as des anglophones et en français partout ailleurs.

Je tien aussi a présenter mes excuses pour la police utilisée sur l'avatar de mon profil ...

Edit :
Rimou, si tu veux t'en faire un et que tu galère, je crois qu'il y as un bouton PM ici en dessous, pas loin.
C'est valable pour les autres aussi.
Puis si vous voulez pas me parlez demander à Vector, lui aussi il sais faire.


Et avec un peu plus de PHP on peux meme se faire une petite base de donnée IP -> pseudo de la personne ; après c'est génial car on peut mettre un avatar visible seulement par une personne sur le forum, grossse rigolade.

Je parle en théorie bien sur ; mais enfin bon, sachez que vos IP belong to us.


En théorie c'est possible ... quoique avec le IP dynamiques et tout le bordel c'est pas simple
surtout qu'il faut deviner a qui appartiens une IP particulière, pas simple, pas simple.


Kromeugnon les fennecs !


Ozone, c'est pas la base du furry ça ?
Faire des calins aux animaux qui ont des grandes dents ...

Enfin un fennec c'est pas vraiment un grand prédateur ... grand comme un chat :/


Issarlk a écrit:
Et avec un peu plus de PHP on peux meme se faire une petite base de donnée IP -> pseudo de la personne ; après c'est génial car on peut mettre un avatar visible seulement par une personne sur le forum, grossse rigolade.

Je parle en théorie bien sur ; mais enfin bon, sachez que vos IP belong to us.

Je viens de voir le message « Mon avatar de cul » apparaître en lieu et place d'un avatar normal de fennec !
Tu crois que cette plaisanterie m'était spécialement destinée !? :P


Lord Foxhole a écrit:
Je viens de voir le message « Mon avatar de cul » apparaître en lieu et place d'un avatar normal de fennec !
Tu crois que cette plaisanterie m'était spécialement destinée !? :P

D'ailleurs, je me suis demander pourquoi il avait pas mis un Q.

Aller à la page 1, 2  Suivante

Reply
Copyright 2008 - Powered By phpbb
Broadcasting World Wap