[PHP] Tutoriel: Signature de forum aléatoire

  • Partenaires

Utilisateurs qui regardent le poste (Total: 0, Members: 0, Invité: 0)

Astropilot

Astropilot

The Lord
V.I.P
Level 5
Level 4
Level 3
Level 2
Level 1
6 Janv. 2011
9,283
18
1,254
France
Bonjour a tous je vais vous montrer comment faire une signature pour forum qui va afficher des images que vous aurez choisies au hasard.

Prérequis

Il vous faut bien sur de quoi héberger vos images et une page php.

C'est parti !

Donc d'abord, créez un nouveau dossier dans votre ftp et nommez le comme vous voulez (exemple: sign)
Dans ce dossier créer un fichier php que vous pouvez nommer index.php ou autre ^^ que vous éditerez. (je vous recommande FileZilla pour les manipulations =p )
Dans ce fichier php mettez ce code:

PHP:
<?php
// On définit une liste des extensions qui seront possible d'afficher
$folder = '.';
    $extList = array();
    $extList['gif'] = 'image/gif';
    $extList['jpg'] = 'image/jpeg';
    $extList['jpeg'] = 'image/jpeg';
    $extList['png'] = 'image/png';

$img = null;

if (substr($folder,-1) != '/') {
    $folder = $folder.'/';
}

if (isset($_GET['img'])) {
    $imageInfo = pathinfo($_GET['img']);
    if (
        isset( $extList[ strtolower( $imageInfo['extension'] ) ] ) &&
        file_exists( $folder.$imageInfo['basename'] )
    ) {
        $img = $folder.$imageInfo['basename'];
    }
} else {
    $fileList = array();
    $handle = opendir($folder);
    while ( false !== ( $file = readdir($handle) ) ) {
        $file_info = pathinfo($file);
        if (
            isset( $extList[ strtolower( $file_info['extension'] ) ] )
        ) {
            $fileList[] = $file;
        }
    }
    closedir($handle);
    //ici on va choisir une image selon un nombre au hasard qui va de 1 au nombre d'images présentes
    if (count($fileList) > 0) {
        $imageNumber = rand(1, count($fileList));
        $img = $folder.$fileList[$imageNumber];
    }
}
// si l'image est bien chargé on peux l'afficher
if ($img!=null) {
    $imageInfo = pathinfo($img);
    $contentType = 'Content-type: '.$extList[ $imageInfo['extension'] ];
    header ($contentType);
    readfile($img);
} else {
    // sinon si l'image n'est pas bien chargé, on affiche un message d'erreur
    if ( function_exists('imagecreate') ) {
        header ("Content-type: image/png");
        $im = @imagecreate (100, 100)
            or die ("Impossible d'afficher l'image !");
        $background_color = imagecolorallocate ($im, 255, 255, 255);
        $text_color = imagecolorallocate ($im, 0,0,0);
        imagestring ($im, 2, 5, 5,  "IMAGE ERROR", $text_color);
        imagepng ($im);
        imagedestroy($im);
    }
}

?>

Ensuite enregistrez le fichier et mettez vos images dans le même dossier que le fichier php (donc pour moi dans sign )
Formats supportés dans ce code: png,gif,jpg,jpeg.

Et maintenant sur un forum (Cheat-Gam3 par exemple ^^ )
éditez votre signature et mettez
Code:
[IMG]liendevotresiteouftp.fr/nomdevotredossier/nomduphp.php[/IMG]
en rajoutant http:// que je ne peux mettre :/

Et voila ! Maintenant vous avez une signature aléatoire !

Ce tutoriel n'est pas de moi il vient de e*pvp.
Si j'ai fait une faute dites le moi merci <3
Pour un exemple regardez ma signature, actualisez et regardez a nouveau ^^
 
Dernière édition:
Evaelis

Evaelis

La Voix de la Sagesse
Level 5
Level 4
Level 3
Level 2
Ancien staff
Level 1
28 Avr. 2010
22,929
465
1,699
Valhalla
C'est un tutoriel ou une code ?
Ou tu explique, ou tu rajoute des commentaires pour transformer ça en tutoriel ^_^
 
Astropilot

Astropilot

The Lord
V.I.P
Level 5
Level 4
Level 3
Level 2
Level 1
6 Janv. 2011
9,283
18
1,254
France
Ok je comment le code ^^ pas de problème
 
Evaelis

Evaelis

La Voix de la Sagesse
Level 5
Level 4
Level 3
Level 2
Ancien staff
Level 1
28 Avr. 2010
22,929
465
1,699
Valhalla
Merci, sinon le code est plutôt sympa, pour une page random, le plus adapté serait un affichage mais bon, il suffit de faire un dérivé
 
Sn3per

Sn3per

Membre d'Honneur
Level 5
Level 4
Level 3
Level 2
Level 1
6 Sept. 2013
2,737
0
942
. . .
Merci sa me sera peut être utile.
 
Astropilot

Astropilot

The Lord
V.I.P
Level 5
Level 4
Level 3
Level 2
Level 1
6 Janv. 2011
9,283
18
1,254
France