Foros del Web » Programando para Internet » PHP »

Error y no se donde

Estas en el tema de Error y no se donde en el foro de PHP en Foros del Web. Hola, sere lo mas breve. Estoy aprendiendo php con mysql. De un video tutorial de encuestas me enseñan a crear 2 tipos de encuestas. La ...
  #1 (permalink)  
Antiguo 27/05/2008, 10:41
 
Fecha de Ingreso: marzo-2008
Mensajes: 41
Antigüedad: 16 años
Puntos: 0
Error y no se donde

Hola, sere lo mas breve.

Estoy aprendiendo php con mysql.
De un video tutorial de encuestas me enseñan a crear 2 tipos de encuestas. La primera sin problema, pero la segunda no me funciona ni pa tras. He revisado los codigos mil y una vez, lo he hecho 35 veces minimo, etc y no me registra nada en la base dedatos.

He estado informandome y no encuentro respuesta, por eso recurro a vosotros, los codigos son los siguientes:

votacion.php

Código PHP:
<?php

$link 
mysql_connect("localhost""root""");
        
mysql_select_db("encuestas");

$votar_php "".$_POST['voto_flash']."";

switch(
$votar_php){
    case 
"_level0.a":
        
$sql "UPDATE votacion SET op1_sql=op1_sql+1";
        
mysql_query($sql);
        break;
    case 
"_level0.b":
        
$sql "UPDATE votacion SET op2_sql=op2_sql +1";
        
mysql_query($sql);
        break;    
    case 
"_level0.c":
        
$sql "UPDATE votacion SET op3_sql=op3_sql +1";
        
mysql_query($sql);
        break;    
    case 
"_level0.d":
        
$sql "UPDATE votacion SET op4_sql=op4_sql +1";
        
mysql_query($sql);
        break;    
}
mysql_close($link);
?>
Recibir.php

Código PHP:
<?php
$link 
mysql_connect("localhost""root""");
        
mysql_select_db("encuestas");

$sql "SELECT * FROM votacion";
$res mysql_query($sql);
$row mysql_fetch_row($res);

for(
$i=0$i<4$i++){
    echo 
"&op".$i."=".$row[$i];
}


?>

¿Que pasa?. no lo entiendo


Gracias
  #2 (permalink)  
Antiguo 27/05/2008, 11:03
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Error y no se donde

Hola tabletomm,

Es importante siempre cuando envias un query, comprobar si existe un error.

Por otro lado también puede ser que tu switch no entre el valor es decir, que no sea un valor de los que tienes marcados, prueba este script:
Código PHP:
<?php

$link 
mysql_connect("localhost""root""");
        
mysql_select_db("encuestas");

$votar_php "".$_POST['voto_flash']."";
$sql "";

switch(
$votar_php){
    case 
"_level0.a":
        
$sql "UPDATE votacion SET op1_sql=op1_sql+1";
        break;
    case 
"_level0.b":
        
$sql "UPDATE votacion SET op2_sql=op2_sql +1";
        break;    
    case 
"_level0.c":
        
$sql "UPDATE votacion SET op3_sql=op3_sql +1";
        break;    
    case 
"_level0.d":
        
$sql "UPDATE votacion SET op4_sql=op4_sql +1";
        break;
    default:
        echo 
"No es una opcion valida: $votar_php";
        break;
}
if( !empty( 
$sql ) ) {
        
$rst mysql_query$sql );
        if( !
$rst ) {
                   echo 
"Ha ocurrido un error al ejecutar $sql, error: " mysql_error();
        }
}
mysql_close($link);
?>
Saludos.
  #3 (permalink)  
Antiguo 27/05/2008, 11:17
 
Fecha de Ingreso: marzo-2008
Mensajes: 41
Antigüedad: 16 años
Puntos: 0
Respuesta: Error y no se donde

Hola Gator gracias por tu pronta respuesta y nada no me marca nada en la base de datos ni en op1, op2, op3, op4.

Para que te orientes un poco es una encuesta donde se pregunta donde tirarian una lata y las 4 opciones son:

Contenedor verde, contenedor amarillo, con..azul, no se

El .fla esta todo correcto y el php imagino que tambien , me esta quitando la vida esto.
  #4 (permalink)  
Antiguo 27/05/2008, 12:09
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Error y no se donde

Hola tabletomm,

La idea es que pruebes el script primero sin flash, de lo contrario no puedes ver el error, primero asegúrate que el script PHP sirve, y luego trata de integrarlo con Flash.

Saludos.
  #5 (permalink)  
Antiguo 27/05/2008, 12:55
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años
Puntos: 336
Respuesta: Error y no se donde

hola prueba asi n__n

Código:
<?php 
$link = mysql_connect("localhost", "root", ""); 
mysql_select_db("encuestas",$link); 

switch($_POST['voto_flash']){ 
    case "_level0.a": 
        mysql_query("UPDATE votacion SET op1_sql=op1_sql+1",$link); 
        break;
    case "_level0.b": 
        mysql_query("UPDATE votacion SET op2_sql=op2_sql +1",$link); 
        break;
    case "_level0.c": 
        mysql_query("UPDATE votacion SET op3_sql=op3_sql +1",$link); 
        break;
    case "_level0.d": 
        mysql_query("UPDATE votacion SET op4_sql=op4_sql +1",$link); 
        break;
} 
mysql_close($link); 
?>
a veces se debe seguir entregando la variable de coneccion ($link) por que al PHP se le olvida XD, ademas si lo pones asi directamente te evitas cualquier error de variables y ahorras espacio.

