Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: IE vs Firefox

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    99

    IE vs Firefox

    Salve ragazzi,
    ho un problema che non sono riuscito a trovare dopo giorni di rilettura del codice.
    Ho un file php che mi gestisce un registro presenze. Lo stesso file con firefox funziona benissimo compreso di javascript mentre in IE non funziona per niente.

    utilizzo javascript ma è molto semplice. Quali potrebbero essere la cause.

    E' urgente. grazie

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    dimmi tu come e' possibile aiutarti,
    spariamo completamente a casaccio?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    99
    ecco il codice:

    Codice PHP:
    <script language=javascript>
    //nella pagina presenza se nessun giorno viene aggiunto il tasto aggiorna è disabilitato
        function array_checkbox(object)
        {
            mio[mio.length] = object;
            var trovato = false;
            for(var i=0; i < mio.length; i++)
            {
                if (mio[i].type == "checkbox" && mio[i].checked)
                    trovato=true;
            }
            if (trovato)
                return true;
            else
                return false;
        }
        
        function attiva(form,check,text)
        {
            if (check)
            {    form.elements[text].disabled=false;
                form.elements[text].focus();
            }
            else
                form.elements[text].disabled=true;
        }
        
        //funziona che accetta solo numeri nei text
        function keyCheck(eventObj, obj)
        {
            var keyCode
            
            // Check For Browser Type
            if (document.all){
                keyCode=eventObj.keyCode
            }
            else{
                keyCode=eventObj.which
            }

            var str=obj.value

            if(keyCode==46){
                if (str.indexOf(".")>0){
                    return false
                }
            }

            if((keyCode<48 || keyCode >58) && (keyCode != 46)) // Allow only integers and decimal points
            {
                        return false;
            }
            return true;
        }

    </script>
    <?
    /* 
    --------------------------------------------------------------------------
                                ProGest - Professional Gestionale
        Copyright (C) 2006 - Michele Scarso Cannizzaro Salvatore
                                    (info@betasolution.it)
                            <[url]http://www.betasolution.it[/url]>
     --------------------------------------------------------------------------*/
     
    ?>
    <script type="text/javascript" src="supporto/calendario_presenze.js"></script>
    <?
        
    echo "<h1>Registro Presenze</h1>";
        if (isset(
    $_POST['aggiorna']))
        {
            unset(
    $_POST['aggiorna']);
            
    $data=$_POST['data_settimana'];
            
    //preparo il form per rivisualizzare le modifiche
            
    echo "<form name=f action=index.php?tipo=operai&op=pres method=post>";
            echo 
    "<input type=hidden name=data_settimana value=$data>";
            unset(
    $_POST['data_settimana']);
            echo 
    "<input type=hidden name=continua value=continua>";
            unset(
    $_POST['continua']);
            if (isset(
    $_POST['tipo'])) $tipo $_POST['tipo'];
            unset(
    $_POST['tipo']);
            echo 
    "<input type=hidden name=tipo value=vis>";
            
    $chiave $_POST['chiave'];
            unset(
    $_POST['chiave']);
            foreach(
    $chiave as $key =>$value)
                echo 
    "<input type=hidden name=chiave[".  $key ."] value=\"$value\">";
            echo 
    "</form>";
            
            
    $query "INSERT INTO registro_presenze values";
            
    $query1="DELETE FROM registro_presenze WHERE data_inizio_settimana='$data' && ";
            while (
    current($_POST))
            {    
    $codice_fiscale key($_POST);
                
    $giornata $_POST[$codice_fiscale]['giornata'];
                
    //print_r($giornata);
                
    $extra $_POST[$codice_fiscale];
                for(
    $i=0$i count($giornata); $i++)
                {
                    
    $query .= "($codice_fiscale,$giornata[$i],"$extra[$giornata[$i]] .",'$data','false'),";
                }
                
    $query1 .= "operai_id_operai = '$codice_fiscale' || ";
                
    next($_POST);
            }
            
    $query substr($query,0,strlen($query)-1);  //query di inserimento
            
    $query1 substr($query1,0,strlen($query1)-3);  //query di delete
            
    echo $query;
            if (
    $tipo == "modifica")   //modifica effettuo delete
                
    echo $result mysql_query($query1) or die(mysql_error());
            
    //query di inserimento
            
    $result mysql_query($query) or die(mysql_error());
            echo 
    "<script language=javascript>";
            echo 
    "    document.f.submit();";
            echo
    "</script>";
            
        }
        elseif (isset(
    $_POST['continua']) && isset($_POST['tipo']))
        {
            
    $data=$_POST['data_settimana'];
            if (isset(
    $_POST['chiave']))
                
    $operai_selezionati $_POST['chiave'];
            echo 
    "<h2>Settimana del " format_data($data) . "</h2>";
            echo 
    "
    <table cellspacing=0 border=1 class=modifica align=center width=100%>\n"
    ;
            
    $settimana = array("Sabato","Domenica","Luned&igrave","Marted&igrave","Mercoled&igrave","Gioved&igrave","Venerd&igrave");
            
    $week = array("sab","do","lun","mar","mer","gio","ven");
            
    $week_int = array(1,2,3,4,5,6,7);
            echo 
    "<tr>"//riga intestazione
            
    echo "<th>Operaio</th>";
            for(
    $i=0$i count($settimana); $i++)
                echo 
    "<th colspan=2>$settimana[$i]</th>";
            echo 
    "</tr>\n";
            echo 
    "<tr rowspan=2>"//riga intestazione
            
    echo "<th>&nbsp</th>";
            for(
    $i=0$i count($settimana); $i++)
                echo 
    "<th>Giornata</th><th>Extra</th>";
            echo 
    "</tr>\n";
            
    $j=0;
            
    $disabled="disabled";
            echo 
    "<form name=f action=index.php?tipo=operai&op=pres method=post>";
            foreach (
    $operai_selezionati as $key => $value)
            {
                echo 
    "<input type=hidden name=chiave[".  $key ."] value=\"$value\">";
                
    //recupera presenze aggiornate
                
    $query "SELECT r.giornata,r.extra,r.data_inizio_settimana
                        FROM registro_presenze r, operai o
                        WHERE o.id_operai = '
    $key'
                        AND o.id_operai = r.operai_id_operai AND r.data_inizio_settimana='
    $data'
                        ORDER BY r.giornata"
    ;
                
    $result mysql_query($query) or die(mysql_error());
                
    $alterna="";
                if((
    $j 2) == 0$alterna="class=alterna";
                
    $j++;
                echo 
    "<tr $alterna><td>$value</td>";  //nome operaio
                
    $riga mysql_fetch_row($result);
                for(
    $k=0$k count($week_int);$k++)
                {    
    $stato=""
                    
    $valore="";
                    if (
    $riga[0] == $week_int[$k])
                    {    
    $stato="checked";
                        
    $valore=$riga[1];
                        if (
    $_POST['tipo'] == "vis")  //non modificabile
                            
    echo "<td align=center>X</td><td align=center>$valore</td>\n";
                        else 
    //in caso di modifica
                        
    {
                            echo 
    "<td align=center><input type=checkbox $stato name=\"" $key "[giornata][]\" value="$week_int[$k] ."></td>\n";
                            echo 
    "<td align=center><input type=text name='" $key ."[$week_int[$k]]' value=\"$valore\" size=1 onKeyPress=\"return keyCheck(event, this);\" onchange=\"document.f.aggiorna.disabled=false;\" ></td>\n";
                        }
                        
    $riga mysql_fetch_row($result);
                    }
                    else
                    {                                        
                        echo 
    "<td align=center><input type=checkbox name=" $key ."[giornata][] value=" $week_int[$k] ."  onclick=\"if (array_checkbox(this)) document.f.aggiorna.disabled=false; else document.f.aggiorna.disabled=true; attiva(document.f,this,'" .$key."_" .$week_int[$k]."');\" ></td>\n"//enabled(document.f,this.checked,'" . $key. "[" . $week_int[$k] . "]');\"
                        
    echo "<td align=center><input type=text disabled name='" $key "_" $week_int[$k] ."' size=1 value=0 onKeyPress=\"return keyCheck(event, this);\"></td>\n";  //onKeyPress=\"return keyCheck(event, this);\"
                    
    }
                }
                 
    //non modificabile
                    //echo "<td align=center><button type=submit name=tipo value=modifica><img src=\"supporto/edit.png\" width=40px height=20px alt=\"Modifica\"></button><input type=hidden name=continua value=continua></td>";
                //elseif ($_POST['tipo'] == "modifica")
                //else echo "<input type=hidden name=tipo value=vis>";
                
    echo "</tr>\n";
            }
            if (
    $_POST['tipo'] != "vis"
            {    echo 
    "<input type=hidden name=tipo value=modifica>";
                
    $disabled="";
            }    
            echo 
    "<input type=hidden name=data_settimana value=\"$data\">";
            echo 
    "<tr><th colspan=15 align=center><input type=submit $disabled name=aggiorna value=Aggiorna><button type=submit name=tipo value=modifica><img src=\"supporto/edit.png\" width=40px height=20px alt=\"Modifica\" ALIGN=\"ABSMIDDLE\"></button><input type=hidden name=continua value=continua></th></tr>"
            echo 
    "</table></form>
    "
    ;
        }
        else
        {
            
    $query "SELECT distinct(data_inizio_settimana) from registro_presenze order by data_inizio_settimana desc LIMIT 0,4";
            
    $result=mysql_query($query);
            echo 
    "<form name=form_data method=POST action=index.php?tipo=operai&op=pres >";   //onsubmit=\"return verifica();\"
            
    echo "
    <table cellspacing=0 border=1 class=modifica align=center>\n"
    ;
            echo 
    "<tr><td colspan=2 align=center>Settimana del:<select name=data_settimana onclick=\"javascript: if (this[this.selectedIndex].text == 'Nuova settimana') show_calendar('document.form_data.data_settimana.options['+this.selectedIndex+']',document.form_data.data_settimana.options[document.form_data.data_settimana.selectedIndex].value);\">";
            while(
    $riga mysql_fetch_row($result))
                echo 
    "<option value=" $riga[0] . ">" format_data($riga[0]) ."</option>";
            echo 
    "<option value=\"null\">Nuova settimana</option>"
            echo 
    "</select></td></tr>";
            echo 
    "<tr><td colspan=2><hr></td></tr>";

            
    //prima maschera visualizza i nomi degli operai
            
    $query="SELECT id_operai, CONCAT(cognome, \" \",nome)  FROM operai ORDER BY cognome,nome";
            
    $result=mysql_query($query);
        
            
    $intestazione_tabella = array("<input type=checkbox name=\"check_all\" onclick=\"SelezTT(true); return true;\"> ","Seleziona operai da aggiornare");
            
    //crea tabella che seleziona gli operai da aggiornare
            
            
    echo "<tr>";
            for(
    $i=0$i count($intestazione_tabella); $i++)
            {
                echo 
    "<th>" $intestazione_tabella[$i] . "</th>";
            }
            echo 
    "</tr>\n";
            
    $j=0;
            while (
    $riga mysql_fetch_row($result))
            {
                
    $alterna="";
                if((
    $j 2) == 0$alterna="class=alterna";
                
    $j++;
                echo 
    "<tr $alterna>";
                echo 
    "<td><input  type=checkbox name=chiave[" $riga[0] ."] value=\""ucwords($riga[1]) ."\" /></td>";
                echo 
    "<td>" ucwords($riga[1]) ."</td>";
                echo 
    "</tr>\n";
            }
            echo 
    "<tr><td colspan=2 align=center><button type=submit name=continua onclick=\"return verifica();\"><img src=\"supporto/forward.png\" width=30px height=30px></button></td></tr>"
            echo 
    "</table><input type=hidden name=tipo value=vis>";
            echo 
    "</form>
    "
    ;
        }    
    ?>

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Se ne metti una versione online così che si possa vedere l'html che arriva al browser...
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    99
    l'output html è all'indirizzo
    http://www.betasolution.it/progest/
    menu->operai->registro presenze.

    Provate sia in IE che Firefox

    grazie

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    la differenza che vedo è che se provo a clickare sulle checkbox dei giorni, una volta selezionato un operaio ed una settimana in FF il textfield mi si sblocca, mentre in IE no. E' quello il problema?
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    99
    si, il problema è quello. cosa può essere???

  8. #8
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    al posto di attiva(document.f,this,'5_1')
    prova con attiva(document.f, this.checked, '5_1')

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    E' un bel casino, ma intato, a naso, non mi piacciono i nomi delle checkbox

    codice:
    name=5[giornata][]
    ?

    Non penso sia possibile far cominciare il nome di una variabile e/o oggetto con un numero, per cui, intanto comincerei da quello. Poi, [] stanno ad indicare, normalmente, un array: "5" è un array bidimensionale?

    Comunque, se controlli la console Javascript di FireFox ti accorgi che ci sono anche altri errori
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    99
    provato quello che dice floyd, ma ancora non funziona

    quel 5 rappresenta la chiave dell'operaio. Inizialmente avevo messo come chiave il codice fiscale, ma avevo stesso problema.

    metto un altro pezzo di codice. Questo è il file presenze.php una prima versione, potete controllare quello grazie
    Codice PHP:
     <script type="text/javascript" src="supporto/calendario_presenze.js"></script>
    <?
        
    echo "<h1>Registro Presenze</h1>";
        if (isset(
    $_POST['aggiorna']))
        {
            unset(
    $_POST['aggiorna']);
            
    $data=$_POST['data_settimana'];
            echo 
    $data;
            
    //preparo il form per rivisualizzare le modifiche
            
    echo "<form name=f action=index.php?tipo=operai&op=pres method=post>";
            echo 
    "<input type=hidden name=data_settimana value=$data>";
            unset(
    $_POST['data_settimana']);
            echo 
    "<input type=hidden name=continua value=continua>";
            unset(
    $_POST['continua']);
            if (isset(
    $_POST['tipo'])) $tipo $_POST['tipo'];
            unset(
    $_POST['tipo']);
            echo 
    "<input type=hidden name=tipo value=vis>";
            
    $chiave $_POST['chiave'];
            unset(
    $_POST['chiave']);
            foreach(
    $chiave as $key =>$value)
                echo 
    "<input type=hidden name=chiave[".  $key ."] value=\"$value\">";
            echo 
    "</form>";
            
            
    $query "INSERT INTO registro_presenze values";
            
    $query1="DELETE FROM registro_presenze WHERE data_inizio_settimana='$data' && ";
            while (
    current($_POST))
            {    
    $codice_fiscale key($_POST);
                
    $giornata $_POST[$codice_fiscale]['giornata'];
                
    print_r($giornata);
                
    $extra $_POST[$codice_fiscale];
                for(
    $i=0$i count($giornata); $i++)
                {
                    
    $query .= "((SELECT id_operai from operai where codice_fiscale='$codice_fiscale'),$giornata[$i],"$extra[$giornata[$i]] .",'$data','false'),";
                }
                
    $query1 .= "operai_id_operai = (select id_operai from operai where codice_fiscale='$codice_fiscale') || ";
                
    next($_POST);
            }
            
    $query substr($query,0,strlen($query)-1);  //query di inserimento
            
    $query1 substr($query1,0,strlen($query1)-3);  //query di delete
            
    echo $query1;
            if (
    $tipo == "modifica")   //modifica effettuo delete
                
    echo $result mysql_query($query1) or die(mysql_error());
            
    //query di inserimento
            
    $result mysql_query($query) or die(mysql_error());
            
    /*echo "<script language=javascript>";
            echo "    document.f.submit();";
            echo"</script>";*/
            
        
    }
        elseif (isset(
    $_POST['continua']) && isset($_POST['tipo']))
        {
            
    $data=$_POST['data_settimana'];
            echo 
    $data;
            if (isset(
    $_POST['chiave']))
                
    $operai_selezionati $_POST['chiave'];
            echo 
    "<h2>Settimana del " format_data($data) . "</h2>";
            echo 
    "
    <table cellspacing=0 border=1 class=modifica align=center width=100%>\n"
    ;
            
    $settimana = array("Sabato","Domenica","Luned&igrave","Marted&igrave","Mercoled&igrave","Gioved&igrave","Venerd&igrave");
            
    $week = array("sab","do","lun","mar","mer","gio","ven");
            
    $week_int = array(1,2,3,4,5,6,7);
            echo 
    "<tr>"//riga intestazione
            
    echo "<th>Operaio</th>";
            for(
    $i=0$i count($settimana); $i++)
                echo 
    "<th colspan=2>$settimana[$i]</th>";
            echo 
    "</tr>\n";
            echo 
    "<tr rowspan=2>"//riga intestazione
            
    echo "<th>&nbsp</th>";
            for(
    $i=0$i count($settimana); $i++)
                echo 
    "<th>Giornata</th><th>Extra</th>";
            echo 
    "</tr>\n";
            
    $j=0;
            
    $disabled="disabled";
            echo 
    "<form name=f action=index.php?tipo=operai&op=pres method=post>";
            foreach (
    $operai_selezionati as $key => $value)
            {
                echo 
    "<input type=hidden name=chiave[".  $key ."] value=\"$value\">";
                
    //recupera presenze aggiornate
                
    $query "SELECT r.giornata,r.extra,r.data_inizio_settimana
                        FROM registro_presenze r, operai o
                        WHERE o.codice_fiscale = '
    $key'
                        AND o.id_operai = r.operai_id_operai AND r.data_inizio_settimana='
    $data'
                        ORDER BY r.giornata"
    ;
                
    $result mysql_query($query) or die(mysql_error());
                
    $alterna="";
                if((
    $j 2) == 0$alterna="class=alterna";
                
    $j++;
                echo 
    "<tr $alterna><td>$value</td>";  //nome operaio
                
    $riga mysql_fetch_row($result);
                for(
    $k=0$k count($week_int);$k++)
                {    
    $stato=""
                    
    $valore="";
                    if (
    $riga[0] == $week_int[$k])
                    {    
    $stato="checked";
                        
    $valore=$riga[1];
                        if (
    $_POST['tipo'] == "vis")  //non modificabile
                            
    echo "<td align=center>X</td><td align=center>$valore</td>\n";
                        else 
    //in caso di modifica
                        
    {
                            echo 
    "<td align=center><input type=checkbox $stato name=\"" $key "[giornata][]\" value="$week_int[$k] ."></td>\n";
                            echo 
    "<td align=center><input type=text name=\"" $key ."[$week_int[$k]]\" value=\"$valore\" size=1 onKeyPress=\"return keyCheck(event, this);\" onchange=\"document.f.aggiorna.disabled=false;\" ></td>\n";
                        }
                        
    $riga mysql_fetch_row($result);
                    }
                    else
                    {                                        
                        echo 
    "<td align=center><input type=checkbox name=\"" $key ."[giornata][]\" value=" $week_int[$k] ."  onclick=\"if (array_checkbox(this)) document.f.aggiorna.disabled=false; else document.f.aggiorna.disabled=true; enabled(document.f,this.checked,'" $key"[" $week_int[$k] . "]');\"></td>\n"//enabled(document.f,this.checked,'" . $key. "[" . $week_int[$k] . "]');\"
                        
    echo "<td align=center><input type=text disabled name=\"" $key "[$week_int[$k]]\" size=1 value=0 ></td>\n";  //onKeyPress=\"return keyCheck(event, this);\"
                    
    }
                }
                 
    //non modificabile
                    //echo "<td align=center><button type=submit name=tipo value=modifica><img src=\"supporto/edit.png\" width=40px height=20px alt=\"Modifica\"></button><input type=hidden name=continua value=continua></td>";
                //elseif ($_POST['tipo'] == "modifica")
                //else echo "<input type=hidden name=tipo value=vis>";
                
    echo "</tr>\n";
            }
            if (
    $_POST['tipo'] != "vis"
            {    echo 
    "<input type=hidden name=tipo value=modifica>";
                
    $disabled="";
            }    
            echo 
    "<input type=hidden name=data_settimana value=\"$data\">";
            echo 
    "<tr><th colspan=15 align=center><input type=submit $disabled name=aggiorna value=Aggiorna><button type=submit name=tipo value=modifica><img src=\"supporto/edit.png\" width=40px height=20px alt=\"Modifica\" ALIGN=\"ABSMIDDLE\"></button><input type=hidden name=continua value=continua></th></tr>"
            echo 
    "</table></form>
    "
    ;
        }
        else
        {
            
    $query "SELECT distinct(data_inizio_settimana) from registro_presenze order by data_inizio_settimana desc LIMIT 0,4";
            
    $result=mysql_query($query);
            echo 
    "<form name=form_data method=POST action=index.php?tipo=operai&op=pres >";   //onsubmit=\"return verifica();\"
            
    echo "
    <table cellspacing=0 border=1 class=modifica align=center>\n"
    ;
            echo 
    "<tr><td colspan=2 align=center>Settimana del:<select name=data_settimana onclick=\"javascript: if (this[this.selectedIndex].text == 'Nuova settimana') show_calendar('document.form_data.data_settimana.options['+this.selectedIndex+']',document.form_data.data_settimana.options[document.form_data.data_settimana.selectedIndex].value);\">";
            while(
    $riga mysql_fetch_row($result))
                echo 
    "<option value=" $riga[0] . ">" format_data($riga[0]) ."</option>";
            echo 
    "<option value=\"null\">Nuova settimana</option>"
            echo 
    "</select></td></tr>";
            echo 
    "<tr><td colspan=2><hr></td></tr>";

            
    //prima maschera visualizza i nomi degli operai
            
    $query="SELECT codice_fiscale, CONCAT(cognome, \" \",nome)  FROM operai ORDER BY cognome,nome";
            
    $result=mysql_query($query);
        
            
    $intestazione_tabella = array("<input type=checkbox name=\"check_all\" onclick=\"SelezTT(true); return true;\"> ","Seleziona operai da aggiornare");
            
    //crea tabella che seleziona gli operai da aggiornare
            
            
    echo "<tr>";
            for(
    $i=0$i count($intestazione_tabella); $i++)
            {
                echo 
    "<th>" $intestazione_tabella[$i] . "</th>";
            }
            echo 
    "</tr>\n";
            
    $j=0;
            while (
    $riga mysql_fetch_row($result))
            {
                
    $alterna="";
                if((
    $j 2) == 0$alterna="class=alterna";
                
    $j++;
                echo 
    "<tr $alterna>";
                echo 
    "<td><input  type=checkbox name=chiave[" $riga[0] ."] value=\""ucwords($riga[1]) ."\" /></td>";
                echo 
    "<td>" ucwords($riga[1]) ."</td>";
                echo 
    "</tr>\n";
            }
            echo 
    "<tr><td colspan=2 align=center><button type=submit name=continua onclick=\"return verifica();\"><img src=\"supporto/forward.png\" width=30px height=30px></button></td></tr>"
            echo 
    "</table><input type=hidden name=tipo value=vis>";
            echo 
    "</form>
    "
    ;
        }    
    ?>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.