nicolas.2los Posté 3 Avril 2009 Posté 3 Avril 2009 Bonjour Je souhaite mettre sur ma page d'accueil une image qui change tous les jours (à minuit par exemple) PS: une image, ou bien une vidéo, ou encore un petit texte Est-ce que c'est possible en PHP? Si oui, comment faut-il faire? Existe-t-il un script tout fait (parce que je n'en trouve pas)? Je vous remercie beaucoup
b0b0 Posté 3 Avril 2009 Posté 3 Avril 2009 Salut une méthode consisterait a poser 31 images nommées 1.jpg ... 31.jpg dans un dossier de ton site... puis dans ta page php <?phpecho '<img src="dossier/'.date("j").'.jpg" alt="" title="" />';?> Le 1er de chaque mois, c'est l'image 1.jpg qui est affichée, le 2, c'est la 2.jpg... et ainsi de suite Il y a plusieurs méthodes, c'en est une... b0b0
slender Posté 4 Avril 2009 Posté 4 Avril 2009 salut, la librairie graphique contient l'instruction adéquate: $source = imagecreatefromjpeg($filename);// Rotate$rotate = imagerotate($source, $degrees, 0); Tu peux te reposer la-dessus
yuston Posté 4 Avril 2009 Posté 4 Avril 2009 Quand il parle de faire tourner une image, c'est dans la définition afficher une image différente par jour et non effectuer une rotation autours d'un axe ! la méthode de b0b0 a le mérite de ne pas consommer trop de ressource, ce qui est fort pratique pour le serveur. Sinon, pour moi, le grand classique c'est de définir dans une base de donnée (ou fichier texte/XML/...) chaque image pour chaque jour. Et d'effectuer sur la page publique une requête qui récupère la bonne image, selon la date.
nicolas.2los Posté 4 Avril 2009 Auteur Posté 4 Avril 2009 (modifié) Bonjour, et encore 1000 fois merci pour vos réponses J'ai lu vos conseils, je suis avec un ami qui connait assez bien le PHP (même lui galere ), et on a fait un essai: J'ai stocké quelques vidéos dans ma base de données PHPMyAdmin Puis, dans ma page index, à l'endroit où je veux inserer ma vidéo, j'ai écrit ceci (j'ai pris comme exemple des vidéos de ma création que j'ai mises sur Dailymotion) En fait, je voudrais que chaque jour, une nouvelle vidéo apparaisse sur ma page d'accueil en lieu et place d'une autre (j'en ai une cinquantaine à faire tourner). Peu importe que ce soit une vidéo, une image ou un texte, en fait je veux que quelque chose change sur ma page d'accueil tous les jours: j'ai pas mal de fichiers que je voudrais que mes visiteurs voient dès ma page d'accueil Voila ce que ça donne au niveau du code: <?php/* info de la base */$host = "localhost";$login = "root";$pass = "";$id_video = 1;$debut = 1;$fin = 24;$jour = date("Y-m-d", mktime());$heure = date("G", mktime());$connect = mysql_connect($host, $login, $pass) or die("Impossible de se connecter : " . mysql_error());// nombre de video$total_video = 0;$action = "SELECT * FROM `video`";$result = mysql_db_query($nombase, $action);while ($row = mysql_fetch_object($result)) { $total_video++;}// numéro vidéo$action = "SELECT * FROM `num_video` WHERE `num` = 1";$result = mysql_db_query($nombase, $action);$row = mysql_fetch_object($result);$id_video = $row->id_video;$date = $row->jour; // changementif ($heure > $debut && $heure < $fin && $date != $jour) {if ($id_video < $total_video) { $id_video++; } else { $id_video = 1; }$action = "UPDATE `num_video` SET `id_video` = '".$id_video."', `jour` = '".$jour."' WHERE `num` =1 LIMIT 1;";$ok = mysql_db_query($nombase, $action);}// donnée vidéo$action = "SELECT * FROM `video` WHERE `num` = ".$id_video;$result = mysql_db_query($nombase, $action);$row = mysql_fetch_object($result);$adresse = $row->adresse;$x = $row->width;$y = $row->height;mysql_close($connect);echo "<div align='center'><br /><object width='".$x."' height='".$y."'><br /><param name='movie' value='".$adresse."'></param><param name='allowFullScreen' value='true'></param><param name='allowscriptaccess' value='always'></param><embed src='".$adresse."' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' width='".$x."' height='".$y."'></embed></object></div>";?> Maintenant nous avons 2 tables: -une table num_video avec 3 champs (num, id_video et jour) -une table video avec 4 champs (num, adresse, widht et height) Problème: mon ami spécialiste du PHP me soutient qu'on est obligés de définir un laps de temps (ce qu'on a fait, dans le code, de 1.00 à 24.00, on a visé large ) pendant lequel au moins un visiteur doit visiter ma page pour que la vidéo change A son avis, il est impossible de définir une heure (par exemple 23.00) qui fasse passer de la vidéo N°1 à la vidéo N°2 le 1er jour, puis de la vidéo N°2 à la N°3 le 2e jour, etc, etc...... Il part du principe que s'il n'y a personne à 23.00 sur mon site, le changement ne se fera pas :? Il m'étonne sur ce coup. Qu'en pensez-vous? Modifié 4 Avril 2009 par nicolas.2los
Dan Posté 4 Avril 2009 Posté 4 Avril 2009 C'est tout simple avec une réécriture d'URL ... Par exemple en se basant sur l'exemple donné sur le site d'Apache : RewriteEngine onRewriteCond %{TIME_HOUR}%{TIME_MIN} >0700RewriteCond %{TIME_HOUR}%{TIME_MIN} <1900RewriteRule ^foo\.html$ foo.day.htmlRewriteRule ^foo\.html$ foo.night.html Dans cet exemple on change selon l'heure entre un fichier pour le jour et un autre pour la nuit. Mais il y a bien d 'autres variables sur lesquelles tu peux jouer : TIME_YEARTIME_MONTIME_DAYTIME_HOURTIME_MINTIME_SECTIME_WDAYTIME
nicolas.2los Posté 4 Avril 2009 Auteur Posté 4 Avril 2009 C'est tout simple avec une réécriture d'URL ... Par exemple en se basant sur l'exemple donné sur le site d'Apache : RewriteEngine onRewriteCond %{TIME_HOUR}%{TIME_MIN} >0700RewriteCond %{TIME_HOUR}%{TIME_MIN} <1900RewriteRule ^foo\.html$ foo.day.htmlRewriteRule ^foo\.html$ foo.night.html Dans cet exemple on change selon l'heure entre un fichier pour le jour et un autre pour la nuit. Mais il y a bien d 'autres variables sur lesquelles tu peux jouer : TIME_YEARTIME_MONTIME_DAYTIME_HOURTIME_MINTIME_SECTIME_WDAYTIME Merci Dan, mais je ne comprends pas grand chose (en plus, mon ami vient de partir) -ton premier code est à mettre dans le .htaccess? Quant au 2e, de quoi s'agit-il? De champs d'une table? Comment j'agence le tout? Je suis p a u m é
yuston Posté 4 Avril 2009 Posté 4 Avril 2009 C'est très simple: Tu fais deux fichiers: foo.day.html qui contient la page qui doit s'afficher à 7h00 jusqu'à 18h59 et foo.night.html qui elle s'affiche de 19h00- 6h59 je suppose. Ensuite, selon l'heure, foo.day/night.html sera réécrit en foo.html! La deuxième partie de code donnée par Dan c'est c'est d'autres variables du même type que TIME_HOUR et TIME_MIN utilisés dans le premier code. Le premier code est effectivement à mettre dans le .htaccess!
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant