ajax che qualche volta non funziona

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ho fatto un form con due select (ecc ma il resto non interessa)
nella prima selezione la provincia
nella seconda, selezionata la provincia, appaiono tutti i comuni della stessa (utilizzo ajax come consiglatomi da eliox)
tutto funziona, ma c'è un però

ho visionato quello che ho realizzato su vari computers e nel 95% dei casi tutto ok, in alcuni invece selzionando la provincia i comuni è come se non esistessero (e quindi sballa tutta la ricerca successiva), ho verificato se js era attivato e risultava "si"

il tutto, sembra, indipendente da IE o da FF, da cosa può dipendere?
aggiornamento del bw? agiornamento di qualche plug?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
:dipser:ahime fine delle ferie.

ho testato con IE 7 e FF 1.04.

il file ajax

HTML:
function InviaDati(data)
{
  // istanziamo l'oggetto XMLHttpRequest
  if (window.XMLHttpRequest) 
  {
    req = new XMLHttpRequest();
    req.onreadystatechange = function() { PocessaDati(req); };
    req.open('POST', url, true);
    req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    req.send(data);
  }
  // controlliamo la versione di ActiveX
  else if (window.ActiveXObject) 
  {
    req = new ActiveXObject('Microsoft.XMLHTTP')
    if (req)
    {
      req.onreadystatechange = PocessaDati;
      req.open('POST', url, true);
      req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
      req.send(data);
    }
  }
}

function PocessaDati(req)
{
  // monitoriamo lo stato dell'invio
  if (req.readyState == 4)
  {
    // restituiamo lo stato della richiesta
    if (req.status == 200) 
    {
      eval(what);
    }else{
      alert('Problema nella gestione dei dati: ' +
      req.responseText);
    }
  }
}

e questa la pag. php con le selezioni (le province ed i comuni da tabelle db)

PHP:
<script type="text/javascript">
var url = "comuni.php";
var what = "SetProvince(req.responseText)";

function GetProvince(regione)
{
  InviaDati("regione="+regione);
}


function SetProvince(Province)
{
  var provinciaBox = document.getElementById("provincia");
  provinciaBox.options.length = 0;
  if(Province != "")
  {
    var arrProvince = Province.split(",");
    for(i = 0; i < arrProvince.length; i++)
    {
      if(arrProvince[i] != "")
      {
        provinciaBox.options[provinciaBox.options.length] = 
        new Option(arrProvince[i], arrProvince[i]);
      }
    }
  }
}
</script>
<script src="ajax.js" type="text/javascript"></script>

<?php
include_once "connessione.php";
?>


<form name="form1" method="post" action="demo-01.php">
<div class="selzioni">
  <p>Seleziona la Provincia<span class="Stile1">*</span>:<br> 
    <select onChange="GetProvince(this.options[this.selectedIndex].text)" id="regione" name="regione">
      <option value="0">-seleziona-</option>
<?php
$cerca_R="select * from regioni order by regione";
$query_R= mysql_query($cerca_R) or die (mysql_error());
while ($riga_R= mysql_fetch_array($query_R)){ //ciclo regioni
	$IDR=stripslashes($riga_R[id_R]);
	$REG=stripslashes($riga_R[regione]);
	echo "<optgroup label=\"".$REG."\">";
	$cerca_P="select * from province where id_R=\"".$IDR."\" order by provincia";
	$query_P= mysql_query($cerca_P) or die (mysql_error());
	while ($riga_P= mysql_fetch_array($query_P)){ //ciclo province
		$IDP=stripslashes($riga_P[id_P]);
		$PRO=stripslashes($riga_P[provincia]);
		$IDP=$IDP."|".$PRO;
		echo "<option value=\"".$IDP."\">".$PRO."</option>";//al value = $IDP
	}//fine ciclo province
	echo "</optgroup>";
}//fine ciclo regioni
/* attenzione: nonmi modificati da js regione=provincia -- provincia=comune --
le province sono raggruppate sotto il nome della regione */
?>  

    </select>
    <br>
    Comune:<br> 
    <select id="provincia" name="provincia">
    </select>
    <br><br>


con mio IE e FF funziona, ho provato sul computer di un cliente e non funzia:confused:
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
sfortunatamente non conosco di preciso la versione IE del cliente (distributore carburante), anche perchè il computer+soft non è suo ma fornito direttamente dalla casa madre della marca e con questa collegato in rete nazionale.
mi sembra comunque che sia una versione molto datata, lo consiglierò (se può) di aggiornarla.
mal che vada gli dirò di guardarsi il sito dal computer di casa.
grazie e ciao
 

