Foros del Web » Programando para Internet » PHP »

Error mysql_result() traumatico

Estas en el tema de Error mysql_result() traumatico en el foro de PHP en Foros del Web. Hola a todos, pues os digo, hago la siguiente sentencia: Código PHP: $leer_unidad1_ataque =  mysql_query ( "SELECT * FROM objeto INNER JOIN villa_ejercito ON objeto.id= villa_ejercito.unidad1_arma WHERE villa_ejercito.id='" . $_COOKIE [ "juego_jugador_id" ]. "'" );  De ...
  #1 (permalink)  
Antiguo 21/08/2007, 12:18
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 18 años, 7 meses
Puntos: 5
Error mysql_result() traumatico

Hola a todos, pues os digo, hago la siguiente sentencia:
Código PHP:
$leer_unidad1_ataquemysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito ON objeto.id= villa_ejercito.unidad1_arma WHERE villa_ejercito.id='".$_COOKIE["juego_jugador_id"]."'"); 
De aqui se supone que recogo todos los campos de la tabla "objeto" (una fila), y despues uso la siguiente funcion para recoger el valor de un campo:
Código PHP:
$unidad1_ataquemysql_result($leer_unidad1_ataque,13); 
La tabla objeto tiene 16 campos, pero al usar la funcion, me devuelve el siguiente error:
Código:
Warning: mysql_result() [function.mysql-result]: Unable to jump to row 13 on MySQL result index 19 in C:\Vertrigo\www\Imperiado\PAGINAS\Juego\ejercito_informacion.php on line 72
Lo extraño es que si en vez de coger el campo numero 13, cogo el numero 0 si que me devuelve su valor, pero a partir de 0 me devuelve error diciendome que no puede saltar a ese campo
¿Que hago mal?

saludos!
  #2 (permalink)  
Antiguo 21/08/2007, 12:52
Avatar de webseficientes  
Fecha de Ingreso: enero-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 320
Antigüedad: 19 años, 3 meses
Puntos: 14
Re: Error mysql_result() traumatico

vos estas seguro de que existe el registro 13? como lo comprobaste?
__________________
Gerardo Benitez
Programador Web Freelance, SEO, Diseño web
  #3 (permalink)  
Antiguo 21/08/2007, 13:14
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 18 años, 7 meses
Puntos: 5
Re: Error mysql_result() traumatico

Que como lo comprobe?
Porque tengo yo la bd
y se que esa tabla tiene 16 columnas
A ver si me confundo, lo que hay que indicar es la columna, no el registro supongo
  #4 (permalink)  
Antiguo 21/08/2007, 14:23
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 17 años
Puntos: 6
Re: Error mysql_result() traumatico

Hola por ke no pones estas lineas:

$leer_unidad1_ataque= "SELECT * FROM objeto INNER JOIN villa_ejercito ON objeto.id= villa_ejercito.unidad1_arma WHERE villa_ejercito.id='".$_COOKIE["juego_jugador_id"]."'";
$res = mysql_query($leer_unidad1_ataque) or die('Consulta fallida: ' . mysql_error());
$row=mysql_fetch_array($res);
$tam=sizeof($row); $i=0;
while($i<$tam){
print_r($row[$i++]);
}

Salu2
__________________
"Eres grande por que caminas entre gigantes"
  #5 (permalink)  
Antiguo 21/08/2007, 15:08
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 18 años, 7 meses
Puntos: 5
Re: Error mysql_result() traumatico

Esto es lo que me muestra:
Código:
75Espada cortaoa004.gifPequeña espada de metalequipablearma100100050000000132Unidad 13410376777875Unidad 217410376777875Unidad 320000Unidad 4000000000
Lo raro esque salen datos de amblas tablas, de la tabla objeto y de la tabla ejercito =s

¿porque? saludos!
  #6 (permalink)  
Antiguo 21/08/2007, 15:11
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Error mysql_result() traumatico

Puedes hacer esto tambien:
Código PHP:
$unidad1_row mysql_fetch_row$leer_unidad1 );
$unidad1_ataque=  $unidad1_row[13]; 
Saludos.
  #7 (permalink)  
Antiguo 21/08/2007, 15:21
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 18 años, 7 meses
Puntos: 5
Re: Error mysql_result() traumatico

Si lo se, pero tendria que hacer ese row unas 8 veces mas. de veras.... eso ya me lo he planteado, pero si quiero usar result es porque es mas rapido ya que solo quiero 1 campo ¿entiendes?..
  #8 (permalink)  
Antiguo 21/08/2007, 15:26
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Error mysql_result() traumatico

Si, pero si te esta marcando un error es porque algo te esta impidiendo saltar al resultado y descargarlo, solo te estoy dando una opcion.

Saludos.
  #9 (permalink)  
Antiguo 21/08/2007, 15:27
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 18 años, 7 meses
Puntos: 5
Re: Error mysql_result() traumatico

¿Que diferencia hay de consumo entre mysql_fetch_row y mysql_result?

saludos!
  #10 (permalink)  
Antiguo 21/08/2007, 15:29
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Error mysql_result() traumatico

Adicionalmente si lees la documentacion de mysql_result, te indica los parametros:

mysql_result( resource $result, int $row_number[, mixed $field ]);

Esto que significa? que si tu usas mysql_result( $unidad_1, 13 ); le estas diciendo que te de el primer valor de la fila 13 de tu resultado, y por lo que veo todos tus querys tienen LIMIT 1 para que solo busque en 1 fila, por lo que la fila 13 no existe, tendrias que hacer algo asi:

Código PHP:
$unidad1_ataque mysql_result$leer_unidad1_ataque013 ); 
Ahora si ves la documentacion dicen que es mas rapido usar mysql_fetch_row para obtener la fila pero puedes usarlo asi.

Saludos.
  #11 (permalink)  
Antiguo 21/08/2007, 15:43
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 18 años, 7 meses
Puntos: 5
Re: Error mysql_result() traumatico

Ok al final uso row que por lo menos funciona =), aunque creo que result estaba desfachado

saludos! y gracias
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 21:48.