Foros del Web » Programando para Internet » PHP »

Por Que No Funciona Esta Fucnion

Estas en el tema de Por Que No Funciona Esta Fucnion en el foro de PHP en Foros del Web. Coloco el codigo y explico que es lo que no funciona: Código PHP: function  requestModular ( $idpregunta = 1 )  {                    $res  =  ...
  #1 (permalink)  
Antiguo 02/04/2008, 16:31
(Desactivado)
 
Fecha de Ingreso: enero-2008
Ubicación: Mendoza
Mensajes: 458
Antigüedad: 16 años, 2 meses
Puntos: 2
Exclamación Por Que No Funciona Esta Fucnion

Coloco el codigo y explico que es lo que no funciona:

Código PHP:
function requestModular($idpregunta=1
{
        
         
$res mysql_query("SELECT * FROM respuestas WHERE idpregunta='".$idpregunta."'"); 
        while (
$linea mysql_fetch_array($res)) 
            { 
            
        if ( 
$_REQUEST[$linea['idrespuesta']] ) 
        
mysql_query("INSERT INTO examen (iduser,idpregunta,idrespuesta,fecha) values ('$iduser','".$linea['0']."','".$linea['1']."','$fecha')");
            
            }

El problema es que no hace el insert a la base de datos, no carga los datos... pero hace bien la consulta ya que probe en ves de hacer el insert con un echo y me muestra los resultados correctamente...

Ayuda plis....
  #2 (permalink)  
Antiguo 02/04/2008, 17:45
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Re: Por Que No Funciona Esta Fucnion

En tu código lo único que veo mal es que le pones comillas simples a los valores de los índices, eso sería correcto si los índices no fueran numéricos, en caso que lo fueran estaría mal las comillas, simplemente tendrías que eliminarlas.
  #3 (permalink)  
Antiguo 02/04/2008, 17:58
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Re: Por Que No Funciona Esta Fucnion

Si utilizas mysql_fetch_array puedes llamar a un valor ya sea por la posicion en el arreglo o por el nombre de la clave.. intenta utilizar MYSQL_ASSOC para tener la posibilidad de usar ambas cosas..


Código PHP:
$linea mysql_fetch_array($resMYSQL_ASSOC
Talves es eso.. y

'$iduser'

ponlo mejor asi al igual que fecha

Código PHP:
' ".$iduser." ' 
  #4 (permalink)  
Antiguo 02/04/2008, 19:55
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Re: Por Que No Funciona Esta Fucnion

Eljavista: se pueden ingresar valores numericos con entre 'comillas' n__n

Bueno el error es que al crear cadenas dinamicas puede usar 2 alternativas:

alternativa 1
Cita:
$edad=20;
echo "Juan tiene $edad años";
alternativa 2
Cita:
$edad=20;
echo "Juan tiene ".$edad." años";
PERO JAMAS AMBAS AL MISMO TIEMPO!!!
Cita:
$edad=20;
echo "Juan tiene $edad y ".$edad." años";
por lo tanto la solucion de el INSERT es
mysql_query("INSERT INTO examen (iduser,idpregunta,idrespuesta,fecha) values
Código PHP:
mysql_query("INSERT INTO examen (iduser,idpregunta,idrespuesta,fecha) values ('".$iduser."','".$linea['0']."','".$linea['1']."','".$fecha."')"); 
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:43.