lukeonweb

Utente Attivo
5 Mar 2003
5.175
13
38
45
Napoli
www.lucaruggiero.it
Ok ma comunque è possibile che tantissimi browser facciano poi i capricci.

Se si tratta di un pannello di controllo ok, si potrebbe dire "chi se ne frega", ma comunque è bene usare funzioni cross-browser, adattabili quindi anche per il futuro in front-office.

Se vuoi, sono a tua disposizione per aiutarti a risolvere.

Fammi sapere.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
anche qui sfortunatamente non posso dire

si potrebbe dire "chi se ne frega",

in quanto si tratta di fare una ricerca prima (o solo) sulla provincia e poi eventualmente sul comune. vengono estratti i nominativi appartenti.
nei casi (qui per fortuna rari) in cui si presenta il difetto la ricerca da "non ci sono distributori" anche se non è vero.
ajax funziona anche su bw datati? (es. IE 5 o prec.). penso che il problema sia questo. anzi ne sono quasi sicuro

comunque per ora lascio così (l'errore rappresenta si e no l'1%)

:beer:
 
Discussioni simili
Autore Titolo Forum Risposte Data
R jquery che cambia css di un elemento non mi funziona sulla pagina caricata da ajax Ajax 5
P Chiamata ajax che non ne vuole sapere di funzionare Ajax 5
C Scriptino Ajax che non funge Ajax 4
J Forum php con pop ajax che dice che sono offline PHP 0
max_400 Ajax a che serve? Ajax 6
D funzione AJAX che ricarica dei campi select Ajax 3
S Problema AJAX che non riesco a capire. Ajax 0
F Problemi con Explorer su uno script Ajax che richiama un asp Ajax 0
R valore value di un id da passare in chiamata ajax Ajax 3
M Fullcalendar in Codeigniter, un aiuto per la chiamata $ajax ? jQuery 0
R Aggiornare record mysql con Ajax, jQuery e php Ajax 2
P Funzione jQuery Ajax invio file a php jQuery 1
E Php select option e ajax PHP 23
Emix Select concatenate php sql ajax PHP 2
MarcoGrazia Valori di ritorno json via ajax non visti. jQuery 1
felino ASP.net MVC: Exception e chiamata AJAX ASP.NET 1
motleyrulez Ricerca filtro con Ajax PHP 1
max1974 Grafico Ajax Javascript 4
max1974 Struttura $.ajax Ajax 7
C la chiamata ajax non ritorna alcun dato Ajax 1
max1974 Lettura Risultato $.ajax Javascript 1
motleyrulez Chiamata ajax per tabella php PHP 3
max1974 [Javascript] Grafico chartjs con dati da J.ajax Javascript 3
O [PHP] inviare dati da form e script ajax PHP 0
F limit show datatable ajax Ajax 1
Domenico_Falco1 Rendere dinamico un sito web con chiamate ajax e php e variabili json PHP 12
G Eseguire codice solo al termine della chiamata ajax Ajax 1
L Problema jQuery validation AJAX (PHP 7) PHP 6
max1974 [Javascript] Grafico ajax non funziona Javascript 0
WorldWideWeb Ajax POST con risposta JSON Ajax 2
M leggere con jquery/ajax in una function javascript record di database sql server Javascript 0
A [Javascript] Ajax, Jquery e PHP Javascript 1
D [Javascript] pulsanti per comandi shell con php e ajax Ajax 7
X Problema con jquery e ajax jQuery 2
B [PHP] variabili globali in chiamate ajax PHP 0
B DEBUG - PHP+JS+AJAX PHP 10
M Inserimento dati checkbox multipli in db da ajax a php PHP 1
Axis18 Creare una barra di avanzamento con $.ajax Ajax 7
otto9due Chiamata ajax su due url è possibile? Ajax 0
G [Javascript] Problema parametro passato con ajax Javascript 4
G Chiamata ajax restituisce errore random Ajax 1
paloppa [PHP] paginazione con ajax PHP 1
filomeni Ajax e https Ajax 4
bubino8 Ajax con risultato si/no Ajax 16
A redirect da pagina php chiamata da ajax PHP 2
L Aggiungere contenuto con ajax durante lo scroll jQuery 1
M Ajax funziona in alcuni siti, in altri no! Ajax 2
otto9due Risposta ajax -> json con php Ajax 3
bubino8 [PHP] split con ajax non funziona PHP 7
C Problema chiamata Ajax Ajax 2

Discussioni simili