Un probleme de syntaxe bizarre?

Eléphant du PHP | 122 Messages

13 août 2005, 18:57

Bonjour, j'ai ce code sur une de mes pages et il y a un bug a la ligne 54 car 2: objet requis. Quelqu'un a une idée? Ca doit vraiment être tout bête!!!

Code : Tout sélectionner

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Document sans titre</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="CSS/prono-football_general.css" rel="stylesheet" type="text/css"> <script> function ouvre2(tit,txt){ parent.leftFrame.location.href=tit; parent.rightFrame.location.href=txt; } var dom = (document.getElementById) ? true : false; var ns5 = ((navigator.userAgent.indexOf("Gecko")>-1) && dom) ? true: false; var ie5 = ((navigator.userAgent.indexOf("MSIE")>-1) && dom) ? true : false; var ns4 = (document.layers && !dom) ? true : false; var ie4 = (document.all && !dom) ? true : false; var nodyn = (!ns5 && !ns4 && !ie4 && !ie5) ? true : false; var origWidth, origHeight; if (ns4) { origWidth = window.innerWidth; origHeight = window.innerHeight; window.onresize = function() { if (window.innerWidth != origWidth || window.innerHeight != origHeight) history.go(0); } } if (nodyn) { event = "nope" } var tipFollowMouse= true; var tipWidth= 160; var offX= 20; var offY= 12; var tipFontFamily= "Times New Roman"; var tipFontSize= "12pt"; var tipFontColor= "#00009B"; var tipBgColor= "#FFE8C6"; var tipBorderColor= "#FFE8C6"; var tipBorderWidth= 1; var tipBorderStyle= "ridge"; var tipPadding= 4; var messages = new Array(); messages[0] = new Array('images/melessej.jpg','Jérôme MELESSE en pleine action de conseil',"#FFE8C6"); messages[1] = new Array('images/ponzanesir.jpg','Roberto PONZANESI reçoit une demande urgente',"#FFE8C6"); if (document.images) { var theImgs = new Array(); for (var i=0; i<messages.length; i++) { theImgs[i] = new Image(); theImgs[i].src = messages[i][0]; } } var startStr = '<table width="' + tipWidth + '"><tr><td align="center" width="100%"><img src="'; var midStr = '" border="0"></td></tr><tr><td valign="top">'; var endStr = '</td></tr></table>'; var tooltip; var tipcss; function initTip() { if (nodyn) return; tooltip = (ns4)? document.tipDiv.document: (ie4)? document.all['tipDiv']: (ie5||ns5)? document.getElementById('tipDiv'): null; tipcss = (ns4)? document.tipDiv: tooltip.style; if (ie4||ie5||ns5) { tipcss.width = tipWidth+"px"; tipcss.fontFamily = tipFontFamily; tipcss.fontSize = tipFontSize; tipcss.color = tipFontColor; tipcss.backgroundColor = tipBgColor; tipcss.borderColor = tipBorderColor; tipcss.borderWidth = tipBorderWidth+"px"; tipcss.padding = tipPadding+"px"; tipcss.borderStyle = tipBorderStyle; } if (tooltip&&tipFollowMouse) { if (ns4) document.captureEvents(Event.MOUSEMOVE); document.onmousemove = trackMouse; } } window.onload = initTip; var t1,t2; var tipOn = false; function doTooltip(evt,num) { if (!tooltip) return; if (t1) clearTimeout(t1); if (t2) clearTimeout(t2); tipOn = true; if (messages[num][2]) var curBgColor = messages[num][2]; else curBgColor = tipBgColor; if (messages[num][3]) var curFontColor = messages[num][3]; else curFontColor = tipFontColor; if (ns4) { var tip = '<table bgcolor="' + tipBorderColor + '" width="' + tipWidth + '" cellspacing="0" cellpadding="' + tipBorderWidth + '" border="0"><tr><td><table bgcolor="' + curBgColor + '" width="100%" cellspacing="0" cellpadding="' + tipPadding + '" border="0"><tr><td>'+ startStr + messages[num][0] + midStr + '<span style="font-family:' + tipFontFamily + '; font-size:' + tipFontSize + '; color:' + curFontColor + ';">' + messages[num][1] + '</span>' + endStr + '</td></tr></table></td></tr></table>'; tooltip.write(tip); tooltip.close(); } else if (ie4||ie5||ns5) { var tip = startStr + messages[num][0] + midStr + '<span style="font-family:' + tipFontFamily + '; font-size:' + tipFontSize + '; color:' + curFontColor + ';">' + messages[num][1] + '</span>' + endStr; tipcss.backgroundColor = curBgColor; tooltip.innerHTML = tip; } if (!tipFollowMouse) positionTip(evt); else t1=setTimeout("tipcss.visibility='visible'",100); } var mouseX, mouseY; function trackMouse(evt) { mouseX = (ns4||ns5)? evt.pageX: window.event.clientX + document.body.scrollLeft; mouseY = (ns4||ns5)? evt.pageY: window.event.clientY + document.body.scrollTop; if (tipOn) positionTip(evt); } function positionTip(evt) { if (!tipFollowMouse) { mouseX = (ns4||ns5)? evt.pageX: window.event.clientX + document.body.scrollLeft; mouseY = (ns4||ns5)? evt.pageY: window.event.clientY + document.body.scrollTop; } var tpWd = (ns4)? tooltip.width: (ie4||ie5)? tooltip.clientWidth: tooltip.offsetWidth; var tpHt = (ns4)? tooltip.height: (ie4||ie5)? tooltip.clientHeight: tooltip.offsetHeight; var winWd = (ns4||ns5)? window.innerWidth-20+window.pageXOffset: document.body.clientWidth+document.body.scrollLeft; var winHt = (ns4||ns5)? window.innerHeight-20+window.pageYOffset: document.body.clientHeight+document.body.scrollTop; if ((mouseX+offX+tpWd)>winWd) tipcss.left = (ns4)? mouseX-(tpWd+offX): mouseX-(tpWd+offX)+"px"; else tipcss.left = (ns4)? mouseX+offX: mouseX+offX+"px"; if ((mouseY+offY+tpHt)>winHt) tipcss.top = (ns4)? winHt-(tpHt+offY): winHt-(tpHt+offY)+"px"; else tipcss.top = (ns4)? mouseY+offY: mouseY+offY+"px"; if (!tipFollowMouse) t1=setTimeout("tipcss.visibility='visible'",100); } function hideTip() { if (!tooltip) return; t2=setTimeout("tipcss.visibility='hidden'",100); tipOn = false; } </script> <style type="text/css"><!-- .Style1 {font-weight: bold} table { color: #000000; } td { font-family: "Times New Roman", Times, serif; font-size: 9px; background-color: #33CC33; } th { font-family: Arial, Helvetica, sans-serif; background-color: #33CC33; } --> </style> </head> <body> <table border="0"> <tr> <td valign="top"> <table border="0"> <tr> <td ><div align="center">Classement</div></td> <td><div align="center">Pseudo</div></td> <td><div align="center">Points</div></td> </tr> <tr> <td> 1 </td> <td> <a href="frame_gauche_sans_competition.php?utilisateur=40" target="leftFrame" onmouseover="doTooltip(event,0)" onmouseout="hideTip()" >miki</a> </td> <td> 700 </td> </tr> <tr> <td> 2 </td> <td> <a href="frame_gauche_sans_competition.php?utilisateur=55" target="leftFrame" onmouseover="doTooltip(event,0)" onmouseout="hideTip()" >max</a> </td> <td> 680 </td> </tr> <tr> <td> 3 </td> <td> <a href="frame_gauche_sans_competition.php?utilisateur=32" target="leftFrame" onmouseover="doTooltip(event,0)" onmouseout="hideTip()" >salym75020</a> </td> <td> 610 </td> </tr> <tr> <td> 4 </td> <td> <a href="frame_gauche_sans_competition.php?utilisateur=44" target="leftFrame" onmouseover="doTooltip(event,0)" onmouseout="hideTip()" >vivine</a> </td> <td> 530 </td> </tr> <tr> <td> 5 </td> <td> <a href="frame_gauche_sans_competition.php?utilisateur=24" target="leftFrame" onmouseover="doTooltip(event,0)" onmouseout="hideTip()" >enfandgilo</a> </td> <td> 500 </td> </tr> <tr> <td colspan="3">...</td> </tr> <tr> <td> <strong> 33 </strong> </td> <td> <strong> <a href="frame_gauche_sans_competition.php?utilisateur=7" target="leftFrame" onmouseover="doTooltip(event,0)" onmouseout="hideTip()" >compte_test</a> </strong> </td> <td> <strong> 0 </strong> </td> </tr> </table></td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td bgcolor background="images/pelouse2.jpg">&nbsp;</td> <td>Vous êtes inscrits aux compétitions suivantes: <br> Ligue 1<br> Liga<br> Calcio<br> Premier League<br> Bundesliga<p align="center">Vous pouvez modifier les comp&eacute;titions auxquelles vous &ecirc;tes inscrits: <input name="" type="button" onClick="parent.frames['leftFrame'].window.location='modification_utilisateur.php'" value="Modifier son profil"></p> </td> </tr> <tr> <td><a target="_blank" href="classement_pronofootball_general.php">Classement complet</a></td> </tr> </table> </body> </html>

Mammouth du PHP | 19672 Messages

13 août 2005, 19:17

:shock: Tu t'imagine qu'on va se farcir 200 lignes de code d'abord pour trouver la ligne 54 et ensuite sans vraiment savoir quelle est la nature du problème :?:
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 122 Messages

13 août 2005, 19:25

Voilà la ligne qui pose problème:

Code : Tout sélectionner

tooltip = (ns4)? document.tipDiv.document: (ie4)? document.all['tipDiv']: (ie5||ns5)? document.getElementById('tipDiv'): null;

cette ligne est dans cette fonction:

...

Code : Tout sélectionner

var tooltip; var tipcss; function initTip() { if (nodyn) return; tooltip = (ns4)? document.tipDiv.document: (ie4)? document.all['tipDiv']: (ie5||ns5)? document.getElementById('tipDiv'): null; tipcss = (ns4)? document.tipDiv: tooltip.style; if (ie4||ie5||ns5) { tipcss.width = tipWidth+"px"; tipcss.fontFamily = tipFontFamily; tipcss.fontSize = tipFontSize; tipcss.color = tipFontColor; tipcss.backgroundColor = tipBgColor; tipcss.borderColor = tipBorderColor; tipcss.borderWidth = tipBorderWidth+"px"; tipcss.padding = tipPadding+"px"; tipcss.borderStyle = tipBorderStyle; } if (tooltip&&tipFollowMouse) { if (ns4) document.captureEvents(Event.MOUSEMOVE); document.onmousemove = trackMouse; } }
et voilà le message d'erreur: '
Ligne: 54
Car: 2
Erreur: objet requis
Code 2
'

Je sais pas quoi dire de plus comme détail

Au fait bonjour Cyrano, content de te relire...

Mammouth du PHP | 19672 Messages

13 août 2005, 20:14

Le problème a l'air d'être dans la ligne qui précède. Essaye de faire afficher la variable tooltip entre les deux avec un alert() : tu vas obtenir un boite marquée : "Null" : en clair, aucune valeur n'est attribuée à cette variable.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 122 Messages

15 août 2005, 18:36

effectivement. Bon ne nous le cachons pas, la vraie question est: comment faire pour que ca fonctionne. En fait, c'est censé afficher une image en popup lorsque la souris passe dessus. En fait, ca marche sur un autre de mes sites, mais je sais pas ou j'ai peché ce code.

La, je fais exactement la meme chose et paf: erreur. Comprend pas. Un peu d'aide?

Eléphant du PHP | 122 Messages

16 août 2005, 16:03

personne ne voit??? S'il vous plait...