Javascript non pris en compte sur serveur

Signaler
Messages postés
11
Date d'inscription
mardi 11 novembre 2008
Statut
Membre
Dernière intervention
30 janvier 2009
-
Messages postés
11
Date d'inscription
mardi 11 novembre 2008
Statut
Membre
Dernière intervention
30 janvier 2009
-
bonjour,
j'ai un gros pb avec un script php qui fait appel a un javascript.
en local avec wamp cela fonctionne sans pb, mais pas du tout sur le server de l'hebergeur.
j'ai essaye de declarer le javascript dans le head , le body, mais rien y fait.
cela vient il du .js ou de mon php?
de plus, sous FF les 2 autres images et le menu sont en dessous de france.png au lieu d'etre a droite.
la
n'est pas prise en compte.
merci de m'aider car sinon mon appli ne peut etre mise en ligne.

<html>
<title>Observation en temps reel</title>
<head>
<script= "text/css"></script>
<script type="text/javascript" language="JavaScript" src="bulle.js"></script>


</head>

 

     

 [../ Retour aux observations]

 [../writesingle.php Ajouter une observation]

 [../inscription.php Pas encore inscrit?]

http://m.meteox.fr/images.aspx?jaar=-3&voor=&soort=loop3uur256&c=fr&n="width="200" height="200" title="Radar des précipitations">
http://www.meteosuisse.ch/web/fr/meteo/temps_actuel/image_satellite.Par.0004.DownloadFile.ext.tmp/animation.gif" width ="200" height="200" title="Animation satellite">




<?php
$datej=date("d-m-y");
$heure=date("h");
$min=date("i");
echo"
Date : ".$datej."
Heure : ".$heure."h".$min."
";
//header('Content-type: image/png');


$point=imagecreatefrompng("point.png");
$carte=imagecreatefrompng("france.png");
    $minlong =  -5.1;
    $maxlong =  8.2;
    $minlat =  42.4;
    $maxlat =  51.1;


$largeur = 640;
$hauteur = 640;


 //Taille des marges, nécessaire pour que les noms de ville ne soient pas coupés par les bords.
$margex = 20; //px
$margey = 20; //px


$link = mysql_connect("localhost","root","") or die('Connexion impossible.');
mysql_select_db("rsseditor") or die (mysql_error());


$result mysql_query('SELECT *  FROM rsseditor_news WHERE valide 1 order by date asc') or die ('Erreur : '.mysql_error() );


 


while ($arr = mysql_fetch_array($result))
{




  //Converti lat/long en position sur l'image
$x = $margex + ($arr['longitude'] - $minlong) / ($maxlong - $minlong) * ($largeur - $margex * 2);
$y = $margey + (1-($arr['latitude'] - $minlat) / ($maxlat - $minlat)) * ($hauteur - $margey * 2);
$description = addslashes($arr['description']);
$title = addslashes($arr['title']);
$cp = addslashes($arr['cp']);
$date= addslashes($arr['date']);




echo "
$date
$title : $cp
$description ','white',event)" onmouseout="masquer_bulle()">
" ;
}
mysql_close();
  
?>

</html>







www.infobarquee.c.la

8 réponses

Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
bonjour,

