Bonjour à tous,

Je dispose d'une page web qui est affiché sur un grand écran tv .

La page web index.php s'occupe afficher en alternance des données récupérées dans mysql ou des photos (aussi récupéré dans mysql).
(elle appel des page en Ajax
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
<?php
session_start();
$contenu_fichier = file_get_contents('config.cfg');
$joueurs = explode("\n", $contenu_fichier);
foreach ($joueurs as $joueur)
   {
    $list = explode(';', $joueur);
   $_SESSION[$list[0]] = $list[1];
 
                          // echo $_SESSION[$list[0]];
   }
 
// echo "<pre>";
// print_r($_SESSION);
// echo "</pre>";
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 
<html lang="fr">
<head>
<title>Titre de la page</title>
 
<link rel="shortcut icon" type="image/x-icon" href="./?getimg=favicon" /> 
 
</head>
<body>
 
<div id="affichage_agenda" class="cacher" ></div>
<div id="affichage_vo" class="cacher" ></div>
 
</body>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>  
<script type="text/javascript"> 
var divs = ['affichage_agenda', 'affichage_vo'];
var currentDiv = null;
 
var afficherDiv = function(div) {
$('.cacher').css('display', 'none');
$('.cacher').html('');
 
//alert("affichagediv>>>" + div);
        if (div == "affichage_agenda")
  {
  //alert("ok"+$("#id_societe").val());
   $.ajax({
   type: "POST",
   url: "./agenda.php",
   data: "idauteur="+$("#societe_icardms").val()+"&idauteur2="+$("#atelier_icardms").val(),
   success: function(html){
    $("#affichage_agenda").html(html);
	$('#affichage_agenda').css('display', '');
  }
});
  }
  else if(div == "affichage_vo")
  {
  //alert("ok"+$("#id_societe").val());
   $.ajax({
   type: "POST",
   url: "./affichagev2.php",
   data: "idauteur="+$("#societe_planetvo").val(),
   success: function(html){
    $("#affichage_vo").html(html);
		$('#affichage_vo').css('display', '');
  }
});
  }
  else
  {
  alert('error');
}
}
var alternerDiv = function() {
        //la div courante est elle dans la liste ? (cas de l'initialisation ou currentDiv = null)
		//alert(divs.indexOf(currentDiv));
        if(divs.indexOf(currentDiv) > -1) {
	//	alert("1");
                // Si la div courante est la dernière du tableau
                if(divs.indexOf(currentDiv)+1 == divs.length) {
				//alert("11");
                        //On affiche la première div de la liste
                        afficherDiv(divs[0]);
                        //On change la div courante
                        currentDiv = divs[0];
                }
                else {
			//	alert("12");
			//	alert(divs.indexOf(currentDiv));
                        afficherDiv(divs[divs.indexOf(currentDiv)+1]);
                        currentDiv = divs[divs.indexOf(currentDiv)+1];
                }
        }
        else {
	//	alert("2");
                //On affiche la première div de la liste
                afficherDiv(divs[0]);
                //On change la div courante
                currentDiv = divs[0];
        }
//alert(">>>>>"+ currentDiv);
        //Prochain changement de div dans 2s
        setTimeout(alternerDiv,60000);
}
 
//Premier changement de div
setTimeout(alternerDiv,60000);
</script> 
</html>
Ci-dessous la page web qui s'occupe d'afficher mes photos dans un slide Show:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
 
<?php
header('Content-Type: text/html; charset=ISO-8859-15'); 
mysql_connect($server,$user,$pass) or die('erreur de connexion');
mysql_select_db($db) or die ('impossible de se connecter a la base');
 
 
$query = mysql_query("SELECT  * FROM `table 1` WHERE Photos <>'' AND CodePvo='kkk' ORDER BY RAND() LIMIT 1");
 
$query2 = mysql_fetch_array($query);
 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 
<html lang="fr">
<head>
<title>Titre de la page</title>
<link href="css/sitev2.css" rel="stylesheet" media="all" type="text/css" /> 
<META HTTP-EQUIV="Refresh" CONTENT="35"> 
</head>
<html><body  >
<div id="haut">
<span style="font-size: 70px; font: bold;"></span><br/>
</div>
<img src="img/logo+marque.png" alt="logo" id="logo"/>
<div id="corp">
</div>
<br/>
<div id="conteneur">
 
 
 
 
 <?php
//ensuite pour parcourir ton tableau :
 
$tab_string = explode("|", $query2["Photos"]);
 
//ensuite pour parcourir ton tableau :
 
echo '<script type="text/javascript">
function randomImg(){
   var tabImg = new Array();';
 
 
for($i = 0; $i <count($tab_string); $i++){
echo 'tabImg['.$i.']  = "'.$tab_string[$i].'";';
 
//echo '<img src="photos/'.$tab_string[$i].'" alt="img" style="width:25%;" />';
}
   echo "document.getElementById('image').src += tabImg[Math.round(Math.random()*4)];
}
</script>";
 
 $tab_string2 = explode("|", $query2["Photos"]);
 
//ensuite pour parcourir ton tableau :
 
 
echo '<div id="image">
<div class="slideshow"><ul>';
 
for($i = 0; $i <count($tab_string2); $i++){
echo '<li><img src="photos/'.$tab_string2[$i].'" alt=""  class="coin" width="800" height="600"/></li>';
 
 
}
echo '</ul></div></div> ';
 
 
 
   //<img src="photos/" id="image" style="width:25%" class="coin"/>
echo '<table id="enteteagenda">
<tr >
<td>'.$query2["Marque"].'</td>
<td style="text-align:right;"> <span class="bleu"></span></td>
</tr>';
 echo '<tr colspan="2"><td>'.$query2["Modele"].''.$query2["Version"].'</td></tr>';  
//echo ' <table id="tableagenda"  cellspacing="0" cellpadding="0" border="0">';
 
echo '	
 
 
 
		</table>';
///
 
 
echo '<table id="tableagenda2"><tr><th colspan="2"></th></tr>';
$nbCols = 2; // nombre de colonnes du tableau
$cpt = 0; // compteur d'éléments
$tab_string = explode("|", $query2["EquipementsSerieEtOption"]);
for($i = 0; $i <12; $i++){
    if ($cpt%$nbCols==0) // on divise le nb d'élément par le nb de colonnes. Si le reste est de 0 ...
        echo '<tr>'; // ..., alors on est sur le premier élément d'une ligne
 
 
    // On place chaque élément dans une cellule du tableau
    echo '<td>';
    echo $tab_string[$i]; // affichage de tout ce qu'on veut dans la cellule
    echo '</td>';
 
 
    // fin d'une ligne
    if ($cpt%$nbCols==($nbCols-1)) // on divise le nb d'élément par le nb de colonnes. Si le reste est de ($nbCols-1) ...
        echo '</tr>'; // ..., on est sur le dernier élément d'une ligne
 
    $cpt++; // on incrémente le compteur pour savoir où on en est
 
}
 
if ($cpt!=0 && $cpt%$nbCols!=0) { // S'il n'y a pas eu assez de cellules dans la boucle pour finir la ligne ...
    echo '<td colspan="'.($nbCols - ($cpt%$nbCols) ).'">&nbsp;</td>'; // ... on complète avec une cellule vide de la bonne taille...
    echo '</tr>'; // ... et on ferme la ligne
}
 
echo '</table>';
 
 
 
 
 
		?>
 
 
   </div>
<div id="footer"></div>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>  
 
    <script type="text/javascript">  
      $(function(){
   setInterval(function(){
      $(".slideshow ul").animate({marginLeft:-350},1200,function(){
         $(this).css({marginLeft:0}).find("li:last").after($(this).find("li:first"));
      })
   }, 6000);
});
    </script> 
</body>
</html>

Je rencontre deux problème avec cette page:

- Au bout d'un moment l'ordinateur ou la page web tourne en boucle commence à saturer au niveau de la ram.

Est-ce que dans ma page j'ai pas oublié un bout de code pour vidé la mémoire ? (au niveau des photos par exemple)

- Le slideshow fonctionne mais au bout d'un moment les images se décale. Dans le cadre ou les images doivent défilé chaque une à la suite des autres au bout d'un moment je vois la moitié de deux images (l'image actuel et l'image suivante)


Pourriez-vous m'indiquer ou est-ce que j'ai commis une erreur ?


Merci d'avance pour vos explications.

guigui69