Bonjour,
J'utilise actuellement un morceau de php, qui m'aide a tourner les images background dans l'entête et ceci d'une manière aléatoire, quand on rafraichit la page, ou quand on va vers une autre page:
en css
Code :
- #header {background: url(img/entete/tourner.php) no-repeat 0px 0px;
|
et tourner.php
Code :
- <?php
- $file_types = array(
- 'jpg' => 'image/jpeg',
- 'jpeg' => 'image/jpeg',
- ) ;
- $regex = '/\.(' . implode('|',array_keys($file_types)) . ')$/i' ;
- $files = array() ;
- $directory = opendir("." );
- while ( FALSE !== ($file = readdir( $directory )) ) {
- if ( preg_match( $regex, $file ) ) {
- $files[] = $file ;
- }
- }
- if ( !empty( $files ) ) {
- $which = rand(0,sizeof($files)-1) ;
- if ( $file = file_get_contents( $files[$which] ) ) {
- $parts = explode('.',$files[$which]) ;
- $ext = strtolower($parts[sizeof($parts)-1]) ;
-
- header( "Content-type: " . $file_types[$ext] ) ;
- header( "Expires: Wed, 29 Jan 1975 04:15:00 GMT" );
- header( "Last-Modified: " . gmdate("D, d M Y H:i:s" ) . " GMT" );
- header( "Cache-Control: no-cache, must-revalidate" );
- header( "Pragma: no-cache" );
- print $file ;
-
- }
- }
- ?>
|
Toute fonctionne très bien sauf que là, pour expérimenter une mise en page particulière, j'aurais besoin que le changement des images se fasse d'une manière séquentielle et pas aléatoire. Par exemple on charge l'image 1.jpg 2.jpg 3jpg etc.
Après mes recherches j'ai vu que le function mt_rand() pourrait m'aider a accomplir cette tache, mais vu que je viens juste de commencer tripoter le php, l'incompétence du newbie frappe très fort et ne m'aide pas a savoir quoi changer dans tourner.php
Si vous pouvez me donner un coup de pouce je vous serait reconnaissant.
Une dernière question aussi: Quel ouvrage php ( en français ou english) pouvez vous me conseiller pour bien démarrer avec le php. J'ai commencé avec le manuel officiel, mais a vrai dire ce type d'apprentissage ne me fait pas avancer énormément car j'ai du mal a structurer bien le choses que je lis. J'ai toujours eu la tendance d'apprendre en traitant un cas d'usage pour comprendre le but final et voir comment on y arrive.
Cdt
Dopey
Message édité par Dopey le 16-09-2009 à 19:12:24