Foros del Web » Programando para Internet » Javascript »

error en funcion ajax

Estas en el tema de error en funcion ajax en el foro de Javascript en Foros del Web. hola chic@s , vereis estoy intentando hacer un formulario para editar datos. lo que hago es que cargar todos los datos de mysql. y enviarlos ...
  #1 (permalink)  
Antiguo 29/12/2012, 07:17
Avatar de novamix  
Fecha de Ingreso: enero-2007
Ubicación: Getafe, Spain
Mensajes: 50
Antigüedad: 17 años, 3 meses
Puntos: 1
Busqueda error en funcion ajax

hola chic@s , vereis estoy intentando hacer un formulario para editar datos.

lo que hago es que cargar todos los datos de mysql. y enviarlos para que creen formularios independientes, luego por ajax actualizarlos. pero me da el siguiente error:

Uncaught TypeError: Cannot read property 'value' of undefined user_ajax.js
ActualizarEntradaLocalConcierto user_ajax.js
onsubmit

y no encuentro el fallo aver si mil ojos ven mas que uno.

un saludo y gracias.

FORMULARIOS:

Código PHP:
Ver original
  1. <?php if (mysqli_connect_errno()) {
  2.                 printf("Conexión fallida: %s\n", mysqli_connect_error());
  3.                 exit();
  4.           }
  5.  
  6. $result3 = "SELECT concierto_id, local_id, localnombre, localrango, localprecio, localdireccion, locallocalidad, localprovincia, localtelefono FROM entradaslocal  WHERE concierto_id = $idconcierto ORDER BY localnombre ASC ";
  7.  if ($result4 = mysqli_query($conexion, $result3)) {
  8.               // SI NO HAY CONCIERTOS
  9.  
  10.             if (mysqli_num_rows($result4) == 0) {
  11.                 echo " <div class='alert alert-danger'> No hay entradas,puedes agregarlas desde aqui: </div>";
  12.        
  13.                   }
  14.             echo "<div id='resultado'></div> \n";
  15.  
  16.                 while ($row4 = mysqli_fetch_assoc($result4)){
  17.  
  18.                     echo " <form name='actualizar_entradalocal_concierto' method='post' action='' onsubmit='ActualizarEntradaLocalConcierto(); return false' class='form-horizontal'>
  19.                     <div class='control-group'>
  20.                     <div class='span4'>
  21.  
  22.                      <input name='local_id' type='hidden' id='local_id' value='$row4[local_id]' />
  23.        <label for='localnombre'> Nombre del establecimiento </label>
  24.       <input name='actualizarlocalnombre' id='actualizarlocalnombre' type='text' class=':required' value='$row4[localnombre]' />
  25.       <br>
  26.  <label for='localrango'>Categoria
  27.  </label><input name='localrango' type='text' class=':required'id='localrango' value='$row4[localrango]' />
  28.  
  29.        <label for='localprecio'>Precio</label>
  30.        <div class='input-append'><input name='localprecio' type='text' class=':required' id='localprecio' value='$row4[localprecio]'><span class='add-on'> €</span></div>
  31.        <label for='localdireccion'>Direccion</label>
  32.  
  33.        <input name='localdireccion' type='text'class=':required' id='localdireccion' value='$row4[localdireccion]'>
  34.        </div><div class='span4'>
  35.        <label for='locallocalidad'>
  36.        Localidad</label>
  37.        <input name='locallocalidad' type='text' class=':required' value='$row4[locallocalidad]'/>
  38.        <label for='localprovincia'>
  39.        Provincia</label>
  40.        <input name='localprovincia' type='text' class=':required' data-provide='typeahead' data-items='4' data-source='['Madrid','Barcelona','Álava','Albacete','Alicante','Almería','Ávila','Badajoz','Baleares (Illes)','Barcelona','Burgos','Cáceres','Cádiz','Castellón','Ciudad Real','Córdoba','A Coruña','Cuenca','Girona','Granada','Guadalajara','Guipúzcoa','Huelva','Huesca','Jaén','León','Lleida','La Rioja','Lugo','Madrid','Málaga','Murcia','Navarra','Ourense','Asturias','Palencia','Las Palmas','Pontevedra','Salamanca','Santa Cruz de Tenerife','Cantabria','Segovia','Sevilla','Soria','Tarragona','Teruel','Toledo','Valencia','Valladolid','Vizcaya','Zamora','Zaragoza','Ceuta','Melilla']' value='$row4[localprovincia]'/>
  41.        <br />
  42.        <label for='localtelefono'>Telefono del establecimiento</label>
  43.        <input name='localtelefono'type='text' class=':required' value='$row4[localtelefono]' />
  44.      </p>
  45.      <p>
  46.        <input type='submit' name='enviar' id='enviar' value='Enviar' class='btn btn-primary' />
  47.        <input type='reset' name='button' id='button' value='Restablecer' class='btn'/>
  48.      </p></div></div>
  49.    </form>
  50.  
  51.                      ";
  52.  
  53.                     }
  54.                       mysqli_free_result($result4);
  55.                               }  
  56.                          
  57.          
  58.  <?php if (mysqli_connect_errno()) {
  59.                 printf("Conexión fallida: %s\n", mysqli_connect_error());
  60.                 exit();
  61.           }
  62.  
  63. $result3 = "SELECT concierto_id, local_id, localnombre, localrango, localprecio, localdireccion, locallocalidad, localprovincia, localtelefono FROM entradaslocal  WHERE concierto_id = $idconcierto ORDER BY localnombre ASC ";
  64.  if ($result4 = mysqli_query($conexion, $result3)) {
  65.               // SI NO HAY CONCIERTOS
  66.  
  67.             if (mysqli_num_rows($result4) == 0) {
  68.                 echo " <div class='alert alert-danger'> No hay entradas,puedes agregarlas desde aqui: </div>";
  69.        
  70.                   }
  71.             echo "<div id='resultado'></div> \n";
  72.  
  73.                 while ($row4 = mysqli_fetch_assoc($result4)){
  74.  
  75.                     echo " <form name='actualizar_entradalocal_concierto' method='post' action='' onsubmit='ActualizarEntradaLocalConcierto(); return false' class='form-horizontal'>
  76.                     <div class='control-group'>
  77.                     <div class='span4'>
  78.  
  79.                      <input name='local_id' type='hidden' id='local_id' value='$row4[local_id]' />
  80.        <label for='localnombre'> Nombre del establecimiento </label>
  81.       <input name='actualizarlocalnombre' id='actualizarlocalnombre' type='text' class=':required' value='$row4[localnombre]' />
  82.       <br>
  83.  <label for='localrango'>Categoria
  84.  </label><input name='localrango' type='text' class=':required'id='localrango' value='$row4[localrango]' />
  85.  
  86.        <label for='localprecio'>Precio</label>
  87.        <div class='input-append'><input name='localprecio' type='text' class=':required' id='localprecio' value='$row4[localprecio]'><span class='add-on'> €</span></div>
  88.        <label for='localdireccion'>Direccion</label>
  89.  
  90.        <input name='localdireccion' type='text'class=':required' id='localdireccion' value='$row4[localdireccion]'>
  91.        </div><div class='span4'>
  92.        <label for='locallocalidad'>
  93.        Localidad</label>
  94.        <input name='locallocalidad' type='text' class=':required' value='$row4[locallocalidad]'/>
  95.        <label for='localprovincia'>
  96.        Provincia</label>
  97.        <input name='localprovincia' type='text' class=':required' data-provide='typeahead' data-items='4' data-source='['Madrid','Barcelona','Álava','Albacete','Alicante','Almería','Ávila','Badajoz','Baleares (Illes)','Barcelona','Burgos','Cáceres','Cádiz','Castellón','Ciudad Real','Córdoba','A Coruña','Cuenca','Girona','Granada','Guadalajara','Guipúzcoa','Huelva','Huesca','Jaén','León','Lleida','La Rioja','Lugo','Madrid','Málaga','Murcia','Navarra','Ourense','Asturias','Palencia','Las Palmas','Pontevedra','Salamanca','Santa Cruz de Tenerife','Cantabria','Segovia','Sevilla','Soria','Tarragona','Teruel','Toledo','Valencia','Valladolid','Vizcaya','Zamora','Zaragoza','Ceuta','Melilla']' value='$row4[localprovincia]'/>
  98.        <br />
  99.        <label for='localtelefono'>Telefono del establecimiento</label>
  100.        <input name='localtelefono'type='text' class=':required' value='$row4[localtelefono]' />
  101.      </p>
  102.      <p>
  103.        <input type='submit' name='enviar' id='enviar' value='Enviar' class='btn btn-primary' />
  104.        <input type='reset' name='button' id='button' value='Restablecer' class='btn'/>
  105.      </p></div></div>
  106.    </form>
  107.  
  108.                      ";
  109.  
  110.                     }
  111.                       mysqli_free_result($result4);
  112.                               }

