17 Utilisateur(s) en ligne

Oltana.net 21 Octobre 2021 à 00:47:51 *
Bienvenue, Invité. Veuillez vous connecter ou vous inscrire.


Connexion avec identifiant et mot de passe
Nouvelles:
Bascule sur SMF faite!
 
 
Accueil Aide Rechercher
Pages: [1]   Bas de page
Imprimer
Auteur Fil de discussion: Script  (Lu 19788 fois)
0 Membres et 1 Invité sur ce fil de discussion.
Crazy_girl
Animateurs
****
Hors ligne Hors ligne

Messages: 382



Voir le profil
« le: 15 Août 2005 à 01:19:08 »

Salut à tous ;

dans ce post-it, vous trouverez une série de scripts pour rendre votre site web ou votre forum plus interactif, plus varié, .... nous estimons que vous avez un minimum de connaissances en CSS et HTML, de quoi avoir crée site à la main par exemple. Sinon rendez-vous sur le site du zero pour des cours de HTML / CSS / PHP.
Surtout si vous débutez en programmation de sites web, ne vous attendez pas à ce que tout marche tout de suite et tout seul. Si vous rencontrez des problèmes ne vous découragez pas, venez faire un tour sur le forum et nous vous aideront volontiers. :wink:


Pour "installer" les scripts :

1ere methode (pour les scripts php) :

- copiez le code fourni dans un éditeur de textes (bloc-note, notepad ++, ..) et enregistrez sous "votretitre.php" (un titre approprié au script de préférence).
- Placez le fichier sur votre ftp
- Dans la/les page(s) où doit s'afficher le script inserez :
<? include("adresseduscript/votretitre.php"); ?>

2eme methode (conseillée) :

-copiez directement le code dans votre page html; à l'endroit où vous souhaitez le voir apparaitre.


Pour creer une nouvelle table dans la base de donnée (requis pour certains scripts) : voir ce tuto.


Sommaire

- Nombre de visiteurs en ligne.
- Une phrase par jour.
- Afficher l'adresse IP des visiteurs.
- Changer la feuille de style CSS selon la résolution d'écran (javascript).
- News sur trois pages (une pour creer / modifier / afficher).
- Creer une signature aléatoire.
- Permettre l'upload d'images.
- Se logger sur le site avec un user phpbb.
- Compteur de visites.
- Générateur de mot de passe
- Userbars aléatoires
Journalisée


Crazy_girl
Animateurs
****
Hors ligne Hors ligne

Messages: 382



Voir le profil
« Répondre #1 le: 15 Août 2005 à 01:19:35 »

Combien de visiteurs en ligne (PHP).


Code:

<? /*sert à creer une nouvelle table, vous pouvez aussi suivre le tuto indiqué en haut du post-it, ici la table a pour nom "visiteur" et il faut creer un champ texte "IP" et un entier "timestamp" */

   mysql_connect('localhost','login','motdepass');// à remplir vous même
   mysql_select_db('BDD');
   mysql_query("CREATE TABLE `visiteur` (
`IP` TEXT NOT NULL  ,
`timestamp` INT NOT NULL

)");
mysql_close();
?>

<?php    // script pour indique le nombre de visiteurs en ligne
mysql_connect&#40;'localhost','login','motdepass'&#41;;//connection à la base de données
mysql_select_db&#40;'BDD'&#41;;
$all mysql_query&#40;"SELECT * FROM visiteur"&#41;;

