tirage aleatoire dans fichier html

Farenheit
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 26 Jan 2007

tirage aleatoire dans fichier html

Message le Mer Juin 04, 2008 17:40

bonjour,

dans un fichier .html je voudrai faire afficher le contenu d'un fichier .txt tiré aleatoirement.
Exemple :

dans mon fichier index.html je voudrais faire affichier ce qu'il y a dans un des fichiers suivants :
file1.txt, file2.txt, ....

Mais aussi faire afficher de preference le contenu du fichier file2.txt 80% du temps.

Apres moultes recherches, j'ai trouvé pour le faire en php, mais en html je ne trouve pas

auriez vous une idée ou un debut de piste ?

merci :wink:

ZelkiN
WRInaute impliqué
WRInaute impliqué
 
Messages: 500
Inscription: 27 Juil 2007

Message le Mer Juin 04, 2008 17:46

hum, j'ai bien peur quand HTML tu ne puisse pas étant donné que c'est un langage static. En revanche recherche plus au niveau du java script, a mon avis tu va trouver quelque chose

Farenheit
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 26 Jan 2007

Message le Mer Juin 04, 2008 17:51

merci pour ton conseil, je vais chercher de ce cote la

;-)


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3974
Inscription: 16 Nov 2004

Message le Jeu Juin 05, 2008 3:35

Pourquoi faire du JS...

il faut d'abord permettre a PHP d'executer du code dans une page HTML ->
dans le fichier .htaccess ajouter cette ligne

Code: Tout sélectionner
AddType application/x-httpd-php .htm .html


Ensuite PHP fait ca tranquille ->

avec 80% de chance que le fichier file1.txt ressorte ->

Code: Tout sélectionner
<?php
$ma_var_rand =  rand(1, 5);
if ($ma_var_rand >= 1 and <= 4) include 'file1.txt';
else include 'file2.txt'; ?>



++

Farenheit
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 26 Jan 2007

Message le Jeu Juin 05, 2008 8:33

Bonjour et merci Koogar pour cette info.
Ca tombe bien, je ne trouvais rien de bien en javascript depuis hier.

Par contre j ai une erreur :

Parse error: syntax error, unexpected T_IS_SMALLER_OR_EQUAL in /home/www/page.html on line 3

pour etsetr je n'ai mis que ca dans ce fichier :

Code: Tout sélectionner
<?php
$ma_var_rand =  rand(1, 5);
if ($ma_var_rand >= 1 and <= 4) include 'file1.txt';
else include 'file2.txt'; ?>


et les fichiers file1.txt et file2.txt existent bien

8O


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3974
Inscription: 16 Nov 2004

Message le Jeu Juin 05, 2008 8:49

oups..

Code: Tout sélectionner
<?php
$ma_var_rand =  rand(1, 5);
if ($ma_var_rand >= 1 and $ma_var_rand <= 4) include 'file1.txt';
else include 'file2.txt'; ?>

Farenheit
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 26 Jan 2007

Message le Jeu Juin 05, 2008 8:59

C'est genial ca fonctionne impeccable !!

Je te remercie beaucoup Koogar pour ton aide precieuse.

Merci encore 1000 fois

:wink:

nonel
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 350
Inscription: 5 Mai 2005

Message le Jeu Juin 05, 2008 9:02

Bonjour,

Je m'incruste un peu dans le topic vu que je suis, moi aussi, en train de bidouiller du RANDOM.
J'ai une série d'URL dans un fichier (txt, html ou php) peu importe. Et je souhaite tirer au hasard 5 de ces liens sans qu'il y ai de doublons.


e-kiwi
Modérateur
Modérateur
 
Messages: 15618
Inscription: 23 Déc 2003

Message le Jeu Juin 05, 2008 9:33

mettre les url dans un tableau php, et lorsque tu tire une url, tu l'enleve du tableau pour ne pas pouvoir la retirer ?


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3974
Inscription: 16 Nov 2004

Message le Jeu Juin 05, 2008 9:52

array_unique() suffira pour enlever les doublons du tableau et ne jamais tirer 2 fois le même lien.

Code: Tout sélectionner
<?php
if (!($f=fopen("file.txt","r")))
exit("Impossible d'ouvrir le fichier.");
$f = 'file.txt';
$tab = array();
if(file_exists($f)) {
    $tab = file($f);  // place le fichier dans un tableau
    $tab1 = array_unique($tab);  // dedoublonne
    $nb = count($tab1);    // compte le nombre de champ
    $ma_var_rand =  rand(0, $nb); // set aleatoire en tre 0 et le nombre de champ
    // affiche
    echo $tab1[$ma_var_rand];
}
?>


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités