Cita:
Iniciado por pateketrueke lo que yo no entiendo, es.. ¿porque el uso de dicha condición interna?
ya que la veo completamente inútil, absurda y sin fundamentos lógicos...
¿cual es el argumento de emplear dicha lógica?
me imagino que esto sería lo mismo, o hasta mejor!!
Código PHP:
$array = array();
while( $row = mysql_fetch_array( $res, MYSQL_ASSOC ) )
{
$array[]=$row['id'];
}
osea, si, crear el array de forma inteligente suena bien... ¿pero porque asignarlo al índice 1?
Código PHP:
// MAL
$array = array(1 => $row['id']);
// BIEN
$array = array($row['id']);
y de ahí en adelante ya tienes todo en un vector bien organizado...
Hola paketetrueke, te agradezco tu ayuda.
Bueno, no he practicado mucho los arrays, así que, cuando cree el código no me pareció inútil, absurdo y sin fundamentos lógicos el usar un chivato.
En cualquier caso, he probado el código que me has dejado y, tienes razón, hace exáctamente lo mismo, pero no soluciona mi problema. Me sigue haciendo una sóla inserción en lugar de 2.
Lo de asignarlo al índice 1 es porque copié el código de un compi (no sé si de aquí o de cualquier otra página) pues como bien he dicho no tengo mucha experiencia con arrays (por desgracia).
Muchas gracias por tu ayuda....se te ocurre qué puede estar pasando??
Te dejo lo que tengo ahora mismo:
Código PHP:
$conexion = bd();
/*Aquí tenemos todos los jugadores que son porteros y que no han sido ya dados a otros usuarios de la liga*/
$sql = "SELECT id
FROM jugadores
WHERE demarcacion = 'Portero'";
$res = mysql_query($sql);
/*Creamos una variable chivato para ver si es la primera vez que entramos en el while, en cuyo caso, lo que haremos será inicializar el array*/
$array = array();
/*Iniciamos un while para recorrer todos los porteros que aún están disponibles para ser elegidos*/
while( $row = mysql_fetch_array( $res, MYSQL_ASSOC ) )
{
$array[]=$row['id'];
}
/*Aquí vamos a elegir 2 elementos de manera aleatoria de entre todos los porteros disponibles para elegir*/
foreach ($array as $valor) {
echo "Valor: $valor<br>";
}
shuffle($array); // desordena aleatoriamente el array
$array = array_slice($array,0,2); // coge los 6 primeros elementos desordenados
foreach ($array as $valor) {
echo "NuevoArray: $valor<br>";
}
/*Ahora, insertamos en la base de datos los porteros elegidos al azar*/
for ($i = 0; $i < 2; $i++)
{
$query = "INSERT INTO plantillas (id, nombreEquipo, usuario, jugador, liga, tipo)
VALUES ('0', '".$nombreEquipo."', '".$user."', '".$array[$i]."', '".$nombreLiga."', 'a')";
$result = mysql_query( $query );
}
Gracias!!