
Sistema de resultados futbol
Publicado por rodrigo (1 intervención) el 18/03/2017 21:02:15
Estimados soy nuevo en el foro y nuevo en PHP.
Encontré un código días atrás, que consiste de un sistema de resultados de futbol y me funciona bien, calcula los resultados en base a código que adjunto y los pasa a posiciones;
Cree la sql con las tablas resultados y posiciones, todo esta ok en los campos etc, pero no sé cómo conectar el for para calcular todo a la sql. Es decir, necesito reemplazar los resultados del array fixture por los cargados en la sql, y devolver las posiciones actualizadas a la base de datos.
Si me pudieren ayudar me harían un gran favor, me tiene atascado ese tema y soy bastante novato. En resumidas cuentas, no tengo idea como conectar los id y campos de la sql, para meterlos en el array fixture, calcularlos en el código adjuntado y devolverlos a la tabla de posiciones actualizado.
saludos y muchas gracias.
$fixture = array(
array('Barcelona',4,'Manchester United',1),
array('Real Madrid',2,'Liverpool',2),
array('Barcelona',1,'Real Madrid','0'),
array('Liverpool',2,'Manchester United',0),
array('Liverpool',1,'Barcelona',1),
);
$posiciones = array(
array('Manchester United',0,0,0,0,0,0,0,0),
array('Barcelona',0,0,0,0,0,0,0,0),
array('Liverpool',0,0,0,0,0,0,0,0),
array('Real Madrid',0,0,0,0,0,0,0,0),
);
$posiciones[] = array('UC',0,0,0,0,0,0,0,0);
for ($i=0; $i<=count($fixture)-1; $i++) {
$local = $fixture[$i][0];
$visita = $fixture[$i][2];
$goles_local = $fixture[$i][1];
$goles_visita = $fixture[$i][3];
$empate = false;
if ($goles_local > $goles_visita) {
$ganador = $local;
$perdedor = $visita;
} else if ($goles_local < $goles_visita) {
$ganador = $visita;
$perdedor = $local;
} else {
$empate = true;
}
if ($empate) {
for ($r=0; $r<=count($posiciones)-1; $r++) {
if (strcmp($local,$posiciones[$r][0])==0) {
$posiciones[$r][1]++; // se suma un partido jugado
$posiciones[$r][3]++; // partido empatado
$posiciones[$r][5] += $goles_local; // goles a favor
$posiciones[$r][6] += $goles_visita; // goles en contra
$posiciones[$r][7] += $goles_local - $goles_visita; // goles en contra
$posiciones[$r][8]++; // suma un punto por empatar
}
if (strcmp($visita,$posiciones[$r][0])==0) {
$posiciones[$r][1]++; // se suma un partido jugado
$posiciones[$r][3]++; // partido empatado
$posiciones[$r][5] += $goles_visita; // goles a favor
$posiciones[$r][6] += $goles_local; // goles en contra
$posiciones[$r][7] += $goles_local - $goles_visita;
$posiciones[$r][8]++; // suma un punto por empatar
}
}
} else {
for ($r=0; $r<=count($posiciones)-1; $r++) {
if (strcmp($ganador,$posiciones[$r][0])==0) {
$posiciones[$r][1]++; // se suma un partido jugado
$posiciones[$r][2]++; // partido ganado
$posiciones[$r][5] += $goles_local; // goles a favor
$posiciones[$r][6] += $goles_visita; // goles en contra
$posiciones[$r][7] += $goles_local - $goles_visita;
$posiciones[$r][8] += 3; // suma tres puntos por ganar
}
if (strcmp($perdedor,$posiciones[$r][0])==0) {
$posiciones[$r][1]++; // se suma un partido jugado
$posiciones[$r][4]++; // partido perdido
$posiciones[$r][5] += $goles_visita; // goles a favor
$posiciones[$r][6] += $goles_local;
$posiciones[$r][7] += $goles_visita - $goles_local;
//
// no suma puntos por perder
}
}
}
}
Encontré un código días atrás, que consiste de un sistema de resultados de futbol y me funciona bien, calcula los resultados en base a código que adjunto y los pasa a posiciones;
Cree la sql con las tablas resultados y posiciones, todo esta ok en los campos etc, pero no sé cómo conectar el for para calcular todo a la sql. Es decir, necesito reemplazar los resultados del array fixture por los cargados en la sql, y devolver las posiciones actualizadas a la base de datos.
Si me pudieren ayudar me harían un gran favor, me tiene atascado ese tema y soy bastante novato. En resumidas cuentas, no tengo idea como conectar los id y campos de la sql, para meterlos en el array fixture, calcularlos en el código adjuntado y devolverlos a la tabla de posiciones actualizado.
saludos y muchas gracias.
$fixture = array(
array('Barcelona',4,'Manchester United',1),
array('Real Madrid',2,'Liverpool',2),
array('Barcelona',1,'Real Madrid','0'),
array('Liverpool',2,'Manchester United',0),
array('Liverpool',1,'Barcelona',1),
);
$posiciones = array(
array('Manchester United',0,0,0,0,0,0,0,0),
array('Barcelona',0,0,0,0,0,0,0,0),
array('Liverpool',0,0,0,0,0,0,0,0),
array('Real Madrid',0,0,0,0,0,0,0,0),
);
$posiciones[] = array('UC',0,0,0,0,0,0,0,0);
for ($i=0; $i<=count($fixture)-1; $i++) {
$local = $fixture[$i][0];
$visita = $fixture[$i][2];
$goles_local = $fixture[$i][1];
$goles_visita = $fixture[$i][3];
$empate = false;
if ($goles_local > $goles_visita) {
$ganador = $local;
$perdedor = $visita;
} else if ($goles_local < $goles_visita) {
$ganador = $visita;
$perdedor = $local;
} else {
$empate = true;
}
if ($empate) {
for ($r=0; $r<=count($posiciones)-1; $r++) {
if (strcmp($local,$posiciones[$r][0])==0) {
$posiciones[$r][1]++; // se suma un partido jugado
$posiciones[$r][3]++; // partido empatado
$posiciones[$r][5] += $goles_local; // goles a favor
$posiciones[$r][6] += $goles_visita; // goles en contra
$posiciones[$r][7] += $goles_local - $goles_visita; // goles en contra
$posiciones[$r][8]++; // suma un punto por empatar
}
if (strcmp($visita,$posiciones[$r][0])==0) {
$posiciones[$r][1]++; // se suma un partido jugado
$posiciones[$r][3]++; // partido empatado
$posiciones[$r][5] += $goles_visita; // goles a favor
$posiciones[$r][6] += $goles_local; // goles en contra
$posiciones[$r][7] += $goles_local - $goles_visita;
$posiciones[$r][8]++; // suma un punto por empatar
}
}
} else {
for ($r=0; $r<=count($posiciones)-1; $r++) {
if (strcmp($ganador,$posiciones[$r][0])==0) {
$posiciones[$r][1]++; // se suma un partido jugado
$posiciones[$r][2]++; // partido ganado
$posiciones[$r][5] += $goles_local; // goles a favor
$posiciones[$r][6] += $goles_visita; // goles en contra
$posiciones[$r][7] += $goles_local - $goles_visita;
$posiciones[$r][8] += 3; // suma tres puntos por ganar
}
if (strcmp($perdedor,$posiciones[$r][0])==0) {
$posiciones[$r][1]++; // se suma un partido jugado
$posiciones[$r][4]++; // partido perdido
$posiciones[$r][5] += $goles_visita; // goles a favor
$posiciones[$r][6] += $goles_local;
$posiciones[$r][7] += $goles_visita - $goles_local;
//
// no suma puntos por perder
}
}
}
}
Valora esta pregunta


0