Salut,

Je suis nouveau ici et je débute dans l'ajax.

Je vous explique mon problème :

J'envoie un formulaire dans un div avec une fonction ajax jusqu'à la rien d'extraordinaire car ca marche, mais dans la page appelée dans le div qui a contrôlé les infos du formulaire, j'ai une inclusion d'un autre page avec une fonction horloge java avec un setTimeout qui doit changer l'heure toute les secondes (normal lol) mais la ca ne fonctionne pas. Par contre quand j'exécute la page seul la fonction se lance bien.

Code de la page principal.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
...
<script language="javascript" type="text/javascript" src="fonctions/ajax.js" ></script>
<?
echo"<div id=\"formulaire\" style=\"position:absolute; visibility:visible; width:100%; height:100%; top:0; left:0; z-index:2;\">";
include('formulaire.php');
echo"</div>";
?>
...
Code de la page ajax.js :

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
function donnee_get(form1)
{
var data1 = "";
var forma = document.getElementById(form1);
var elements = forma.elements;
for(var i=0; i<forma.length; i++)
{
data1 += elements[i].name + "=" +escape(elements[i].value);
if((i+1)<forma.length)
{
data1+="&";
}
}
return data1;
}
function post_get(fichier, div, method, form)
{
var xhr=null;
var data="null";
if(form!="null")
{
if(method=="GET")
{
data=form;
method="POST";
}
else
{
data = donnee_get(form);
}
}
if (window.XMLHttpRequest)
{
xhr = new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
xhr.open( method, fichier, false);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.send(data);
if (document.getElementById)
{
document.getElementById(div).innerHTML=xhr.responseText;
}
else
{
if (document.layers)
{
document.div.innerHTML=xhr.responseText;
}
else
{
document.all.div.innerHTML=xhr.responseText;
}
}
}

Code de la page formulaire php :
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
 
<?
if(isset($_POST['login']) && isset($_POST['password']))
{
...
include('horloge.php');
...
}
else
{
...
<form id="formulaire1" name="formulaire1" method="post" action="javascript:post_get('formulaire.php', 'general', 'POST', 'formulaire1');" style="margin:0px; padding:0px;">
...
</form>
...
}
?>

Code de la page horloge.php :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<script language="javascript" type="text/javascript" src="fonctions/horloge.js" ></script>
<table width="100%" height="40" border="0" cellspacing="0" cellpadding="0" background="images/structure/barre_haute.png">
  <tr>
    <td id="td_header">&nbsp;</td>
    <td id="horloge" width="100" style="color:#FFFFFF; font-size:18px; font-weight:bold;">&nbsp;</td>
  </tr>
</table>
Code de la page horloge.js :
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
function horloge(idw)
{
var idvalue=idw;
var today=new Date();
var heuresimple="";
h = today.getHours();
m = today.getMinutes();
s = today.getSeconds();
        if(h<10)
   { h = '0'+h; }
        if(m<10)
   { m = '0'+m; }
        if(s<10)
   { s = '0'+s; }
heuresimple = ''+h+' : '+m+' : '+s+'';
document.getElementById(idvalue).innerHTML = heuresimple;
setTimeout('horloge(\'horloge\')',1000);
}
setTimeout('horloge(\'horloge\')',10);
Donc si quelqu'un aurai une suggestion a mon problème ca serai bien car pour le moment j'ai rien trouvé sur google qui pourrai m'aider.