>>j'ai un gros pb avec un script php qui fait appel a un javascript.
oulah... non, non ( pas l'impératrice donc )  le php et le javascript ne communiquent
absolument pas !
le php sur le serveur crée du texte, qu'il envoie vers le micro, le html, le
javascript : il ne connait pas du tout, il ne sait pas ce que c'est  ;o)
quand ce texte arrive sur le client, sur le micro, le navigateur affiche
le html et exécute le javascript, le php ? il ne sait même pas ce que c'est
non plus

>>en local avec wamp cela fonctionne sans pb, mais pas du tout sur le server de l'hebergeur.
ah ?
généralement, c'est un simple souci d'adresse
mais, par exemple, en local, généralement ( oui, je sais que généralement c'est
stupide de généraliser ) les majuscules/minuscules importent peu
si tu es sous windows, je que je suppute ( mais sans l'être )
sur le serveur, je suppute ( toujours sans 'être ) que c'est unix/linux...
et là ! c'est pas pareil
.../REPERTOIRE/PAGE.HTM ce n'est pas = ../repertoire/page.htm

Cordialement

          [mon Site] [M'écrire] Bul         
Messages postés
11
Date d'inscription
mardi 11 novembre 2008
Statut
Membre
Dernière intervention
30 janvier 2009

merci bul, mais je le savais deja.
c'est une maniere de faire au plus court pour exposer mon pb.
ma page s'affiche sans pb sur le server unix de l'hebergeur avec les points bien positionnes aussi sur la carte.
le HIC c'est que mon infobulle ne s'affiche pas du tout sur le server alors quand local (oui wamp avec windows) tout fonctionne.
mon bulle.js est bien present dans le rep du script php et est bien en minuscules comme dans le code au dessus aussi.
ma question est pourquoi le javascript ne se charge pas a partir du  server?
je ne vois pas d'erreur dans mon code pourtant.
a moins que cela ne vienne du bulle.js mais a ce moment la sur mon local j'aurais aussi une erreur (windows ou unix).
je seche carrement et je suis pas le seul apparemment.
merci d'avance
www.infobarquee.c.la
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
>mais je le savais deja
aller ?
>>une maniere de faire au plus court
oui..  mais qui ne correspond à aucune réalité
donc, dans un 1er temps, il faut bien rectifier, mettre les choses à plat...
        pour tenter d'aider, sinon on n'arrive à rien
        comment pouvais-je deviner que tu savais ? que tu avais percuté ?

>le HIC c'est que mon infobulle ne s'affiche pas du tout sur le server
>>alors quand local (oui wamp avec windows) tout fonctionne.
ben oui.. mais faut être précis dans ce qu'on dit... quand on connait !
rien ne s'affiche sur un serveur  !!!
c'est toujours chez le client, en local, que cela se passe
donc... ta pahrase, strictement, ne veut rien dire ( ne prends pas ça mal ! )
et alors, comme tu connais, tu vas pouvoir nous mettre la page html résultante
( EN FIN UN EXTRAIT !!!! UNIQUEMENT LE NECESSAIRE
  PAS TOUT, PAS 256895 LIGNES !!!! SINON CA DECOURAGE ET
  PERSO : J'ABANDONNE DANS CE CAS )

[mon Site][M'écrire]Bul
Messages postés
11
Date d'inscription
mardi 11 novembre 2008
Statut
Membre
Dernière intervention
30 janvier 2009

merci du coup de main bul,
je suis pas trop termes techniques aussi.
mais ca ne m'empeche pas de faire des scripts php.
pour comprendre deja avec un visu voici le lien de la page :
http://stationmeteo.lescigales.org/forum/carte/

et voici ce qu'affiche le html, il n'y a pas des milliers de lignes car j'ai juste rentre une seule obs pour tester.
<html>
<title>Observation en temps reel</title>
<head>
<script type= "text/javascript" language="JavaScript" src="bulle.js"></script>

</head>

 

     

    [../ Retour aux observations]

    [../writesingle.php Ajouter une observation]

    [../inscription.php Pas encore inscrit?]




Date : 30-01-09
Heure : 01h59

2009-01-29 01:01:30
Mesquer : 44420
bruine toute la journee
vent SE force 4km/h
pluie 8.8mmm
humidite : 95%
tactu : 7.8C ','white',event)" onmouseout ="masquer_bulle()">

</html>

le doctype n'est pas mis mais ca gene en rien.
merci du coup de main.
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
remplace ton appel à la fonction afficher_bulle par un alert

Date :
30-01-09
Heure : 01h59

2009-01-29
01:01:30
Mesquer : 44420
bruine toute la journee
vent SE force 4km/h
pluie 8.8mmm
humidite : 95%
tactu : 7.8C ')"

>>> une erreur de syntaxe !
avec FF, par exemple :
Erreur : unterminated string literal Ligne : 1, Colonne : 6
Code Source : alert('2009-01-29 01:01:30
Mesquer : 44420
bruine toute la journee

par contre : onmouseover="alert('2009-01-29 01:01:30
Mesquer : 44420
bruine toute la journee vent SE force 4km/h pluie 8.8mmm humidite : 95% tactu : 7.8C ')"

là, ça baigne....

Navigateurs |Quelques Expplications |----
Chrome
, contrôler page actuelle / Options pour développeurs
/ Console Javascript, ----
FireFox
, Outils / Console d'erreurs
et mieux : télécharger mon Site][M'écrire]Bul
Messages postés
11
Date d'inscription
mardi 11 novembre 2008
Statut
Membre
Dernière intervention
30 janvier 2009

merci mais ca ne change rien du tout.
je viens d'essayer avec un autre script javascript incorpore au fichier php drectement dans le head et rien a faire.
l'erreur pour unix doit se situer la dedans mais ou????
echo "
$date
$title :
$cp
$description ','white',event)"
onmouseout="masquer_bulle()">
" ;

en retirant les \ ca provoque une erreur, donc c'est pas ca.
onmouseover fait appel a afficher_bulle et onmouseout a masquer_bulle.
je mets le javascript au cas ou (merci a mattho pour ce boulot)

//Définition de variables en fonction du navigateur
var ie = (document.all)? true:false;
var ns4 = (document.layers)? true:false;
var ns6 = (document.getElementById)? true:false;

//Incrustation du div "bulle" (display: none = non affiché)
//Vous pouvez librement modifier le style de bordure de la bulle
if ((ns6) || (ie)) {
      document.write('

');
} else if (ns4) {
      document.write('<layer id="bulle" top=0 left=0></layer>');
}

if(ns6) {
    var bulle = document.getElementById('bulle');
}
else if(ie) {
    var bulle = document.all['bulle'];
}
else {
    var bulle = document.layers['bulle'];
}

var bulleStyle = bulle.style;

//Fonction d'affichage de la bulle
function afficher_bulle(texte, couleur, event) {

    //Lignes utiles si vous imbriquez des éléments devant supporter des bulles
    if(ie) {
        window.event.cancelBubble = true;
    }
    else {
        event.stopPropagation();
    }
   
    bulle.innerHTML = texte;
    bulleStyle.backgroundColor = couleur;
   
    //On suit les mouvements de la souris
    if(ie) {
        bulle_mouseMove();
    }
    else {
        bulle_mouseMove(Event);
    }

    document.onmousemove = bulle_mouseMove;
    bulleStyle.display = 'block';
   
}

//Fonction de positionnement de la bulle en fonction des mouvements du curseur
function bulle_mouseMove(e) {

    if(ie) {
        //Prend en compte le scroll de la page
        if(document.documentElement.clientWidth>0) {
            bulle_x = event.x + document.documentElement.scrollLeft;
            bulle_y = event.y + document.documentElement.scrollTop;
        }
        else {
            bulle_x = event.x + document.body.scrollLeft;
            bulle_y = event.y + document.body.scrollTop;
        }
    }
    else {

        bulle_x = e.pageX;
        bulle_y = e.pageY;
    }
   
    if(!isNaN(bulle_x) && !isNaN(bulle_y)) {
        bulle_x += 5;
        bulle_y -= 25;

        bulleStyle.left = bulle_x + 'px';
        bulleStyle.top = bulle_y + 'px';
    }
}

//Fonction qui fait disparaître la bulle
function masquer_bulle() {
    document.onmousemove = null;
    bulleStyle.display = 'none';
   
}

//Fonctions qui augmente le z-index (indice de profondeur) de la bulle
function up_zindex_bulle() {
    bulleStyle.zIndex = 200;
}
//Réinitialise le z-index
function raz_zindex_bulle() {
    bulleStyle.zIndex = '';
}

A l'aiiiddddeeeee, je vais me faire bonne soeur si ca continue
merci pour votre temps, il doit y avoir une petite betise qq part mais ou?
a force d'avoir le nez dessus on ne voit plus rien.

www.infobarquee.c.la
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
me citerais-je ?
 tu vas pouvoir nous mettre la page html résultante
( EN FIN UN EXTRAIT !!!! UNIQUEMENT LE NECESSAIRE
  PAS TOUT, PAS 256895 LIGNES !!!! SINON CA DECOURAGE
  j'ajoute quitte à faire une version "test" )
[mon Site][M'écrire]Bul
Messages postés
11
Date d'inscription
mardi 11 novembre 2008
Statut
Membre
Dernière intervention
30 janvier 2009

la meme chose que tout a l'heure en mettant alert a la place de afficher_bulle
maitenant avec le javascript incorpore a la page php, le resultat est le meme, pas d'infobulle.
vraiment stressant ce truc.
merci encore

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html>
<title>Observation en temps reel</title>
<head>

<style type= "text/css">
.infobulle{
position: absolute;   
visibility : hidden;
border: 1px solid Black;
padding: 10px;
font-family: Verdana, Arial;
font-size: 10px;
background-color: #FFFFCC;
}
</style>
<script language="JavaScript" type="text/javascript">
                <!--
                function GetId(id)
                {
                return document.getElementById(id);
                }
                var i=false; // La variable i nous dit si la bulle est visible ou non
               
                function move(e) {
                  if(i) {  // Si la bulle est visible, on calcul en temps reel sa position ideale
                    if (navigator.appName!="Microsoft Internet Explorer") { // Si on est pas sous IE
                    GetId("curseur").style.left=e.pageX + 5+"px";
                    GetId("curseur").style.top=e.pageY + 10+"px";
                    }
                    else { // Modif proposé par TeDeum, merci à lui
                    if(document.documentElement.clientWidth>0) {
                        GetId("curseur").style.left=20+event.x+document.documentElement.scrollLeft+"px";
                        GetId("curseur").style.top=10+event.y+document.documentElement.scrollTop+"px";
                    }
                    else {
                        GetId("curseur").style.left=20+event.x+document.body.scrollLeft+"px";
                        GetId("curseur").style.top=10+event.y+document.body.scrollTop+"px";
                    }
                    }
                  }
                }
               
                function montre(text) {
                  if(i==false) {
                  GetId("curseur").style.visibility="visible"; // Si il est cacher (la verif n'est qu'une securité) on le rend visible.
                  GetId("curseur").innerHTML = text; // Cette fonction est a améliorer, il parait qu'elle n'est pas valide (mais elle marche)
                  i=true;
                  }
                }
                function cache() {
                if(i==true) {
                GetId("curseur").style.visibility="hidden"; // Si la bulle etais visible on la cache
                i=false;
                }
                }
                document.onmousemove=move; // des que la souris bouge, on appelle la fonction move pour mettre a jour la position de la bulle.
                //-->
                </script>

</head>

 

     

    [../ Retour aux observations]

    [../writesingle.php Ajouter une observation]

    [../inscription.php Pas encore inscrit?]




Date : 30-01-09
Heure : 03h25

2009-01-29 01:01:30
Mesquer : 44420
bruine toute la journee
vent SE force 4km/h
pluie 8.8mmm
humidite : 95%
tactu : 7.8C ','white',event)" OnMouseOut ="cache()">

</html>