FUNCION DE ARCHIVO user_ajax.js
Código Javascript:
Ver original
  1. function ActualizarEntradaLocalConcierto(){
  2.     //donde se mostrará lo resultados
  3.     divResultado = document.getElementById('resultado');
  4.     //valores de los inputs
  5.     local_id=document.actualizar_entradalocal_concierto.local_id.value;
  6.     actualizarlocalnombre=document.actualizar_entradalocal_concierto.actualizarlocalnombre.value;
  7.     actualizarlocalrango=document.actualizar_entradalocal_concierto.actualizarlocalrango.value;
  8.     actualizarlocalprecio=document.actualizar_entradalocal_concierto.actualizarlocalprecio.value;
  9.     localdireccion=document.actualizar_entradalocal_concierto.localdireccion.value;
  10.     locallocalidad=document.actualizar_entradalocal_concierto.locallocalidad.value;
  11.     localprovincia=document.actualizar_entradalocal_concierto.localprovincia.value;
  12.     localtelefono=document.actualizar_entradalocal_concierto.localtelefono.value;
  13.  
  14.    
  15.     //instanciamos el objetoAjax
  16.     ajax=objetoAjax();
  17.     //uso del medotod POST
  18.     //archivo que realizará la operacion
  19.     //registro.php
  20.     ajax.open("POST", "actualizar_local_concert.php",true);
  21.     ajax.onreadystatechange=function() {
  22.         if (ajax.readyState==4) {
  23.             //mostrar resultados en esta capa
  24.             divResultado.innerHTML = ajax.responseText
  25.             divFormulario.innerHTML = "<div class='alert alert-white'>La actualizaci&oacute;n se realiz&oacute; correctamente</div>";
  26.             //llamar a funcion para limpiar los inputs
  27.             LimpiarCampos();
  28.         }
  29.     }
  30.     ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  31.     //enviando los valores
  32.     ajax.send("local_id="+local_id+"&actualizarlocalnombre="+actualizarlocalnombre+"&actualizarlocalrango="+actualizarlocalrango+"&actualizarlocalprecio="+actualizarlocalprecio+"&localdireccion="+localdireccion+"&locallocalidad="+locallocalidad+"&localprovincia="+localprovincia+"&localtelefono="+localtelefono)
  33. }
  #2 (permalink)  
