Foros del Web » Programando para Internet » PHP »

A quien lo entienda

Estas en el tema de A quien lo entienda en el foro de PHP en Foros del Web. Realicé este código y me dá un error que por más que lo repaso no lo localizo, a ver si me pueden echar una mano. ...
  #1 (permalink)  
Antiguo 06/02/2003, 10:28
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
A quien lo entienda

Realicé este código y me dá un error que por más que lo repaso no lo localizo, a ver si me pueden echar una mano. Si necesitan que les explique alguna parte del mismo, no duden en decirmenlo.

Código PHP:
<?php 
    
include("../mantenimiento/conex.inc"); 
    
$link=Conectarse(); 
$result=mysql_query("select * from RANKING where 
FECHA_RANKING = '$fecha' AND HORA_RANKING = '$hora' AND 
UNIONES = 'a'"
,$link)or die(mysql_error());;
if(
$row mysql_fetch_array($result))
$id_ranking $row["ID_RANKING"];
$id_ranking2 = ($id_ranking 1);
$dni_remitente $row["DNI_REMITENTE"];
$id_torneo $row["ID_TORNEO"];

$result2=mysql_query("select DNI_DEPORTISTA, ID_TORNEO, 
ID_RANKING, JORNADA from RANKING where DNI_DEPORTISTA 
= '$dni_deportista_A' and ID_TORNEO= '$id_torneo'"
,$link)or die(mysql_error());;
$row2 mysql_num_rows($result2);

if (
$row2 <= 1) {
$jornada2 1; }
elseif (
$row2 1) {
$jornada2 $row2;}

mysql_query("UPDATE RANKING SET JORNADA = '$jornada2' 
where ID_RANKING='$id_ranking'"
,$link) or die(mysql_error()); 

if (
$jornada2 <= 1) {
$jornada_puntosA 1; }
elseif (
$jornada2 1) {
$jornada_puntosA = ($jornada2 1); }

$result3=mysql_query("select DNI_DEPORTISTA, ID_TORNEO, 
ID_RANKING, JORNADA from RANKING where DNI_DEPORTISTA 
= '$dni_deportista_B' and ID_TORNEO = '$id_torneo'"
,$link)or die(mysql_error());;
$row3 mysql_num_rows($result3);

if (
$row3 <= 1) {
$jornada4 1; }
elseif (
$row3 1) {
$jornada4 $row3;}

mysql_query("UPDATE RANKING SET JORNADA = '$jornada4' 
where ID_RANKING='$id_ranking2'"
,$link) or die(mysql_error());

if (
$jornada4 <= 1) {
$jornada_puntosB 1; }
elseif (
$jornada4 1) {
$jornada_puntosB = ($jornada2 1); }

$result_puntos_a=mysql_query("select PUNTOS, GANA_PIERDE, 
ID_RANKING from RANKING where DNI_DEPORTISTA 
= '$dni_deportista_A' and ID_TORNEO= '$id_torneo' and 
JORNADA = '$jornada_puntosA'"
,$link) or die(mysql_error());;
if(
$row_puntos_a mysql_fetch_array($result_puntos_a)) {

$puntosA $row_puntos_a["PUNTOS"];
if (
$ganador == 'a') {
    
$puntos_a = ($puntosA 3);
    
$gana_pierdeA 'Sí'; }
    elseif (
$ganador == 'b'){
    
$puntos_a = ($puntosA 1);
    
$gana_pierdeA 'No'; }}
mysql_query("UPDATE RANKING SET PUNTOS = '$puntos_a', 
GANA_PIERDE = '$gana_pierdeA' where 
ID_RANKING='$id_ranking'"
,$link) or die(mysql_error());; 
//A partir de aquí está el problema, ya que no me localiza los 
//puntos de la variable $jornada_puntosB, o algo parecido
//El caso es que si se fijan es exactamente igual que el result 
//anterior y el anterior si funciona y me suma o resta los puntos, 
//pero ¿por que este $result_puntos_B no lo hace?
$result_puntos_b=mysql_query("select PUNTOS from RANKING 
where DNI_DEPORTISTA = '$dni_deportista_B' and 
ID_TORNEO= '$id_torneo' and JORNADA 
= '$jornada_puntosB'"
,$link) or die(mysql_error());;
if(
$row_puntos_b mysql_fetch_array($result_puntos_b)) {

$puntosB $row_puntos_b["PUNTOS"];
if (
$ganador == 'b'){
    
$puntos_b = ($puntosB 3);
    
$gana_pierdeB 'Sí'; }
    elseif (
$ganador == 'a'){
    
$puntos_b = ($puntosB 1);
    
$gana_pierdeB 'No'; }}
mysql_query("UPDATE RANKING SET PUNTOS = '$puntos_b', 
GANA_PIERDE = '$gana_pierdeB' where 
ID_RANKING='$id_ranking2'"
,$link) or die(mysql_error());; 
//si paso la variable $puntosB, cuando la recojo es cero, 
//por lo cual ahí está el problema, ¿por qué $puntosB es 0?
header("Location: acta_final.php?
id_ranking=$id_ranking&id_ranking2=$id_ranking2&dni=$dni_remitente&puntosb=$puntosB"
);  
?>
Gracias
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.

Última edición por ferent; 06/02/2003 a las 10:33
  #2 (permalink)  
Antiguo 06/02/2003, 11:55
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
Que no quede en el olvido, pliiiisss
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
  #3 (permalink)  
Antiguo 06/02/2003, 12:21
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Es dificil evaluar un script q use Base de datos ..

Normalmente siempre q se pregunta en el foro la gente pone el "Codigo" q le da el error .. fuera de contexto y en casos de Base de datos sin esa estructura ni datos q probar ..

A no ser q sea un error muyy obvio de sintax .. suele "asustar" ver código así ..

Recuerda: Cuantos mas datos aportes .. mas facil lo pones para quien pretenda ayudarte.

Imagina tu .. q no das con el problema y eso q estas probando con todo .. como nos vemos los que intentamos ayudar en estas situaciones ...

Un saludo,
  #4 (permalink)  
Antiguo 06/02/2003, 12:24
Avatar de Kernellover  
Fecha de Ingreso: noviembre-2002
Ubicación: Perdido
Mensajes: 251
Antigüedad: 15 años, 1 mes
Puntos: 0
Si fueras tan amable de decir que tipo de error da, sería de gran ayuda...

Por otro lado nos podrías resumir un poco que hace, para que es esto y que tendría que hacer. Mas que nada es para no tener que hacer el arduo esfuerzo de comprender el porque de todo esto.

Gracias...
  #5 (permalink)  
Antiguo 06/02/2003, 12:25
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
Tienes toda la razón, disculpa por todo.

Un abrazo.
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
  #6 (permalink)  
Antiguo 06/02/2003, 14:38
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Hola,

Cuando sospeches que no te funciona una consulta de BD, intenta probar que pasa cuando la metes directamente a la BD por medio de un GUI como phpmyadmin o mysql-front. Pero recuerda que tienes que meterle la misma consulta que se ejecuta en la pagina. Para eso lo mejor es que en la pagina hagas un echo de la consulta (por eso suelo montar las consultas en un variable que luego paso a mysql_query). En tu caso puedes hacer:
Código PHP:
$consulta="select PUNTOS from RANKING 

where DNI_DEPORTISTA = '$dni_deportista_B' and 

ID_TORNEO= '$id_torneo' and JORNADA 

= '$jornada_puntosB'"
;
echo 
$consulta."<br />";
$result_puntos_b=mysql_query($consulta,$link) or die(mysql_error()); 
Asi ademas miras si las variables cogen el valor que esperabas.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 03:06.