Choisir un fichier dans un .txt

Petit nouveau ! | 6 Messages

23 nov. 2006, 19:44

Bonjour,

J'ai déja vu quelque part que l'on pouvait créer un script php qui choisissait un fichier dans un .txt a afficher sur le site pour que cela soit aléatoire !

Par exemple,dans le txt,je met :

image1.jpg
image1.jpg
image1.jpg
image1.jpg
image4.jpg

Cela veut dire que l'image1 sortira plus que l'image4 ! Puis,je met dans mon ftp le fichier .txt dans le meme repertoire que ces fameuses images.

Et sur le site,je met le code php qui choisi au hasard l'image ou autre dans le .txt et l'affiche !

Je sait que c'est possible ! Mais je sait pas comment faire :cry:

Est ce que quelqu'un peut m'aider ?

Merci infiniment

ViPHP
ViPHP | 3607 Messages

23 nov. 2006, 19:56

En php tout est possible :mrgreen: :!: :!:
plus sèrieusement, c'est tout à fait possible en regardant du côté des fontions file(), ou file_get_contents()...
tu mets tout ça dans un tableau avec un explode() par exemple, et ensuite tu choisi au hasard avec un rand()

Petit nouveau ! | 6 Messages

23 nov. 2006, 20:11

Bonjour,

en faite,je vient de trouver cela mais ca ne m'affiche pas l'image mais uiquement le texte que j'ai mi dans le .txt !

exemple :
<? 
$cpt=0; 
$fpc = fopen("image.txt","r"); 

while (!feof($fpc)) 
{ 
$enrc = fgets ($fpc,4096); 
$tabc[]=$enrc; 
$cpt++; 
} 
srand((double)microtime()*1000000); 
$nbrc=rand(0,($cpt-1)); 
echo "$tabc[$nbrc]"; 
?>

Dans le fichier .txt,j'ai mis

image1.swf
image1.swf
image1.swf
image4.swf
Donc,sur mon site,c'est effectivement aléatoire mais il m'écrit image1.swf au lieu de m'afficher l'animation ?

ViPHP
ViPHP | 3607 Messages

24 nov. 2006, 00:09

bon c'est un comportement tout à fait normal... car tu n'indique pas au navigateur que c'est un image à afficher.
ceci dit, ce ne sont pas des images que tu liste ?, mais des fichiers flash...
alors soit tu mets des images et tu te sert de la balise <img>, soit tu te serts de la balise adapté au script tel que flash (je sas plus trop laquelle c'est :))

Petit nouveau ! | 6 Messages

24 nov. 2006, 00:12

Personne ne peut m'aider ?

est ce que ca un rapport avec ce code ? :
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="800" height="600">
<param name="movie" value="votre animation.swf">
<param name="quality" value="high">
<embed src="votre animation .swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="800" height="600"></embed></object>
please :!:

ViPHP
ViPHP | 3607 Messages

24 nov. 2006, 00:15

et bien oui c'est tout à fait en rapport, tu doit réutiliser la structure de ce code, mais en changeant les sources des .swf, quelque chose comme ça:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="800" height="600">
  <param name="movie" value="<?php $mavariable; ?>">
  <param name="quality" value="high">
  <embed src="<?php $mavariable; ?>" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="800" height="600">
  </embed>
</object> 

Petit nouveau ! | 6 Messages

24 nov. 2006, 00:20

merci de tes réponses !

Par contre,je n'arrive pas à cerner quel variable je doit utiliser :

<?php $mavariable; ?>"> ???

Peut tu m'en dire un peu plus stp ! merci

A vrai dire je comprend pas quel variable je doit mettre !

ViPHP
ViPHP | 3607 Messages

24 nov. 2006, 00:23

je vais pas te donner le code tout cuit, donc réfléchissons un peu...
quelle est la variable dans ton code que tu as mis plus haut, qui affiche image1.swf?
Si tu la trouve, tu trouveras du même coup quel variable utiliser dans tes balises object et embed
Modifié en dernier par jojolapine le 24 nov. 2006, 00:24, modifié 1 fois.

ViPHP
fab
ViPHP | 2657 Messages

24 nov. 2006, 00:23

$tabc[$nbrc] celle que toi tu récuperes
Seul l'intelligent a le pouvoir de se trouver con
try { work(); } catch(FlemmeExeption $e) { sleep(84600); }

ViPHP
ViPHP | 3607 Messages

24 nov. 2006, 00:25

rooo fallait pas lui dire... [-( c'est aps du jeu:(
sinon pense à uiliser les balises [ php ] et [/ php ] MaryseR

Petit nouveau ! | 6 Messages

24 nov. 2006, 00:34

ben...euh..comprend pas, ca fonctionne pas !

J'ai toujours seulement le texte qui s'affiche : image1.swf et en plus maintenant a coté j'ai un petit carré blans du a l'animation ???

D'après ce que je vois,cela va me l'afficher deux fois l'image ? enfin,si j'y arrive .....

ViPHP
ViPHP | 3607 Messages

24 nov. 2006, 00:35

fait moi donc voir le code que tu as utilisé...
:-k

Petit nouveau ! | 6 Messages

24 nov. 2006, 00:46

Un grand merci a vous deux :D

En cherchant bien,le php est très passionnant quand meme ! Je m'explique :

En regardant le code php pour prendre l'image aléatoire,cela lui demande d'afficher l'image avec echo $tabc[$nbrc]....

J'ai donc supprimer cette fonction de ce script et je l'ai reporter sur le code pour afficher flash mai sans les <?php> mais plutot <?echo "$tabc[$nbrc]"; ?>" pour object et embed !

ben voilà,encore un grand merci !

Franchement,vous m'avez aidé mais sans trop me donner les réponses,il a fallu donc que je cherche en fonction de vos "tuto" ! Et ca,c'est génial de faire ca car on apprend encore mieux php !

Merci :D

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

24 nov. 2006, 00:57

Modération : Si ta question est résolue, pense à ajouter le tag [Résolu] pour indiquer aux personnes qui voudront consulter ce thread qu'il contient une solution.

Tu peux réaliser cette opération en cliquant sur le bouton [Résolu] en haut à gauche de ce thread.
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

ViPHP
ViPHP | 3607 Messages

24 nov. 2006, 01:53

derien !! \:D/