Antiguo 29/12/2012, 09:05
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: error en funcion ajax

Tienes campo que se llaman localrango y localprecio pero no actualizarlocalrango ni actualizarlocalprecio.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 29/12/2012, 09:40
Avatar de novamix  
Fecha de Ingreso: enero-2007
Ubicación: Getafe, Spain
Mensajes: 50
Antigüedad: 17 años, 3 meses
Puntos: 1
Busqueda Respuesta: error en funcion ajax

si, eso ya lo arregle , pero me sigue saliendo el mismo erro. supuestamente es en la linea que dice:

Código PHP:
    actualizarlocal_id=document.actualizar_entradalocal_concierto.actualizarlocal_id.value
no se que sera :s pongo los nuevos archivos ya arreglados


FORM:

Código PHP:
$result3 "SELECT concierto_id, local_id, localnombre, localrango, localprecio, localdireccion, locallocalidad, localprovincia, localtelefono FROM entradaslocal  WHERE concierto_id = $idconcierto ORDER BY localnombre ASC ";
 if (
$result4 mysqli_query($conexion$result3)) {
              
// SI NO HAY CONCIERTOS

            
if (mysqli_num_rows($result4) == 0) {
                echo 
" <div class='alert alert-danger'> No hay entradas,puedes agregarlas desde aqui: </div>";
       
                  }
            echo 
"<div id='resultado'></div> \n";

                while (
$row4 mysqli_fetch_assoc($result4)){

                    echo 
" <form name='actualizar_entradalocal_concierto' method='post' action='' onsubmit='ActualizarEntradaLocalConcierto(); return false' class='form-horizontal'>
                    <div class='control-group'>
                    <div class='span4'>

                     <input name='actualizarlocal_id' type='hidden' id='actualizarlocal_id' value='$row4[local_id]' />
        <label for='localnombre'> Nombre del establecimiento </label>
       <input name='actualizarlocalnombre' id='actualizarlocalnombre' type='text' class=':required' value='$row4[localnombre]' />
       <br>
  <label for='localrango'>Categoria
  </label><input name='actualizarlocalrango' type='text' class=':required'id='actualizarlocalrango' value='$row4[localrango]' />
   
        <label for='actualizarlocalprecio'>Precio</label>
        <div class='input-append'><input name='localprecio' type='text' class=':required' id='localprecio' value='$row4[localprecio]'><span class='add-on'> €</span></div>
        <label for='localdireccion'>Direccion</label>

        <input name='localdireccion' type='text'class=':required' id='actualizarlocaldireccion' value='$row4[localdireccion]'>
        </div><div class='span4'>
        <label for='locallocalidad'>
        Localidad</label>
        <input name='actualizarlocallocalidad' type='text' class=':required' value='$row4[locallocalidad]'/>
        <label for='localprovincia'>
        Provincia</label>
        <input name='actualizarlocalprovincia' type='text' class=':required' data-provide='typeahead' data-items='4' data-source='['Madrid','Barcelona','Álava','Albacete','Alicante','Almería','Ávila','Badajoz','Baleares (Illes)','Barcelona','Burgos','Cáceres','Cádiz','Castellón','Ciudad Real','Córdoba','A Coruña','Cuenca','Girona','Granada','Guadalajara','Guipúzcoa','Huelva','Huesca','Jaén','León','Lleida','La Rioja','Lugo','Madrid','Málaga','Murcia','Navarra','Ourense','Asturias','Palencia','Las Palmas','Pontevedra','Salamanca','Santa Cruz de Tenerife','Cantabria','Segovia','Sevilla','Soria','Tarragona','Teruel','Toledo','Valencia','Valladolid','Vizcaya','Zamora','Zaragoza','Ceuta','Melilla']' value='$row4[localprovincia]'/>
        <br />
        <label for='actualizarlocaltelefono'>Telefono del establecimiento</label>
        <input name='actualizarlocaltelefono'type='text' class=':required' value='$row4[localtelefono]' />
      </p>
      <p>
        <input type='submit' name='enviar' id='enviar' value='Enviar' class='btn btn-primary' />
        <input type='reset' name='button' id='button' value='Restablecer' class='btn'/>
      </p></div></div>
    </form>

                     "
;

                    }
                      
mysqli_free_result($result4);
                              } 