$alpha $_SERVER['REMOTE_ADDR'&#93; ; //ton adresse IP est stockée dans $alpha
$rll mysql_query&#40;"SELECT COUNT&#40;*&#41; AS timestamp FROM visiteur WHERE IP = '$alpha'"&#41;; //regarde si vous êtes deja connecté
$ill mysql_fetch_array&#40;$rll&#41;;
$ell $ill['timestamp'&#93;;
if &#40;$ell == 0&#41; // si NON on vous rajoute au nombre de personnes connectées
&#123;

$timestamp time&#40;&#41;;
$alpha $_SERVER['REMOTE_ADDR'&#93; ;
mysql_query&#40;"INSERT INTO visiteur VALUES&#40;'$alpha','$timestamp'&#41;"&#41;;

&#125;
else //si OUI on remet votre temps depuis la dernière connexion à zéro
&#123;


$timestamp time&#40;&#41;;
mysql_query&#40;"UPDATE visiteur SET timestamp = '$timestamp' WHERE IP = '$alpha'"&#41;;

&#125;




$suppr $timestamp-&#40;60*5&#41;; 
mysql_query&#40;"DELETE FROM visiteur WHERE  timestamp < $suppr"&#41;;
$oll mysql_query&#40;"SELECT COUNT&#40;*&#41; AS IP FROM visiteur"&#41;;
$prime mysql_fetch_array&#40;$oll&#41;;
if&#40;$prime['IP'&#93;<= 1&#41;
&#123;

echo 'Il y a '&#46;$prime['IP'&#93;&#46;' visiteur actuellement';
&#125;
else
&
#123;
echo 'Il y a '&#46;$prime['IP'&#93;&#46;' visiteurs actuellement';
&#125;
mysql_close&#40;&#41;;
?>





Modifications à apporter au script :

Remplacer : login par le login de votre base de données et motdepass par son mot de passe.
Remplacer : BDD par le nom de votre Base De Données.
Ici, il y a deux endroit ou il faut le faire. :wink:


Auteur : Fragman.
Journalisée


Crazy_girl
Animateurs
****
Hors ligne Hors ligne

Messages: 382



Voir le profil
« Répondre #2 le: 15 Août 2005 à 01:20:00 »

Une phrase par jour (PHP).

Code:
<?php
$time 
time&#40;&#41;;
$jour date&#40;'d', $time&#41;;
$mois date&#40;'m', $time&#41;;
for&#40;$j = 1; $j <13 ; $j++&#41;
&#123;
if &#40;$mois==$j&#41;
&#123;
for&#40;$i = 1; $i <32 ; $i++&#41;
&#123;

if &#40;$jour==$i&#41;
&#123;
mysql_connect&#40;"localhost","login","motdepass"&#41;; // ça je les connai pas pour toi
mysql_select_db&#40;"taBDD"&#41;; //idem
$alpha mysql_query&#40;"SELECT * FROM citation WHERE jour='$i' AND mois='$j'"&#41;;

while &#40;$citation = mysql_fetch_array&#40;$alpha&#41;&#41;
&#123;
echo $citation['citation'&#93;;
&#125;
&#125;
&#125;
&#125;
&#125;
mysql_close;

?>

Modification a apporter au script et à la base de donnés :

Dans le script :

Remplacer : login par le login de votre base de données et motdepass par son mot de passe
Remplacer : BDD par le nom de votre Base De Données

Pour la base de données (avec phpmyadmin, voir tuto) :
Creer une nouvelle table "citation"
comme ceci :


Ou : ajoutez ce code avant celui fourni plus haut, en remplaçant login, motdepass et BDD.

Code:
<?

   mysql_connect('localhost','login','motdepass');// à remplir vous même
   mysql_select_db('BDD');
   mysql_query("CREATE TABLE `citation` (
`mois` SMALLINT NOT NULL ,
`jour` SMALLINT NOT NULL ,
`citation` TEXT NOT NULL,
)");
mysql_close();
?>


Ensuite, dans tous les cas, vous devez entrer les citations pour chaque jour (ici, pour un an). Cf ce topic pour le script pour un mois.

Auteur : Fragman.
Journalisée


Crazy_girl
Animateurs
****
Hors ligne Hors ligne

Messages: 382



Voir le profil
« Répondre #3 le: 15 Août 2005 à 01:24:04 »

Afficher l'adresse IP des visiteurs (PHP).


Code:
<?
echo 'Votre adresse IP est : '.$_SERVER['REMOTE_ADDR'];
?>

Journalisée


Crazy_girl
Animateurs
****
Hors ligne Hors ligne

Messages: 382



Voir le profil
« Répondre #4 le: 15 Août 2005 à 01:24:29 »

Changer de feuille de style (CSS) en fonction de la resolution d'ecran (Javascript, et la page doit être enregistrée en .php).


Copiez collez ce script dans la balise <head> de votre page à la place de la ligne qui insere le css.


Code:

<?
if (!isset($_GET['refresh']))
{
echo "<script language=\"JavaScript\">
<!--
document.location=\"$PHP_SELF?refresh=1&L=\"+screen.width+\"&H=\"+screen.height;
//-->
</script>";
}
else
{
if(isset($_GET['L']) && isset($_GET['H']))
{
$largeur = $_GET['L'];
$hauteur = $_GET['H'];
if($largeur == '800' && $hauteur == '600')
{
echo "<link rel='stylesheet' media='screen' type='text/css' title='sketuve' href='css800par600.css ' />";
}

 if($largeur == '1024' && $hauteur == '768')
{
echo "<link rel='stylesheet' media='screen' type='text/css' title='sketuve' href='css1024par768.css' />";
}


         //etc.....repetez autant de fois que souhaité la partie :
//if($largeur == '1024' && $hauteur == '768')
//{
//echo "<link rel='stylesheet' media='screen' type='text/css' //title='sketuve' href='css1024par768.css' />";
// }

//en changeant 1024, 768 et css1024par768.css : adapter a ses besoins.

          }
else
{
echo "<link rel='stylesheet' media='screen' type='text/css' title='sketuve' href='default.css' />";
}
}
?>


Modifications à faire :
changer les titres css800par600.css ; css1024par768.css ; default.css par ceux de vos pages CSS, en fonction de la résolution pour laquelle elles sont prévues.


Auteur : Fragman.
Journalisée


Crazy_girl
Animateurs
****
Hors ligne Hors ligne

Messages: 382



Voir le profil
« Répondre #5 le: 15 Août 2005 à 01:25:26 »

Génerer une signature aléatoire, piochant entre plusieurs smileys et citations (PHP).

Pour ce script, la librairie GD doit être activée, vérifiez-le auprès de votre hebergeur.

Code:
<?php
/***************************************************************************
 *  Génère une image de signature, avec un texte tiré aléatoirement         *
 *   et 2 smileys                                                           *
 ***************************************************************************/
 
//Variables de personnalisation
$taille_texte 3; #taille du texte
/* smileys aléatoires */
$aleasmileys = array&#40; #smileys PNG de 32*32 px
"smile1&#46;png",
"smile2&#46;png",
"smile3&#46;png",
"smile4&#46;png",
"smile5&#46;png",
"smile6&#46;png",
&#41;; 
$color_txt1 = array&#40;"150", "0", "255"&#41;; # couleur texte 1
$color_txt2 = array&#40;"255", "0", "0"&#41;; # couleur texte 2
$color_border = array&#40;"255", "0", "0"&#41;; # couleur de bordure
$color_backgrnd =  array&#40;"10", "10", "10"&#41;; # couleur de fond

/* textes aléatoires */
$aleatextes = array&#40;
"citation1",
"citation2",
"citation3",
"citation4",
"citation5",
"citation6",
"citation7",
&#41;;
/* Pseudo affiché en bas à droite */
$pseudo "pseudo";
//Fin des variables

// Initialisation du générateur aléatoire
function make_seed&#40;&#41; &#123;
// initialise avec les microsecondes
list&#40;$usec, $sec&#41; = explode&#40;' ', microtime&#40;&#41;&#41;;
return &#40;float&#41; $sec + &#40;&#40;float&#41; $usec * 100000&#41;;
&#125;
srand&#40;make_seed&#40;&#41;&#41;;  // Inutile depuis PHP 4&#46;2&#46;0, mais on sait jamais &#46;&#46;&#46; les hébergeurs ont-ils tous PHP >= 4&#46;2&#46;0 ?

// Sélection aléatoire du texte
$num rand&#40;0, &#40;count&#40;$aleatextes&#41;-1&#41;&#41;;
$texte $aleatextes[$num&#93;;

// Sélection aléatoire des 2 smileys
$num1 rand&#40;0, &#40;count&#40;$aleasmileys&#41;-1&#41;&#41;;
$smiley $aleasmileys[$num1&#93;;
$num2 rand&#40;0, &#40;count&#40;$aleasmileys&#41;-1&#41;&#41;;
// Ne pas avoir les deux mêmes smileys &#46;&#46;&#46;
while&#40;$num2 == $num1&#41;
&#123;
$num2 rand&#40;0, &#40;count&#40;$aleasmileys&#41;-1&#41;&#41;;
&#125;
$smiley2 $aleasmileys[$num2&#93;;

// Construction de l'image

// Type MIME
header &#40;"Content-type&#58; image/png"&#41;;
// Pas de cache
header&#40;"Expires&#58; Mon, 26 Jul 1997 05&#58;00&#58;00 GMT"&#41;;              // Date du passé
  
header&#40;"Last-Modified&#58; " &#46; gmdate&#40;"D, d M Y H&#58;i&#58;s"&#41; &#46; " GMT"&#41;;  // toujours modifié
  
header&#40;"Cache-Control&#58; no-cache, must-revalidate"&#41;;            // HTTP/1&#46;1
  
header&#40;"Pragma&#58; no-cache"&#41;;

// Dimensions de l'image &#58;
$img_width 600;
$img_height 60;

//Créer l'image
$im = @imagecreate&#40;$img_width, $img_height&#41; or die &#40;"Impossible d'initialiser la librairie GD"&#41;;

// Fond et couleur de texte
imagecolorallocate&#40;$im, $color_backgrnd[0&#93;, $color_backgrnd[1&#93;, $color_backgrnd[2&#93;&#41;;   //     background  
$color_border imagecolorallocate&#40;$im, $color_border[0&#93;, $color_border[1&#93;, $color_border[2&#93;&#41;;  
imageline&#40;$im, 0, 0, $img_width, 0, $color_border&#41;;     //     Bordure horizontale supérieure
imageline&#40;$im, 0, 0, 0, $img_height, $color_border&#41;;     //     Bordure verticale de gauche
imageline&#40;$im, 0, $img_height-1, $img_width-1, $img_height-1, $color_border&#41;;  //     Bordure horizontale inférieure 
imageline&#40;$im, $img_width-1, 0, $img_width-1, $img_height-1, $color_border&#41;;  //     Bordure verticale de droite

imagecopy&#40;$im, imagecreatefrompng&#40;$smiley&#41;, 9, 9, 0, 0, 32, 32&#41;;  // Premier smiley
imagecopy&#40;$im, imagecreatefrompng&#40;$smiley2&#41;, $img_width-&#40;32+9&#41;, 9, 0, 0, 32, 32&#41;;  // Deuxième smiley

// Texte
imagestring &#40;$im, $taille_texte, 60, 15,  $texte, imagecolorallocate&#40;$im, $color_txt1[0&#93;, $color_txt1[1&#93;, $color_txt1[2&#93;&#41;&#41;;
imagestring &#40;$im, $taille_texte, $img_width - 110, $img_height - 25, $pseudo, imagecolorallocate&#40;$im, $color_txt2[0&#93;, $color_txt2[1&#93;, $color_txt2[2&#93;&#41;&#41;;

// Création du PNG
imagepng &#40;$im&#41;;
?>




Fichiers à ajouter :
- 6 smileys / images de 32*32pixels, sous le nom "smile1.png", .... , "smile6.png" (cf commentaires du code).

Modifications à faire :
-entrer les citations ou textes, entrer un pseudo.
Vous pouvez personnaliser les couleurs, les tailles.

Pour utiliser la signature : placez ce script sur une nouvelle page, puis mettez le lien de l'image entre balises sur un forum.


Auteur : c@c.
Journalisée


Crazy_girl
Animateurs
****
Hors ligne Hors ligne

Messages: 382



Voir le profil
« Répondre #6 le: 15 Août 2005 à 01:25:54 »

Permettre aux visiteurs d'uploader des images (PHP).

Pour la page .php :

Code:
<?php
$taille_octets_max 1048576// Taille maxi du fichier, en octets&#46;

if &#40;$file_name == "none" || !$file_name&#41;
&#123;
$error="Sp&eacute;cifiez un fichier à envoyer&#46;";
&#125;
elseif&#40;$_FILES['file_name'&#93;['type'&#93; != "image/png" && $_FILES['file_name'&#93;['type'&#93; != "image/jpeg"
&& $_FILES['file_name'&#93;['type'&#93; != "image/pjpeg" && $_FILES['file_name'&#93;['type'&#93; != "image/x-png"
&& $_FILES['file_name'&#93;['type'&#93; != "image/gif"&#41;
&#123;
$error="Le fichier doit être un JPEG, un GIF ou un PNG&#46;";
&#125;
elseif&#40;$_FILES['file_name'&#93;['size'&#93; > $taille_octets_max&#41;
&#123;
$error="Le fichier doit peser moins de "&#46;&#40;$taille_octets_max/1024&#41;&#46;" Ko&#46;";
&#125;
if&#40;!isset&#40;$error&#41;&#41;
&#123;
$size_img getimagesize&#40;$_FILES['file_name'&#93;['tmp_name'&#93;&#41;;
if&#40;$size_img[0&#93; > 800 || $size_img[1&#93; > 600&#41;
&#123;
$error="Dimensions max &#58; 800x600";
&#125;
&#125;

if &#40;$error&#41;
&#123;
?>

<div class="bloc" id="formulaire">
<?="<p><u>".$error."</u></p>"?>
<form method="post" ENCTYPE="multipart/form-data">
<p><input type="file" name="file_name" enctype="multipart/form-data"></p>
<input type="hidden" name="MAX_FILE_SIZE" value="<?=$taille_octets_max?>">
<p><input type="submit" value="Envoyer"></p>
</form>
</div>

<?php
&#125;
else
&#123;
$dest_rep="avatars/";
$nom_img="avatar_"&#46;$_FILES['file_name'&#93;['name'&#93;;
if&#40;file_exists&#40;$dest_rep&#46;$nom_img&#41;&#41;
&#123;
$nom_img preg_replace&#40;"/\&#46;&#40;[a-zA-Z&#93;&#123;3,4&#125;&#41;$/i", "_"&#46;time&#40;&#41;&#46;"&#46;\\1", $nom_img&#41;;
&#125;
if &#40;move_uploaded_file&#40;$_FILES['file_name'&#93;['tmp_name'&#93;, $dest_rep&#46;$nom_img&#41;&#41;
&#123;
$url "http&#58;//"&#46;$_SERVER['HTTP_HOST'&#93;&#46;dirname&#40;$_SERVER['PHP_SELF'&#93;&#41;&#46;"/$dest_rep"&#46;$nom_img;
?>

<div class="bloc2" id="rapport">
<br/>
&nbsp;Le fichier est valide, et a &eacute;t&eacute; t&eacute;l&eacute;charg&eacute; avec succ&eacute;s.<br />
&nbsp;<u>Nom du fichier copi&eacute; :</u> <?=$nom_img?><br />
&nbsp;<u>URL sur le serveur :</u> <a href="<?=$url?>"><?=$url?></a><br />
&nbsp;<u>Taille :</u> <?=$_FILES['file_name']['size']/1024?> Ko<br />
</div>
<?php
&#125;
else
&#123;
print&#40;"Copie &eacute;chou&eacute;e &#58; "&#46;$_FILES['file_name'&#93;['error'&#93;&#46;"<br />"&#41;;
unlink&#40;$_FILES['file_name'&#93;['tmp_name'&#93;&#41;;
&#125;
&#125;
?>


<br/>
<br/>
<p align="justify">
<span class="disclaimer">
<u>Limite de l'image :</u> 10 Ko <i>(soit 10 x 2^10 octets, soit 10240 octets)</i>
</span>
</p>

A modifier : la taille max des images, si besoin est (en haut) et le disclaimer (en bas).


Pour la page CSS (à personnaliser) :

Code:
.bloc {
width: 350px;
height: 150px;
background-color: #DDDDDD;
border-top:1px solid;
border-left:1px solid;
border-right:1px solid;
border-bottom:1px solid;
border-color: black;
margin-left: 150px;
margin-top: 150px;
text-align: center;
}
.bloc2 {
width: 400px;
height: 150px;
background-color: #DDDDDD;
font-size:small;
border-top:1px solid;
border-left:1px solid;
border-right:1px solid;
border-bottom:1px solid;
border-color: black;
margin-left: 150px;
margin-top: 150px;
vertical-align:center;
}
.disclaimer {
background-color: #DDDDDD;
border-top:1px dotted;
border-left:1px dotted;
border-right:1px dotted;
border-bottom:1px dotted;
border-color: black;
margin-left: 25px;
font-size:x-small;
text-align: justify;
}


Vous devez créer un nouveau repertoire "avatars" dans le dossier contenant la page .php avec le code.

Auteur : c@c.
Journalisée


Crazy_girl
Animateurs
****
Hors ligne Hors ligne

Messages: 382



Voir le profil
« Répondre #7 le: 15 Août 2005 à 01:27:21 »

Se logger avec un user phpbb : récuperer les membres de son forum sur son site (PHP).

Si vous avez un forum et un site web sur le même serveur, ce script permet aux membres de votre forum de se logger aussi sur le site (pour poster des news par exemple, ..).

Code:
<?php
//
//Une fois le formulaire remplit
//
if&#40;$_GET['profil'&#93; == "connexion"&#41; &#123;

//Connexion à la base de données
mysql_connect &#40;"localhost", "login", "motdepasse"&#41;; //Connexion au serveur MySQL
mysql_select_db&#40;"<votreBDD>"&#41;; // Selection de la base 

//Déclaration des variables
$utilisateur $_POST['utilisateur'&#93;;
$reponse mysql_query&#40;"SELECT * FROM phpbb_users WHERE username=\"" &#46; $utilisateur &#46; "\""&#41;or die&#40;"Nous sommes désolé, mais une erreur de connexion à la base de données s'est produite&#46;"&#41;;
$donnees mysql_fetch_array&#40;$reponse&#41;;

$mot_de_passe md5&#40;$_POST['mot_de_passe'&#93;&#41;; //Le md5 signifie que l'on crypte le mot de passe en md5
//
//Switch&#58; Si le mot de passe est juste ou faux
//

switch &#40;$donnees['user_password'&#93;&#41; &#123;
        
case $mot_de_passe&#58;
    
echo "Login réussi !";
        break;
       
        default&
#58;
echo "Mauvais login";
       
&
#125;
//
//---------- Fin de switch
//

// Fermeture de la connexion MySQL
mysql_close&#40;&#41;;

&#125;
//
//--------- Fin de la partie "formulaire replit"
//

//
//Sinon &#58; accès au formulaire
//
else &#123;
?>

<form action="login.php?profil=connexion" method="post">Nom d'utilisateur: <input type="text" name="utilisateur" /><br/>Mot de Passe: <input type="password" name="mot_de_passe"/><br/><input type="submit" value="Login" /></form>
<?php
&#125;
//
//---------- FIN du script de login phpBB
//
?>



Modifications : remplacer le login et mot de passe par ceux de votre BDD.


Auteur : CramiX.
Journalisée


Crazy_girl
Animateurs
****
Hors ligne Hors ligne

Messages: 382



Voir le profil
« Répondre #8 le: 15 Août 2005 à 01:28:51 »

Compteur de visites (PHP).


Mettez ce script seul sur une page puis appelez le la page où vous souhaitez le voir apparaitre avec un include.

Code:
<?php
 
/***************************************************************************
 *  Il ne s'agit pas d'un compteur "exact" &#58; c'est plutôt basé sur une      *
 *  approximation &#46;&#46;&#46;                                       *
 *  Ainsi, si une seule personne viste le site 25 fois dans la journée,     *
 *  elle ne comptera qu'une fois; en revanche, si elle visite le site, puis * 
 *  qu'environ 30 visiteurs différents le font aussi, et qu'elle revient    *
 *  après, elle sera comptabilisée une seconde fois &#46;&#46;&#46; tout comme elle     *
 *  l'aurait été dans n'importe quel compteur si elle avait quitté le site, *
 *  fermé son navigateur, puis était revenue ;-&#41;                            *
 ***************************************************************************/
 
//Variables de personnalisation
$taille_texte 3; #taille du texte
$smiley "smile_counter&#46;png"; #smiley PNG de 32*32 px
$smiley2 "smile_counter2&#46;png"; #smiley PNG de 32*32 px
$color_txt1 = array&#40;"255", "165", "0"&#41;; # couleur texte 1
$color_txt2 = array&#40;"255", "165", "0"&#41;; # couleur texte 2
$color_border = array&#40;"255", "192", "0"&#41;; # couleur de bordure
$color_backgrnd =  array&#40;"11", "11", "11"&#41;; # couleur de fond
$texte_1 "gens" ; # Texte 1 &#58; "xxxx `texte`"
$texte_2 "ont visité ce site"; # Texte 2 &#58; "ont visité <site>"
//Fin des variables


$fichier="count_visit&#46;txt";
$ip_file "ip_visits&#46;txt";
$ip_long ip2long&#40;$_SERVER['REMOTE_ADDR'&#93;&#41;;

// Lecture du nombre de visites
$file_handle = @fopen&#40;$fichier,"r"&#41;;
   
$count = @fread&#40;$file_handle, 16&#41; or die&#40;"impossible de consulter le compteur"&#41;;
$count = &#40;int&#41; $count;
fclose&#40;$file_handle&#41;;

//Gestion de l'ip
if&#40;filesize&#40;$ip_file&#41; >= 340&#41; // environ 30 IP différentes &#58; après, on remet à 0&#46;
&#123;
$file_handle = @fopen&#40;$ip_file,"w"&#41;;
fclose&#40;$file_handle&#41;;
&#125;
$file_handle = @fopen&#40;$ip_file,"r"&#41;;
$list_ip fread&#40;$file_handle, 500&#41;;
fclose&#40;$file_handle&#41;;

// si c'est le premier hit de la session
if&#40;!eregi&#40;"$ip_long;", $list_ip&#41;&#41;
&#123;
   // Incrémente le compteur
   
$count++;
   
$file_handle = @fopen&#40;$fichier,"w"&#41;;
   
@fwrite&#40;$file_handle, $count&#41; or die&#40;"impossible d'incrémenter le compteur"&#41;;
   
fclose&#40;$file_handle&#41;;
   
   //On enregistre l'ip pour ne plus la compter
$file_handle = @fopen&#40;$ip_file,"a"&#41;;
@fwrite&#40;$file_handle, "$ip_long;"&#41; or die&#40;"impossible d'enregistrer l'ip"&#41;;
fclose&#40;$file_handle&#41;;
&#125;

/* Affichage du compteur */
$texte_1 "$count $texte_1";
// convertir en chaîne
$count=strval&#40;$count&#41;;
// mettre au moins 5 chiffres
if&#40;strlen&#40;$count&#41; < 5&#41;
$count=substr&#40;"0000"&#46;$count,-5&#41;;

// Construction du compteur graphique

// Type MIME
header &#40;"Content-type&#58; image/png"&#41;;
// Pas de cache
header&#40;"Pragma&#58; no-cache"&#41;;

// Dimensions de l'image &#58;
$img_width 235;
$img_height 50;

//Créer l'image
$im = @imagecreate&#40;$img_width, $img_height&#41; or die &#40;"Impossible d'initialiser la librairie GD"&#41;;

// Fond et couleur de texte
imagecolorallocate&#40;$im, $color_backgrnd[0&#93;, $color_backgrnd[1&#93;, $color_backgrnd[2&#93;&#41;;  //     background  
$color_border imagecolorallocate&#40;$im, $color_border[0&#93;, $color_border[1&#93;, $color_border[2&#93;&#41;;  
imageline&#40;$im, 0, 0, $img_width, 0, $color_border&#41;;     //     Bordure horizontale supérieure

imageline&#40;$im, 0, 0, 0, $img_height, $color_border&#41;;     //     Bordure verticale de gauche
imageline&#40;$im, 0, $img_height-1, $img_width-1, $img_height-1, $color_border&#41;;  //     Bordure horizontale inférieure 
imageline&#40;$im, $img_width-1, 0, $img_width-1, $img_height-1, $color_border&#41;;  //     Bordure verticale de droite

imagecopy&#40;$im, imagecreatefrompng&#40;$smiley&#41;, 9, 9, 0, 0, 32, 32&#41;;  // Premier smiley
imagecopy&#40;$im, imagecreatefrompng&#40;$smiley2&#41;, $img_width-&#40;32+9&#41;, 9, 0, 0, 32, 32&#41;;  // Deuxième smiley

// Texte
imagestring &#40;$im, $taille_texte, 60, 7,  $texte_1, imagecolorallocate&#40;$im, $color_txt1[0&#93;, $color_txt1[1&#93;, $color_txt1[2&#93;&#41;&#41;;
imagestring &#40;$im, $taille_texte, 50, 25, $texte_2, imagecolorallocate&#40;$im, $color_txt2[0&#93;, $color_txt2[1&#93;, $color_txt2[2&#93;&#41;&#41;;

// Création du PNG
imagepng &#40;$im&#41;;
?>



Fichiers à apporter pour les script, à mettre sans le même dossier sur le ftp :
- deux petites images de 32*32 pixels pour personnaliser le compteur, smile_counter.png et smile_counter2.png.
- un fichier count_visit.txt contenant la valeur 00 et, une fois sur le ftp, clique droit > modifier l'attribut du fichier > entrer 777 pour lui donner un attribut 777.
- un fichier ip_visits.txt vide d'attribut 777 (même procédure que pour le fichier précédent).


Auteur : c@c.
Journalisée


Crazy_girl
Animateurs
****
Hors ligne Hors ligne

Messages: 382



Voir le profil
« Répondre #9 le: 15 Août 2005 à 01:29:20 »

Script permettant de modifier une date au format américain vers le format européen

Code:
<?php
/****************************************************
*Ce script permet de transformer une date format américain *
*contenu dans la base de données &#40;mysql&#41; en format européen*
*****************************************************
*                 Codé par CraMiX pour Orkiller&#46;com                         *
*****************************************************/
//CONFIGURATION A EFFECTUER PAR L'UTILISATEUR DE CE SCRIPT
$utilisateur ''; #Ceci est le nom d'utilisateur pour MySql
$mot_de_passe ''; #Ceci est le mot de passe pour MySql
$base_de_donnees ''; #Ceci est la base de données contenant la table qui contient la date
$table_date ''; #Ceci est la table contenant la date


/******************************************
*A PARTIR D'ICI =>> NE RIEN MODIFIER          *
*******************************************/

 
//Connexion à la base de données
mysql_connect &#40;"localhost", $utilisateur, $mot_de_passe&#41;or die&#40;"Erreur lors de la connexion à MySQL, verifiez que vous avez bien configurer le script"&#41;; //Connexion au serveur MySQL
mysql_select_db&#40;$base_de_donnees&#41;; // Selection de la base de données

//Définition des variables
$reponse mysql_query&#40;"SELECT * FROM $table_date"&#41;;
$donnees mysql_fetch_array&#40;$reponse&#41;;
$date $donnees['date'&#93;;

//Paramétrage et modification de la date
$date preg_replace&#40;'!^&#40;[0-9&#93;&#123;4&#125;&#41;+-&#40;[0-9&#93;&#123;2&#125;&#41;+-&#40;[0-9&#93;&#123;2&#125;&#41;$!', '$3/$2/$1', $date&#41;; #Modifiation de la date

//Deconnexion de Mysql
mysql_close&#40;&#41;;

//Et on affiche, "Ah, quel bonheur !"
echo $date;

/*******************************
*               For Orkiller's Army            *
********************************/

?>



Modifications: Effectuez les modifications demandées (lire le commentaire du début(le grand au début)).
Créer une table (du nom de votre choix) contenant un champ "date"(qui doit obligatoirement porter ce nom, à moins de modifier le script) de type "date".
Insérer une date au format américain (aaaa-mm-jj) dans ce champ.


Auteur : CramiX.
Journalisée


Flavien
Posteur fou
*****
Hors ligne Hors ligne

Messages: 622



Voir le profil
« Répondre #10 le: 08 Octobre 2005 à 14:38:56 »

Script générant des mot de passe à 8 caractere en majuscules, miniscules et chiffres

Code:
<?php 
function abc&#40;$arg,$maj&#41;
&#123;
if &#40;$arg == 1&#41;
&#123;
$lettre =  'a';
&
#125;
else if &#40;$arg == 2&#41;
&#123;
$lettre =  'b';
&
#125;
else if &#40;$arg == 3&#41;
&#123;
$lettre =  'c';
&
#125;
else if &#40;$arg == 4&#41;
&#123;
$lettre =  'd';
&
#125;
else if &#40;$arg == 5&#41;
&#123;
$lettre =  'e';
&
#125;

else if &#40;$arg == 6&#41;
&#123;
$lettre =  'f';
&
#125;
else if &#40;$arg == 7&#41;
&#123;
$lettre =  'g';
&
#125;
else if &#40;$arg == 8&#41;
&#123;
$lettre =  'h';
&
#125;
else if &#40;$arg == 9&#41;
&#123;
$lettre =  'i';
&
#125;
else if &#40;$arg == 10&#41;
&#123;
$lettre =  'j';
&
#125;
else if &#40;$arg == 11&#41;
&#123;
$lettre =  'k';
&
#125;
else if &#40;$arg == 12&#41;
&#123;
$lettre =  'l';
&
#125;
else if &#40;$arg == 13&#41;
&#123;
$lettre =  'm';
&
#125;
else if &#40;$arg == 14&#41;
&#123;
$lettre =  'n';
&
#125;
else if &#40;$arg == 15&#41;
&#123;
$lettre =  'o';
&
#125;
else if &#40;$arg == 16&#41;
&#123;
$lettre =  'p';
&
#125;
else if &#40;$arg == 17&#41;
&#123;
$lettre =  'q';
&
#125;
else if &#40;$arg == 18&#41;
&#123;
$lettre =  'r';
&
#125;
else if &#40;$arg == 19&#41;
&#123;
$lettre =  's';
&
#125;
else if &#40;$arg == 20&#41;
&#123;
$lettre =  't';
&
#125;
else if &#40;$arg == 21&#41;
&#123;
$lettre =  'u';
&
#125;
else if &#40;$arg == 22&#41;
&#123;
$lettre =  'v';
&
#125;
else if &#40;$arg == 23&#41;
&#123;
$lettre =  'w';
&
#125;
else if &#40;$arg == 24&#41;
&#123;
$lettre =  'x';
&
#125;
else if &#40;$arg == 25&#41;
&#123;
$lettre =  'y';
&
#125;
else if &#40;$arg == 26&#41;
&#123;
$lettre =  'z';
&
#125;
else if &#40;$arg == 27&#41;
&#123;
$lettre =  '0';
&
#125;
else if &#40;$arg == 28&#41;
&#123;
$lettre =  '1';
&
#125;
else if &#40;$arg == 29&#41;
&#123;
$lettre =  '2';
&
#125;
else if &#40;$arg == 30&#41;
&#123;
$lettre =  '3';
&
#125;
else if &#40;$arg == 31&#41;
&#123;
$lettre =  '4';
&
#125;
else if &#40;$arg == 32&#41;
&#123;
$lettre =  '5';
&
#125;
else if &#40;$arg == 33&#41;
&#123;
$lettre =  '6';
&
#125;
else if &#40;$arg == 34&#41;
&#123;
$lettre =  '7';
&
#125;
else if &#40;$arg == 35&#41;
&#123;
$lettre =  '8';
&
#125;
else if &#40;$arg == 36&#41;
&#123;
$lettre =  '9';
&
#125;

if &#40;$maj == 1&#41;
&#123;
$lettre strtoupper&#40;$lettre&#41;;
&#125;
return $lettre;
&
#125;

function motdepasse&#40;&#41;
&#123;
for&#40;$i = 0;$i < 8;$i++&#41;
&#123;
$alpha[$i&#93; = abc&#40;rand&#40;1,36&#41;,rand&#40;0,1&#41;&#41;;
&#125;

return implode&#40;$alpha&#41;;
&#125;



tester : http://http://bestroad.free.fr/pass.php
Auteur :Fragman
Journalisée




Flavien
Posteur fou
*****
Hors ligne Hors ligne

Messages: 622



Voir le profil
« Répondre #11 le: 10 Octobre 2005 à 18:35:53 »

Script qui permet d'afficher aléatoiremennt des images dans un dossier nommé

Code:
<?
//la configuration:

$imgpath = "dossier des images"; // la c/'est pour métre l/'endroit ou sont les images
$textalter = "image aleatoire"; // texte alternative de l'image (attribut alt)

//le bordel abituel:

$nodir = 0;
if ($imgpath == ".." || $imgpath == "." || $imgpath == "")
{
        $nodir = 1;
        $imgpath = ".";
}

$j = strlen($imgpath);
$j--;
if ($imgpath[$j] != '/' && $imgpath != ".")
        $imgpath .= '/';

if (is_dir($imgpath))
{

        if ($condir = opendir($imgpath))
        {
                $i = 0;
                while (($curfile = readdir($condir)) != false)
                {
                        $extension = "";
                        $extension = preg_replace("/.+\.(.{3,4})/", "$1", $curfile);
                        if ($extension == "png" || $extension == "gif" || $extension == "bmp" || $extension == "jpg" || $extension == "JPG" || $extension == "jpeg") //bon ca t/'as compris c'est les extention autorisé
                        {
                                $i++;
                                $images{$i} = $curfile;
                        }
                }

                if ($images{1} == "")
                {
                        echo "oula y a un bug...!"; // on sait jamais défois que ca marche pas
                }
                else
                {
                        $i = rand(1, $i);
                        $image = $images{$i};
                        echo "<img src=\"";
                        if ($nodir != 1)
                                echo $imgpath;
                        echo "".$image."\" alt=\"".$textalter."\" />";
                }
        }
        else
        {
                echo "il est ou le dossier des images?";
        }
}
else
{
        echo "c'est pas le bon dossier qu'est indiqué";
}
?>



Auteur :Erwann
Journalisée




Flavien
Posteur fou
*****
Hors ligne Hors ligne

Messages: 622



Voir le profil
« Répondre #12 le: 09 Mars 2006 à 22:51:10 »

Bonjour tout le monde,

Voici donc le script des «userbars»* pour que celles-ci s'affichent aléatoirement. Je posterais bien le script dans le «post-it» des scripts, mais deux ou trois explications s'imposent. Tout d'abord ce script n'est pas génial et il peut être facilement optimisé. Néanmoins, il est tout à fait fonctionnel et très pratique!

Pour utiliser ce script il faut :
 :arrow: Diviser votre nombre total de «userbars» selon le nombre de dossiers que vous avez précédemment créé (pour moi quatre! ; ) que vous disposez dans chacun des dossiers (si vous avez 16 «userbars» par exemple, mettez en quatre par dossier)

 :arrow: Finalement, lancer le script «signature.php» et là miracle..! une image apparait. Si vous Désirez voir une image du second dossier, faites seulement «signature.php?id=(le numero du dossier)».

Un petit probleme persiste; si on veut se servir de cette image comme signatue de forum phpBB, les image finissant par «.php» ne sont pas autorisées (d'un autre coté ce n'est pas un format d'image).

Je ne connais hélas pas de solution universelle!
Cependant chez free et Xooi.net (je n'ais pas tester pour les autres hébergeurs) on peut pratiquer de la manière suivante:

Code à inséré dans la signature:

Code:
[img]http://www.mon_serveur.com/signature.php/signature(vous mettez ici le numero du dossier).png[/img]


Le code du script en question:


Le code de la page «adduserbars.php» :
Code:
<?php
$id 
0;
if(isset(
$_GET["id"&#93;) && $_GET["id"&#93; != NULL)
{
$id $_GET["id"&#93;;
}
else
{
$URL pathinfo("$REQUEST_URI");

$vrai_chemin $URL["basename"&#93;;

if (ereg("^[0-9&#93;$",substr($vrai_chemin,-5,-4)))
{
$id substr($vrai_chemin,-5,-4);
}
}


if(
$id != 0)
{

$fichier "userbar"&#46;$id&#46;"&#46;txt";
if(file_exists($fichier)) //si userbar&#46;txt existe alors on le supprime et on le recrait
{
$a fopen($fichier,"r");
$b fgets($a);
}
else
{
$id "";
$a fopen("userbar&#46;txt","r");
$b fgets($a);
}
}
else
{
$id "";
$a fopen("userbar&#46;txt","r");
$b fgets($a);
}
if (
$b != 0)
{

do
{


$h mt_rand(0,intval($b));

for(
$i=0;$i<$h;$i++)
{
$adresse fgets($a);
}

$nom substr("userbars"&#46;$id&#46;"/"&#46;$adresse, 0, -1);



if (substr($nom, -3) == "JPG" ||substr($nom, -3) == "jpg")
{


header ("Content-type&#58; image/jpeg");

$image imagecreatefromjpeg($nom);


imagejpeg($image);
}
else if (
substr($nom, -3) == 'PNG' ||substr($nom, -3) == 'png')
{

header ("Content-type&#58; image/png");

$image imagecreatefrompng($nom);
imagepng($image);

}
else if ((
substr($nom, -3) == 'GIF' || substr($nom, -3) == 'gif'))
{
header ("Content-type&#58; image/gif");

$image imagecreatefromgif($nom);

imagegif($image);

}

}while(
$adresse == "");
}




Le code de la page «signature.php» :
Code:

<?php

if(isset($_GET['ID'&#93;))
{
$l "userbars"&#46;$_GET['ID'&#93;;
$texte "userbar"&#46;$_GET['ID'&#93;&#46;"&#46;txt";
}
else
{
$l "userbars";
$texte "userbar&#46;txt";

}
$adresse2 opendir($l);


$i =0;
$u =0;

if(
file_exists($texte)) //si userbar&#46;txt existe alors on le supprime et on le recrait
{
if(
unlink($texte)) // si la suppresion a fonctionner
{
$a fopen($texte,"a+"); //on crait usrbar&#46;txt

while (false !== ($filename readdir($adresse2))) {
   
 if(
$filename != "&#46;&#46;" && $filename != "&#46;")
   {
   
   
$fin[$i&#93; = $filename&#46;'
';

$i++;

}
}
$f = $i&#46;"
";
fputs($a, $f);
while($fin[$u&#93; != NULL)
{
fputs($a, $fin[$u&#93;);
$u++;
}

}
}
else // si userbar&#46;txt n'
existe pas alors on le crait
{
$a fopen($texte,"a+");

while (
false !== ($filename readdir($adresse2))) {
   
 if(
$filename != "&#46;&#46;" && $filename != "&#46;")
   {
   
   
$fin[$i&#93; = $filename&#46;'
';

$i++;
}
}
$f = $i&#46;"
";
fputs($a, $f);
while($fin[$u&#93; != NULL)
{
fputs($a, $fin[$u&#93;);
$u++;
}
}



Si vous avez des questions ou commentaires concernant ce petit script, vous pouvez les laisser ici, à la suite de ce message.

En espérant vous être utile,
Par Flavien

-----------------------------------------------------
*Pour ceux qui ne le savent pas, une «userbar» est une petite bar-image qui se place en signature d'un forum par exemple et qui représente nos intérêtes et nos goûts.


 Un grand merci à Blacko
Journalisée




Pages: [1]   Haut de page
Imprimer
 
Aller à:  

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines