Problème pour lancer une fonction Javascript

neo1602brice Messages postés 77 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 10 juillet 2009 - 10 mars 2008 à 20:24
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 - 13 mars 2008 à 19:55
Bonjour à tous,

Je suis actuellement en stage et je dois faire un site pour un hôtel.
Evidémment le site doit pouvoir être lu dans plusieurs langues ...

Jusque là tout va bien !

Donc mon problème se trouve au niveau de ma page réservation quand on
clique sur une image pour afficher le calendrier (en javascript) et
lorsque je suis en langue=fr tout passe niquel mais dès que je suis en
langue=en, aucune de mes fonctions javascript ne se lance.... Avez vous
une petite solution à ce problème.. Cela fait depuis hier midi que je
suis sur le problème et je ne trouve pas de solution.

Merci à tous d'avance!

10 réponses

PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
10 mars 2008 à 22:39
Bonjour,
perso je ne connais pas l'attribut
langue

language pour les balises script
<script
type="text/javascript" language="javascript"></script>

lang pour les élément s HTML


mais
point de langue ...
le problème serait-il ailleurs ?
;O)
0
neo1602brice Messages postés 77 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 10 juillet 2009
11 mars 2008 à 00:00
lol non désolé j'ai oublié de présicer que langue était ma variable pour passer de l'anglais au français et vice versa... car en fait je fais appel à un fichier fr.php ou en.php suivant la langue pour m'afficher mes contenu dans la langue choisi
Donc je vais essaye de mieux expliquer:
Lorsque je navigue sur le site en français toutes mes fonction javascript se lance correctement comme par expemple l'action du clic pour lancer un calendrier
et lorsque je navigue sur le site en anglais rien ne fonctionne alors ques mes fonctions javascript n'utilise pas ma variable langue...
Si besoins dites le moi je mettrai un copy/paste de mon fichier en question!
0
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
11 mars 2008 à 06:48
Bonjour,
<table bgcolor="#e6effe" border="0" cellpadding="5" cellspacing="0" width="100%">----, Si besoins dites le moi je mettrai un
copy/paste de mon fichier en
question!</td>
</td></tr></tbody></table>je pense
que sans plus d'informations cela va être obligatoire, ou mieux une adresse ou
l'on pourrait le voir...
;O)
0
neo1602brice Messages postés 77 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 10 juillet 2009
11 mars 2008 à 12:49
Voilà vous verrez vi-dessous mon fichier reservation.php
(je mets en rouge les parties du code qui pose problème)
Donc comme j'ai dis c'est uniquement quand je suis Français/anglais
en français tout marche niquel, en anglais rien !!!!

<?php
session_start();
include ("haut.php");
include ("meta.php");
include ("send_email.php");

$datemois= 1;
$dateAnnee=date('Y');
$dateAnneeLimite=$dateAnnee+10;
if (!empty($alert))
{
    echo "<script language='javascript'>alert('" . $alert . "')</script>";
}

$langue=$_GET['langue'];
include("loc/" . $langue . ".lang.php");
echo " <center>~~~~~  ". _RESERVATIONS . "  ~~~~~</center> ";
echo "

";
echo "<center>";
echo "\";
echo '<form name =\"form1\" action=\"reservation.php?langue=' . $langue . '\" onsubmit=\"return validation(this);\" method=\"POST\">';
echo \"\" . _ASaisir . \"

\";
echo \"<table>\";
echo \"----
". _Email . " * :, , \";
echo \"----
, \";
echo \"----
" ._Nom . " * :, , \";
echo \"----
, \";
echo \"----
". _Prenom . " * :, , \";
echo \"----
, \";
echo \"----
". _DateArrive . " * :, , , \";
echo \"----
, \";
echo \"----
". _DateDepart . " * :, , , \";
echo \"----
, \";
echo \"----
". _NombreNuits . " * :, , , \";

echo \"----
, \";
echo \"----
". _NombrePersonnes . " * :, , \";
echo \"----
, \";
echo \"----
". _NumeroCarte . " * :, , \";
echo \"----
, \";
echo \"----
". _DateExpiration . " * :, ". _Mois ." : <select name='moisExpire' size=1 value='1'>";
while($datemois <13)
{
    if($datemois<10)
    {
        echo "<option>0".$datemois;
    }
    else
    {
        echo "<option>".$datemois;
    }    
    echo "</option>\n";
    $datemois++;
}
echo ", </select>". _Annee . " : <select name='anneeExpire' size=1 value='" . $dateAnnee ."'>";
while($dateAnnee <$dateAnneeLimite+1)
{
    echo "<option>".$dateAnnee;
    echo "</option>\n";
    $dateAnnee++;
}
echo "</select>";
echo "----,
</td>\";
echo \"----
" . _Commentaires ." :, , \";
echo \"----
, \";
echo "
\";
echo \"----
" . _Cle . " :, </td>". _ModifierImage .", \";
echo \"----
, \";
echo \"----
" . _SaisirCle . " * :, , \";
echo "</td>
";
echo "<center>";
echo "<tr><td>
</td></tr>";
echo "
";
echo "<form name='formname' action='myscript.php' method='post'>";
echo "</form>";

?>

<script language="JavaScript">
    function calendar(num) {
        if(num==1) {
            var cal1 = new calendar1(document.forms['form1'].elements['arrive']);
            cal1.year_scroll = true;
            cal1.time_comp = false;
            cal1.popup();
        }
        else if(num==2 && document.forms['form1'].arrive.value!="") {
            var cal2 = new calendar1(document.forms['form1'].elements['depart']);
            cal2.year_scroll = false;
            cal2.time_comp = false;
            cal2.popup();            
        }
        else {
            alert("Vous devez d'abord mettre une date d'arrivée");
        }
    }
    
    function calcul() {
        var debutA=document.forms['form1'].arrive.value;
        var finA=document.forms['form1'].depart.value;
        if(debutA!="" && finA!=""){
            var debut=debutA.split("-");
            var fin=finA.split("-");
            var dateDeb=new Date(debut[2],debut[1],debut[0]);
            var finDeb=new Date(fin[2],fin[1],fin[0]);
            var un_jour=1000*60*60*24;
            
            var difference=(Math.ceil((finDeb.getTime()-dateDeb.getTime())/(un_jour)));
            document.getElementById("nbrsnuits").value=difference
            //return difference;
        }
        else {
            alert("<?php echo _CalculImpossible;?>");
        }
    }
    
</script>

<script language="JavaScript">
    function fonction_formulaire22_1(num) {
        var img = eval("document.getElementById('id_cle_" + num + "')");
        var D = new Date();
        img.src = "anti_spam.php?nombre=5&date=" + D.getTime();
    }
 
    function validation(obj) {
        var mail=obj.mail.value;
        var nom=obj.nom.value;
        var prenom=obj.prenom.value;
        var arrive=obj.arrive.value;
        var depart=obj.depart.value;
        var nbnuit=obj.nbnuit.value;
        var nbpers=obj.nbpers.value;
        var moisDateExpire=obj.moisExpire.value;
        var anneeDateExpire=obj.anneeExpire.value;
        var num=obj.num.value;
        var idcle=obj.idcle.value;
        var date=new Date();
        var Mmail="";
        var Mnom="";
        var Mprenom="";
        var Marrive="";
        var Mdepart="";
        var Mnuit="";
        var Mpers="";
        var Mnum="";
        var Mdate="";
        var Mcle="";
        var message="";
        if(mail.length<1) {
          Mmail="<?php echo _Email ?>";
        }
        if(nom.length<1) {
          Mnom="<?php echo _Nom ?>";
        }
        if(prenom.length<1) {
          Mprenom="<?php echo _Prenom ?>";
        }
        if(arrive.length<1) {
          Marrive="<?php echo _DateArrive ?>";
        }
        if(depart.length<1) {
          Mdepart="<?php echo _DateDepart ?>";
        }
        if(nbnuit.length<1) {
          Mnuit="<?php echo _NombreNuits ?>";
        }
        if(nbpers.length<1) {
          Mpers="<?php echo _NombrePersonnes ?>";
        }
        if(num.length<1) {
          Mnum="<?php echo _NumeroCarte ?>";
        }
        if(idcle.length<1) {
          Mcle="<?php echo _DateExpiration ?>";
        }
        if(Mmail!="") {
            message=Mmail+"\n";
        }
        if(Mnom!="") {
            message=message+Mnom+"\n";
        }
        if(Mprenom!="") {
            message=message+Mprenom+"\n";
        }
        if(Marrive!="") {
            message=message+Marrive+"\n";
        }
        if(Mdepart!="") {
            message=message+Mdepart+"\n";
        }
        if(Mnuit!="") {
            message=message+Mnuit+"\n";
        }
        if(Mpers!="") {
            message=message+Mpers+"\n";
        }
        if(Mnum!="") {
            message=message+Mnum+"\n";
        }
        if(Mdate!="") {
            message=message+Mdate+"\n";
        }
        if(Mcle!="") {
            message=message+Mcle+"\n";
        }
        if(anneeDateExpire=date.getFullYear()){
            if((parseInt(moisDateExpire)-1)<date.getMonth()) {
                alert("<?php echo _CarteDepasse;?>");
                return false;
            }
            
        }
        if((Mmail!="") || (Mnom!="") || (Mprenom!="") || (Marrive!="") || (Mdepart!="") || (Mnuit!="") || (Mpers!="") || (Mnum!="") || (Mcle!="")) {
            alert("<?php echo _InfoManquante;?>:\n"+message);
            return false
        }
        if(num.length!=16) {
            return false;
        }
        else {
            var tab=num.split("");
            var cpt=0;
            var tot=0;
            for (var i=0;i<=14;i+=2) {
                cpt=parseInt(tab[i]*2);
                if(cpt>10){
                    cpt=parseInt(cpt)-9;
                }
                tot=tot+parseInt(cpt);
            }
            cpt=0;
            for (var i=1;i<=15;i+=2) {
                tot=tot+parseInt(tab[i]);                
            }            
            if(tot%10==0){
                return true;
            }
            else {
                alert("<?php echo _CarteInvalide;?>");
                return false;
            }
        }
    }
</script>

<script language="JavaScript">
// if two digit year input dates after this year considered 20 century.
var NUM_CENTYEAR = 21;
// is time input control required by default
var BUL_TIMECOMPONENT = false;
// are year scrolling buttons required by default
var BUL_YEARSCROLL = true;

var calendars = [];
var RE_NUM = /^\-?\d+$/;

function calendar1(obj_target) {

    // assigning methods
    this.gen_date = cal_gen_date1;
    this.gen_time = cal_gen_time1;
    this.gen_tsmp = cal_gen_tsmp1;
    this.prs_date = cal_prs_date1;
    this.prs_time = cal_prs_time1;
    this.prs_tsmp = cal_prs_tsmp1;
    this.popup    = cal_popup1;

    // validate input parameters
    if (!obj_target)
        return cal_error("Error calling the calendar: no target control specified");
    if (obj_target.value == null)
        return cal_error("Error calling the calendar: parameter specified is not valid target control");
    this.target = obj_target;
    this.time_comp = BUL_TIMECOMPONENT;
    this.year_scroll = BUL_YEARSCROLL;
    
    // register in global collections
    this.id = calendars.length;
    calendars[this.id] = this;
}

function cal_popup1 (str_datetime) {
    if (str_datetime) {
        this.dt_current = this.prs_tsmp(str_datetime);
    }
    else {
        this.dt_current = this.prs_tsmp(this.target.value);
        this.dt_selected = this.dt_current;
    }
    if (!this.dt_current) return;

    var obj_calwindow = window.open(
        'calendar.html?datetime=' + this.dt_current.valueOf()+ '&id=' + this.id,
        'Calendar', 'width=200,height='+(this.time_comp ? 215 : 190)+
        ',status=no,resizable=no,top=200,left=200,dependent=yes,alwaysRaised=yes'
    );
    obj_calwindow.opener = window;
    obj_calwindow.focus();
}

// timestamp generating function
function cal_gen_tsmp1 (dt_datetime) {
    return(this.gen_date(dt_datetime) + ' ' + this.gen_time(dt_datetime));
}

// date generating function
function cal_gen_date1 (dt_datetime) {
    return (
        (dt_datetime.getDate() < 10 ? '0' : '') + dt_datetime.getDate() + "-"
        + (dt_datetime.getMonth() < 9 ? '0' : '') + (dt_datetime.getMonth() + 1) + "-"
        + dt_datetime.getFullYear()
    );
}
// time generating function
function cal_gen_time1 (dt_datetime) {
    return (
        (dt_datetime.getHours() < 10 ? '0' : '') + dt_datetime.getHours() + ":"
        + (dt_datetime.getMinutes() < 10 ? '0' : '') + (dt_datetime.getMinutes()) + ":"
        + (dt_datetime.getSeconds() < 10 ? '0' : '') + (dt_datetime.getSeconds())
    );
}

// timestamp parsing function
function cal_prs_tsmp1 (str_datetime) {
    // if no parameter specified return current timestamp
    if (!str_datetime)
        return (new Date());

    // if positive integer treat as milliseconds from epoch
    if (RE_NUM.exec(str_datetime))
        return new Date(str_datetime);
        
    // else treat as date in string format
    var arr_datetime = str_datetime.split(' ');
    return this.prs_time(arr_datetime[1], this.prs_date(arr_datetime[0]));
}

// date parsing function
function cal_prs_date1 (str_date) {

    var arr_date = str_date.split('-');

    if (arr_date.length != 3) return cal_error ("Invalid date format: '" + str_date + "'.\nFormat accepted is dd-mm-yyyy.");
    if (!arr_date[0]) return cal_error ("Invalid date format: '" + str_date + "'.\nNo day of month value can be found.");
    if (!RE_NUM.exec(arr_date[0])) return cal_error ("Invalid day of month value: '" + arr_date[0] + "'.\nAllowed values are unsigned integers.");
    if (!arr_date[1]) return cal_error ("Invalid date format: '" + str_date + "'.\nNo month value can be found.");
    if (!RE_NUM.exec(arr_date[1])) return cal_error ("Invalid month value: '" + arr_date[1] + "'.\nAllowed values are unsigned integers.");
    if (!arr_date[2]) return cal_error ("Invalid date format: '" + str_date + "'.\nNo year value can be found.");
    if (!RE_NUM.exec(arr_date[2])) return cal_error ("Invalid year value: '" + arr_date[2] + "'.\nAllowed values are unsigned integers.");

    var dt_date = new Date();
    dt_date.setDate(1);

    if (arr_date[1] < 1 || arr_date[1] > 12) return cal_error ("Invalid month value: '" + arr_date[1] + "'.\nAllowed range is 01-12.");
    dt_date.setMonth(arr_date[1]-1);
    
    if (arr_date[2] < 100) arr_date[2] = Number(arr_date[2]) + (arr_date[2] < NUM_CENTYEAR ? 2099 : 2000);
    dt_date.setFullYear(arr_date[2]);

    var dt_numdays = new Date(arr_date[2], arr_date[1], 0);
    dt_date.setDate(arr_date[0]);
    if (dt_date.getMonth() != (arr_date[1]-1)) return cal_error ("Invalid day of month value: '" + arr_date[0] + "'.\nAllowed range is 01-"+dt_numdays.getDate()+".");

    return (dt_date)
}

// time parsing function
function cal_prs_time1 (str_time, dt_date) {

    if (!dt_date) return null;
    var arr_time = String(str_time ? str_time : '').split(':');

    if (!arr_time[0]) dt_date.setHours(0);
    else if (RE_NUM.exec(arr_time[0]))
        if (arr_time[0] < 24) dt_date.setHours(arr_time[0]);
        else return cal_error ("Invalid hours value: '" + arr_time[0] + "'.\nAllowed range is 00-23.");
    else return cal_error ("Invalid hours value: '" + arr_time[0] + "'.\nAllowed values are unsigned integers.");
    
    if (!arr_time[1]) dt_date.setMinutes(0);
    else if (RE_NUM.exec(arr_time[1]))
        if (arr_time[1] < 60) dt_date.setMinutes(arr_time[1]);
        else return cal_error ("Invalid minutes value: '" + arr_time[1] + "'.\nAllowed range is 00-59.");
    else return cal_error ("Invalid minutes value: '" + arr_time[1] + "'.\nAllowed values are unsigned integers.");

    if (!arr_time[2]) dt_date.setSeconds(0);
    else if (RE_NUM.exec(arr_time[2]))
        if (arr_time[2] < 60) dt_date.setSeconds(arr_time[2]);
        else return cal_error ("Invalid seconds value: '" + arr_time[2] + "'.\nAllowed range is 00-59.");
    else return cal_error ("Invalid seconds value: '" + arr_time[2] + "'.\nAllowed values are unsigned integers.");

    dt_date.setMilliseconds(0);
    return dt_date;
}

function cal_error (str_message) {
    alert (str_message);
    return null;
}
</script>
<!--msthemeseparator-->

<!--mstheme-->

</html>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
11 mars 2008 à 18:58
YO !!


avant de continuer as tu des erreurs ou autres signalées par le debbuger


The Bultez Tableau
,

----

FireFox
,
regarder la "console d'erreurs"
Outils / Console d'erreurs
et mieux,
télécharger FireBug,

----

Internet
Explorer
,
activer le deboggage : Outils/options Internet/Avancés
dans la liste,
sous "Navigation" : décocher
° Afficher une notification de chaque erreur de
script
° Désactiver le débogage de Scripts (Internet Explorer)
et mieux,
télécharger le Debogger IE,

----

K-Meleon
,
regarder la "console d'erreurs"
Outils / Console d'erreurs,

----

Opera
,
regarder la "console d'erreurs"
Outils / Avancé / Console
d'erreurs,

----

Safari
,
regarder Debug / Show JavaScript Console
modif Fichier "Support:Documents
and Settings\utilisateur
\Application DataApple
ComputerSafariPreferences.plist"
y ajouter
<key>IncludeDebugMenu</key>
----


...
;O)
0
neo1602brice Messages postés 77 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 10 juillet 2009
11 mars 2008 à 19:02
Non c'est ca le problème aucune erreur signaler, donc quand je navigue en anglais, les fonctions javascript misent en rouge ne se lance pas !!! alors que lorsque je suis en fr c'est niquel !
0
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
11 mars 2008 à 19:11
Utilises tu deux fichier.js différents suivant la langue, peut être le chemin d'accès...



;O)
0
neo1602brice Messages postés 77 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 10 juillet 2009
12 mars 2008 à 18:33
Merci à tous d'avoir essayé de chercher mais j'ai trouvé le problème, ca venait de mon fichier en.php qui vient de mon include ! car je n'avais pas déclarer ma variable _CALCULER de mon bouton!
0
neo1602brice Messages postés 77 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 10 juillet 2009
12 mars 2008 à 18:34
et non je n'utilisais pas de fichier .js, tout se trouvait dans le meme fichier merci encore à tous !
0
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
13 mars 2008 à 19:55
Bonjour,
merci à toi du retour, penses à mettre ta réponse acceptée...
Bonne continuation
;O)
0
Rejoignez-nous