AJAX:

Código Javascript:
Ver original
  1. function ActualizarEntradaLocalConcierto(){
  2.     //donde se mostrará lo resultados
  3.     divResultado = document.getElementById('resultado');
  4.     //valores de los inputs
  5.     actualizarlocal_id=document.actualizar_entradalocal_concierto.actualizarlocal_id.value;
  6.     actualizarlocalnombre=document.actualizar_entradalocal_concierto.actualizarlocalnombre.value;
  7.     actualizarlocalrango=document.actualizar_entradalocal_concierto.actualizarlocalrango.value;
  8.     actualizarlocalprecio=document.actualizar_entradalocal_concierto.actualizarlocalprecio.value;
  9.     actualizarlocaldireccion=document.actualizar_entradalocal_concierto.actualizarlocaldireccion.value;
  10.     actualizarlocallocalidad=document.actualizar_entradalocal_concierto.actualizarlocallocalidad.value;
  11.     actualizarlocalprovincia=document.actualizar_entradalocal_concierto.actualizarlocalprovincia.value;
  12.     actualizarlocaltelefono=document.actualizar_entradalocal_concierto.actualizarlocaltelefono.value;
  13.  
  14.    
  15.     //instanciamos el objetoAjax
  16.     ajax=objetoAjax();
  17.     //uso del medotod POST
  18.     //archivo que realizará la operacion
  19.     //registro.php
  20.     ajax.open("POST", "actualizar_local_concert.php",true);
  21.     ajax.onreadystatechange=function() {
  22.         if (ajax.readyState==4) {
  23.             //mostrar resultados en esta capa
  24.             divResultado.innerHTML = ajax.responseText
  25.             divFormulario.innerHTML = "<div class='alert alert-white'>La actualizaci&oacute;n se realiz&oacute; correctamente</div>";
  26.             //llamar a funcion para limpiar los inputs
  27.             LimpiarCampos();
  28.         }
  29.     }
  30.     ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  31.     //enviando los valores
  32.     ajax.send("actualizarlocal_id="+actualizarlocal_id+"&actualizarlocalnombre="+actualizarlocalnombre+"&actualizarlocalrango="+actualizarlocalrango+"&actualizarlocalprecio="+actualizarlocalprecio+"&actualizarlocaldireccion="+actualizarlocaldireccion+"&actualizarlocallocalidad="+actualizarlocallocalidad+"&actualizarlocalprovincia="+actualizarlocalprovincia+"&actualizarlocaltelefono="+actualizarlocaltelefono)
  33. }
  #4 (permalink)  
Antiguo 30/12/2012, 18:13
Avatar de novamix  
Fecha de Ingreso: enero-2007
Ubicación: Getafe, Spain
Mensajes: 50
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: error en funcion ajax

El error puede estar en que tengo varias funciones ajax?

Etiquetas: ajax, formulario, php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:02.