Nouveau sur le forum ? Voici votre case départ pour bien débuter.

Liens contextuels :

Auteur
Ferris
# 06 Sep 2008 - 22:29:38
Citer
15 Posts
Bonjour,

Je suis perdu, 2heures que je recherche mais tonight, Google n'est pas mon ami !

Voila, je fais principalement de l'integration html/php et suis nul en dev (je precise mon niveau)

J'ai un script PHP qui marche avec des template, ainsi

index.php s'affiche selon le choix en utilisant
'templates/1ertemplate/index.htm'
ou
'templates/2emetemplate/index.htm'

tout ça pour dire que je ne peux mettre de PHP dans mes fichiers de template htm (cette structure ne doit pas etre changée)

mon souci est le suivant, j'ai 4 images pour un background que je souhaite charger aleatoirement dans un div de ce fameux index.htm

Je ne sais vraiment pas comment faire
J'avais penser faire 4 fichiers css differents avec juste 1 style et charger aleatoirement 1 de ces 4 fichiers css .
Mais ça me parrait un peu tordu.

Si quelqu'un a un idée, elle serait la bienvenue..
F.
Modifié par Ferris (06 Sep 2008 - 22:29)

^
Heyoan
# 06 Sep 2008 - 23:02:46
Citer
Un p'tit Kiwiz Coca ?
Modérateur
3156 Posts
Salut,

tu pourrais faire comme ça :

* tout d'abord il faut renommer les fichiers index.htm en index.php.

* rajouter après la déclaration de ta (tes) feuille(s) CSS
<?php include('img_shuffle.css.php'); ?>
* Le fichier img_shuffle.css.php
<?php
$images_shuffle = array('include/images/image1.gif', 'include/images/image2.gif', 'include/images/image3.gif', 'include/images/image4.gif');
srand((float)microtime() * 1000000);
shuffle($images_shuffle);
?>
<style type="text/css" media="screen"><!--
/* Contenu du bloc CSS */
.class1 {
background-image: url(<?php echo $images_shuffle[0]; ?>);
}
.class2 {
background-image: url(<?php echo $images_shuffle[1]; ?>);
}
.class3 {
background-image: url(<?php echo $images_shuffle[2]; ?>);
}
.class4 {
background-image: url(<?php echo $images_shuffle[3]; ?>);
}
--></style>

A+

^
Ferris
# 06 Sep 2008 - 23:17:58
Citer
15 Posts
Heyoan a écrit :
Salut,

tu pourrais faire comme ça :

* tout d'abord il faut renommer les fichiers index.htm en index.php.

* rajouter après la déclaration de ta (tes) feuille(s) CSS
<?php include('img_shuffle.css.php'); ?>
* Le fichier img_shuffle.css.php
<?php
$images_shuffle = array('include/images/image1.gif', 'include/images/image2.gif', 'include/images/image3.gif', 'include/images/image4.gif');
srand((float)microtime() * 1000000);
shuffle($images_shuffle);
?>
<style type="text/css" media="screen"><!--
/* Contenu du bloc CSS */
.class1 {
background-image: url(<?php echo $images_shuffle[0]; ?>);
}
.class2 {
background-image: url(<?php echo $images_shuffle[1]; ?>);
}
.class3 {
background-image: url(<?php echo $images_shuffle[2]; ?>);
}
.class4 {
background-image: url(<?php echo $images_shuffle[3]; ?>);
}
--></style>

A+


Merci de ta reponse, mais dans ton exemple, tu defini bien les images dans le array mais apres tu as 4 class ??

donc dans mon div final, je ne vois pas quel id ou class indiquer avec ta solution?

^
Heyoan
# 06 Sep 2008 - 23:29:56
Citer
Un p'tit Kiwiz Coca ?
Modérateur
3156 Posts
Ferris a écrit :


Merci de ta reponse, mais dans ton exemple, tu defini bien les images dans le array mais apres tu as 4 class ??

donc dans mon div final, je ne vois pas quel id ou class indiquer avec ta solution?
Ben c'est à remplacer par les id ou class actuels que tu utilises pour positionner les images en background dans tes 4 éléments. murf

^
6l20
# 06 Sep 2008 - 23:52:59
Citer
Chasseur de 1/2 Kiwiz
Modérateur
1371 Posts
Heyoan a écrit :
Ben c'est à remplacer par les id ou class actuels que tu utilises pour positionner les images en background dans tes 4 éléments. murf

Hello Heyoan, il me semble avoir compris qu'il s'agit de 4 images à faire défiler de façon aléatoire (ou à chaque rechargement de la page) en background d'un div.

Il s'agit de la fonction rand, non ?
Je ta laisse la suite, tu es largement plus compétent que moi, en PHP confused

XHTML: structure. CSS: présentation. Javascript: comportement.

^
Heyoan
# 07 Sep 2008 - 00:03:34
Citer
Un p'tit Kiwiz Coca ?
Modérateur
3156 Posts
6l20 a écrit :

Il s'agit de la fonction rand, non ?
Comme dirait l'ami Florent : Lisez les specs boudiou ! lol

^
Ferris
# 07 Sep 2008 - 00:12:54
Citer
15 Posts
oppps je me suis mal expliqué..

J'ai 1 div et plusieurs images de fonds (4), je souhaite que dans ce div, au chargement, une image parmi les 4 soit choisie.

Pour l'instant, j'ai renommé mon index.htm en PHP

puis j'ai fait mon div comme suit :
<div id="accueil" class="b<?php echo rand(1, 4);?>">

Dans mon css j'ai placé :
#accueil.b1 { background:url(../images/a01.jpg)}
#accueil.b2 { background:url(../images/a02.jpg)}
#accueil.b3 { background:url(../images/a03.jpg)}
#accueil.b4 { background:url(../images/a04.jpg)}

Marche pas,
alors j'ai essayé :

<div class="accueil" style="background:url(../images/a0<?php echo rand(1, 4);?>.jpg) no-repeat">

marche pas non plus.
Modifié par Ferris (07 Sep 2008 - 00:14)

^
Heyoan
# 07 Sep 2008 - 00:18:30
Citer
Un p'tit Kiwiz Coca ?
Modérateur
3156 Posts
Ferris a écrit :
oppps je me suis mal expliqué..

J'ai 1 div et plusieurs images de fonds (4), je souhaite que dans ce div, au chargement, une image parmi les 4 soit choisie.
hihihi ! Alors c'est Sylvain qui avait raison ! ravi

Ton dernier code devrait fonctionner... à condition qu'il soit bien interprété comme étant du PHP. C'est pour ça que je te disais de faire un include d'un fichier en .php

Pour t'en assurer il suffit d'afficher la source de la page générée (soit ta page index.php, soit ta css quelquechose.php)
Modifié par Heyoan (07 Sep 2008 - 00:20)

^
6l20
# 07 Sep 2008 - 00:24:15
Citer
Chasseur de 1/2 Kiwiz
Modérateur
1371 Posts
Heyoan a écrit :
Comme dirait l'ami Florent : Lisez les specs boudiou !

Heyoan a écrit :
hihihi ! Alors c'est Sylvain qui avait raison ! ravi

De toute façon t'es méchant bawling

A part cela, tu me donnes des cours PHP quand tu veux cligne

XHTML: structure. CSS: présentation. Javascript: comportement.

^
Ferris
# 07 Sep 2008 - 00:36:33
Citer
15 Posts
Ma page htm renommée en php n'est pas interpreté PHP car avec mon dernier code + afficher la source, j'ai :

<div class="accueil" style="background:url(../images/a0<?php echo rand(1, 4);?>.jpg) no-repeat">

C'est pour cela, je me demandais si je pouvais garder mon index.htm et mettre ces 4 variantes de style dans 4 fichiers css et utiliser java pour appeler aléatoirement un de ces 4 fichiers css.

^
Heyoan
# 07 Sep 2008 - 01:02:12
Citer
Un p'tit Kiwiz Coca ?
Modérateur
3156 Posts
Ben tu pourrais effectivement le faire en Javascript (à ne pas confondre avec Java) mais puisque tu utilises un moteur de templates PHP il suffit de trouver pourquoi ce n'est pas interprété. Peut-être parce que la page index.php n'est pas incluse à l'aide d'include (qui va interpréter PHP) mais à l'aide de readfile (qui ne va pas l'interpréter)...

Il faut chercher et toi seul peut voir la structure. cligne

^

référencesLes références web : openweb.eu.org - opquast.com - webmaster-hub.com - webrankinfo.com - salemioche.net - web-pour-tous.org - webonorme.org

Nos partenaires : Editions Eyrolles

Nikozen : Hébergement - Réalisation : Alsacreations.fr

Powered by Phedio v3.7.9 © dew
Contacter l'administrateur - 6 ms - Charte