Ver Mensaje Individual
  #6 (permalink)  
Antiguo 10/06/2009, 16:22
Avatar de optimus100
optimus100
 
Fecha de Ingreso: febrero-2009
Mensajes: 45
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problemas con RadioButton en PHP

Gracias a todos por responder, pues bien este es el codigo que estoy utilizando:

en el archivo INDEX.PHP
Código PHP:
<script type="text/javascript" src="ajax.js"></script>
<script language="javascript" type="text/javascript">

function activar1(ej){
document.getElementsByName('entrada')[0].disabled=false;
document.getElementsByName('salida')[0].disabled=false;
document.getElementsByName('boton1')[0].disabled=false;
document.getElementsByName('boton2')[0].disabled=false;
document.ej.dr_0[0].value();
}
function activar2(ej){
document.getElementsByName('entrada')[0].disabled=true;
document.getElementsByName('salida')[0].disabled=true;
document.getElementsByName('boton1')[0].disabled=true;
document.getElementsByName('boton2')[0].disabled=true;
document.ej.dr_1[1].value();
}

function validar(ej){
 enviarDatosPrestamo(); return false
  document.ej.submit();
}

</script>


<body>
<center>
<img src="imagenes/libro.gif" width="253" height="129"/>
<p>&nbsp;</p>
<h2>Modificar Datos del Prestamo</h2>
<p><h3>Clic en la clave del Libro para modificar sus datos. </h3></p>
<div id="formulario">
</div>
<div id="resultado"><?php include('consulta.php');?></div>
</center>
</body>


En otro archivo o fichero PHP tengo lo siguiente:


Código PHP:

<form name="ej" action="" >

<table width="526" border="1">
<tr>
    <td width="167">Clave del Libro</td>
    <td colspan="2"><input name="numero" type="text" size="6" maxlength="6" value="<?php echo $idlib?>"  disabled="disabled" /></td>
</tr>
  <tr>
    <td>Titulo del Libro</td>
    <td colspan="2"><input type="text" name="titulo" size="30" maxlength="30" value="<?php echo $title?>"  disabled="disabled" /></td>
  </tr>
   <tr>
    <td>Autor</td>
    <td colspan="2"><input type="text" name="autor"  size="20" maxlength="20" value="<?php echo $auto?>"  disabled="disabled"  />    </td>
  </tr>
  <tr>
    <td>Clave del Alumno</td>
    <td colspan="2"> <input name="codigo" type="text" size="9" maxlength="9" value="<?php  echo $alumno?>"/>    </td>
  </tr>
  <tr>
    <td>Grupo</td>
    <td colspan="2"><input name="grupo" type="text" size="6" maxlength="6" value="<?php echo $gpo;  ?>" /></td>
  </tr>
    <tr>
      <td height="38">&nbsp;</td>
      <td width="121"><input type="radio" name="dr" value="0"  id="dr_0"  onclick="activar1()" />Devolver<br /> 
                      <input type="radio" name="dr" value="1"  id="dr_1" onclick="activar2()" />Renovar<br />      </td>
      

<input type="button" name="Submit" value="Enviar" onclick="validar(ej)" />
</form>
En el archivo AJAX esto es lo que tengo:

Código PHP:

function enviarDatosPrestamo(){
    
//donde se mostrará lo resultados
    
divResultado document.getElementById('resultado');
    
divFormulario document.getElementById('formulario');
    
divResultado.innerHTML'<img src="imagenes/cargando.gif">';
    
    
//valores de los cajas de texto
  
iclave=document.ej.numero.value;
  
ititulo=document.ej.titulo.value;
  
iautor=document.ej.autor.value;
  
icodigo=document.ej.codigo.value;
  
igrupo=document.ej.grupo.value;  
  
ientrada=document.ej.entrada.value;
  
isalida=document.ej.salida.value;
  
irenovar=document.ej.dr.value;
  
    
    
//instanciamos el objetoAjax
    
ajax=objetoAjax();
    
//usando del medoto POST
    //archivo que realizará la operacion ->actualizacion.php
    
ajax.open("POST""actualizacion.php",true);
    
ajax.onreadystatechange=function() {
        if (
ajax.readyState==4) {
            
//mostrar los nuevos registros en esta capa
            
divResultado.innerHTML ajax.responseText
            
//una vez actualizacion ocultamos formulario
            
divFormulario.style.display="none";

        }
    }
    
//hacemos uso de un formulario
    
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    
//enviando los valores
    
ajax.send("numero="+iclave+"&titulo="+ititulo+"&autor="+iautor+"&codigo="+icodigo+"&grupo="+igrupo+"&entrada="+ientrada+"&salida="+isalida+"&dr="+irenovar)

Y el archivo que se encarga de hacer la llamada a la funcion para acceder a la base de datos es la siguiente:


Código PHP:

include_once("cLibro.php");

$idlib=$_POST["numero"];
$atit=$_POST["titulo"];
$aaut=$_POST["autor"];
$acod=$_POST["codigo"];
$agpo=$_POST["grupo"];
$apres=$_POST["entrada"];
$adev=$_POST["salida"];
$arenovar=$_POST["dr"];
sleep(2);
//actualiza los datos del libro
$objlibro = new cLibro;
if (
$objlibro->actualizar($idlib,$atit,$aaut,$acod,$agpo,$apres,$adev,$arenovar)==true){
    echo 
"Datos Actualizados";
    echo 
"<br>";
    echo 
$adev;
    echo 
"<br>";
    echo 
$arenovar////  ES AQUI DONDE AL CORRER EL PROGRAMA DE MANDA EL MENSAJE QUE ERROR DE VALOR INDEFINIDO (undefined)
    
}
else{
    echo 
"No se pudo actualizar";
    }
include(
'consulta.php'); 
Y por ultimo el archivo que realiza la actulizacion a la BD


Código PHP:

 
function actualizar($idlib,$atit,$aaut,$acod,$agpo,$apres,$adev,$arenovar){
           
$con = new DBManager;
        if(
$con->conectar()==true){
            
$query "UPDATE prestamos SET titulo='$atit', autor='$aaut', claveAL='$acod', grupo='$agpo', fechaPres='$apres', fechaDev='$adev', estado='$arenovar'
                      WHERE claveLB ='$idlib' "
;
            
$result = @mysql_query($query);
            if(!
$result)
                return 
false;
            else
                return 
true;
    }
    
   } 

Quizas como ustedes dicen, posiblemente el error este en el JacaScript de INDEX.PHP