Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/06/2009, 10:52
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
Simplemente ayuda

Es la primera vez que programo en AJAX. Espero que podáis echarme un cable:

Archivo 1: nuevoPedido.php

Funciones implementadas en JavaScript:

Código:
function objetoAjax(){
	var xmlhttp=false;
	try {
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
		try {
		   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (E) {
			xmlhttp = false;
  		}
	}

	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
	}
	return xmlhttp;
}

function comprobarFestivo(){
	divResultado = document.getElementById('festivo');
	ajax=objetoAjax();
	if (document.getElementById('dia').value!='' && document.getElementById('mes')!='' && document.getElementById('year')!='')
	{
		//Si la fecha está completa analizamos el ámbito de ejecucion de la consulta.
		if (document.getElementById('nacional').checked==true)
			$ambitoSeleccionado = 'nacional';
		else if(document.getElementById('selectComunidades').value!='')
			$ambitoSeleccionado = document.getElementById('selectComunidades').value;
		else if(document.getElementById('selectProvincias').value!=''){
			$ambitoSeleccionado = calcularComunidad(document.getElementById('selectProvincias').value);
		}
		$dia = document.getElementById('dia');
		$mes = document.getElementById('mes');
	}
	ajax.open('GET', 'nuevoPedido2.php?ambitoSeleccionado='+ambitoSeleccionado+'&dia='+dia+'&mes='+mes);
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			divResultado.innerHTML = ajax.responseText;
		}
	}
	ajax.send(null)
}
Parte donde se invocan del fichero:

Código HTML:
 <div class="ejemplo">
            <div>
            <p>
            <span class="grupo">
            <label for="dia">
              <input name="dia" type="text" class="fechaA day post rang10" id="dia" value="" size="4" maxlength="2" onchange="comprobarFestivo()"/>
            </label>
            <label for="mes">
                <input class="fechaA month" maxlength="2" type="text" id="mes" name="mes" value="" size="4" onchange="comprobarFestivo()"/>
            </label>&nbsp;-
            <label for="year">
                <input class="fechaA year" maxlength="4" type="text" id="year" name="year" value="" size="8" onchange="comprobarFestivo()"/>
            </label>
            </span></p>
            </div>
            </div>
            <div id="festivo"></div> 
Por último: el fichero que carga la capa "festivo"

Código PHP:
// Anteriormente cargo los datos de la base de datos.
if(isset($_GET['ambitoSeleccionado'] and $_GET['dia'] and $_GET['mes'])){
  
$ambito=$_GET['ambitoSeleccionado'];
  
$dia=$_GET['dia'];
  
$mes=$_GET['mes'];
}

$sql=mysql_query("SELECT dia
                 FROM festivos 
                 WHERE dia='$dia' AND mes='$mes'"
,$con);
if(
mysql_num_rows($sql)!=0){
    if(
$ambito != 'nacional'){
        
$row mysql_fetch_array($sql);
        if (
$row['$ambito']==1){
            echo 
"</p>El día elegido es festivo, esta circunstancia puede hacer que se <b>incremente el precio</b> </p>"
        }else{
            echo 
"El día elegido no presenta festividad alguna"
        }
    }else{
        echo 
"</p>El día elegido es festivo, esta circunstancia puede hacer que se <b>incremente el precio</b> </p>";
    }

Pues bien, no funciona, por mas que me rompo los cuernos no funciona, y encima tengo otras funciones en javascript que comprobaban los campos de ambito que ahora tampoco funcionan, ayuda por favor