si se recibe una variable post (voto_flash) asegurate de estarla enviando con ese nombre y que los valores sean en formato "_level0.x", ademas si no me equivoco este formato lo usa flash para "RECIBIR" variables cuando se especifica el valor con una instruccion como getVariablesNum(), y no deberia ser el caso de enviar variables con post, quizas deberias quitar el "_level0", ya que el PHP recibe la variable sin importar el nivel.

ojala te resulte
  #6 (permalink)  
Antiguo 27/05/2008, 13:35
 
Fecha de Ingreso: marzo-2008
Mensajes: 41
Antigüedad: 16 años
Puntos: 0
Respuesta: Error y no se donde

Voy a probarlo ahora mismo stramin, ojala me funciona, es lo que me queda de un proyecto y
me esta quitando la vida, ojala resulte, gracias, te comento en cuanto lo pruebe. gracias de nuevo
  #7 (permalink)  
Antiguo 27/05/2008, 13:37
 
Fecha de Ingreso: marzo-2008
Mensajes: 41
Antigüedad: 16 años
Puntos: 0
Respuesta: Error y no se donde

Un duda stramin en el archivo recibir.php tengo que seguir entregando la variable de conexion ($link)?
  #8 (permalink)  
Antiguo 27/05/2008, 13:42
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años
Puntos: 336
Respuesta: Error y no se donde

o.o verdad

tambien

Código PHP:
<?php 
$link 
mysql_connect("localhost""root"""); 
mysql_select_db("encuestas",$link); 

$res mysql_query("SELECT * FROM votacion;",$link); 
$row mysql_fetch_row($res); 

for(
$i=0$i<4$i++){ 
    echo 
"&op".$i."=".$row[$i]; 

?>
  #9 (permalink)  
Antiguo 27/05/2008, 13:49
 
Fecha de Ingreso: marzo-2008
Mensajes: 41
Antigüedad: 16 años
Puntos: 0
Respuesta: Error y no se donde

Nada stramin, no me funciona

¿Si en vez de un switch con un if podria ser?

Pero no tengo muy claro de como estructurar el codigo

Gracias de nuevo, pero se que entre todos ira esto.
  #10 (permalink)  
Antiguo 27/05/2008, 15:45
 
Fecha de Ingreso: marzo-2008
Mensajes: 41
Antigüedad: 16 años
Puntos: 0
Respuesta: Error y no se donde

Gator perdon por no contestarte pero con todo este lio, me pase tu mensaje.

¿Como puedo ejecutar el script sin usar flash? a lo mejor es una pregunta tonta pero es k todavia son muchas cosas. Gracias
  #11 (permalink)  
Antiguo 27/05/2008, 15:51
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años
Puntos: 336
Respuesta: Error y no se donde

en ese caso el error podria estar en cualquier parte, en la BD, en el flash, en el nivel, hasta podria estar en la configuracion del PHP xDDDD

habria que ver el flash, insisto en que quizas si borras el "_level0"
  #12 (permalink)  
Antiguo 27/05/2008, 16:04
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Error y no se donde

El script lo ejecutas vía http://www.dominio.com/path/a/tu/archivo/recibir.php, tendras que crear un formulario en HTML que sea similar a tu flash para que veas los posibles mensajes de error.

Saludos.
  #13 (permalink)  
Antiguo 28/05/2008, 01:33
 
Fecha de Ingreso: marzo-2008
Mensajes: 41
Antigüedad: 16 años
Puntos: 0
Respuesta: Error y no se donde

Hola GAtor, gracias por contestar, lo he probado tambien y nada.

Tendre algo mal configurado en la base da datos, pero no se que es.

¿Hay alguna alternativa a ese codigo? me refiero otro script que me pueda funcionar

Gracias
  #14 (permalink)  
Antiguo 28/05/2008, 02:40
 
Fecha de Ingreso: marzo-2008
Mensajes: 41
Antigüedad: 16 años
Puntos: 0
Respuesta: Error y no se donde

tendra algo que ver esto?

Únicamente la estructura
*Estructura y datos ----> Esta es la unica que esta marcada
Solamente datos
Añada DROP TABLE
Añadir el valor AUTO_INCREMENT
Cambiar (switch) a la tabla copiada
  #15 (permalink)  
Antiguo 28/05/2008, 08:39
 
Fecha de Ingreso: marzo-2008
Mensajes: 41
Antigüedad: 16 años
Puntos: 0
Respuesta: Error y no se donde

Buscando una solucion a mi problema he modificado el codigo pero necesito que me digais si esta bien escrito esto, puesto que he leido que switch es lo mismo que if, el codigo es este

Cita:
<?php

$link = mysql_connect("localhost", "root", "");
mysql_select_db("encuesta");

$votar_php = "".$_POST['voto_flash']."";

if($votar_php == "_level0.a"){
$sql = "UPDATE votacion SET op1_sql=op1_sql+1";
mysql_query($sql);
else if($res_php == "_level0.b"){
$sql = "UPDATE votacion SET op2_sql=op2_sql +1";
mysql_query($sql);
}
else if($res_php =="_level0.c"{
$sql = "UPDATE votacion SET op3_sql=op3_sql +1";
mysql_query($sql);
}
else if($res_php == "_level0.d"{
$sql = "UPDATE votacion SET op4_sql=op4_sql +1";
mysql_query($sql);
}
}
mysql_close($link);
?>
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 04:10.