Appoggiare valori dentro un array

Ciao a tutti.

Ho il seguente codice:

<?php
/* Mi connetto al database */
$host = 'localhost';
$user = 'root';
$password = 'ciao';
$database = 'personale';
$link=mysql_connect("$host","$user","$password")
or die ("Non riesco a connettermi a <b>$host");
mysql_select_db ($database, $link)
or die ("Non riesco a selezionare il db $database<br>");


$indaga = "SELECT * FROM desk WHERE desk = 'derivati'";
$query_indaga = mysql_query ($indaga,$link)
or die ("Non riesco ad eseguire la richiesta $query_indaga");
$num_righe = mysql_num_rows($query_indaga);


$array_matricola = array();
$indice = 0;
while ($valori = mysql_fetch_array ($query_indaga)){
$array_matricola[] = $valori["matricola"];
$indice++;
}


for ($indice = 0 ; $indice <= $num_righe; $indice++) {
$prima_fascia = "SELECT `$array_matricola[0]`.data, turni.minuti FROM `$array_matricola[0]` INNER JOIN turni ON `$array_matricola[0]`.turno = turni.codice WHERE (((`$array_matricola[0]`.data)= '2006-09-11'))";
$query_prima_fascia = mysql_query ($prima_fascia,$link)
or die ("Non riesco ad eseguire la richiesta $query_prima_fascia");
               {
                    $array_minuti = array();
                  while ($valori = mysql_fetch_array ($query_prima_fascia)){
                  $array_minuti[] = $valori["minuti"];
                  }
               }
}
echo "$array_matricola[0].$array_minuti[0]<br>";
echo "$array_matricola[1].$array_minuti[1]<br>";
echo "$array_matricola[2].$array_minuti[2]<br>";
echo "$array_matricola[3].$array_minuti[3]<br>";
echo "$array_matricola[4].$array_minuti[4]<br>";
echo "$array_matricola[5].$array_minuti[5]<br>";
echo "$array_matricola[6].$array_minuti[6]<br>";
echo "$array_matricola[7].$array_minuti[7]<br>";
echo "$array_matricola[8].$array_minuti[8]<br>";
echo "$array_matricola[9].$array_minuti[9]<br>";
echo "$array_matricola[10].$array_minuti[10]<br>";
mysql_close ($link);
?>

Il codice funziona solo in parte, in quanto i valori delle matricole contenuti dentro l'array matricole vengono correttamente stampate. Non riesco a stampare i  valori contenuti nell'array minuti, o meglio mi stampa solo il primo quello associato ad $array_matricola[0].

Non riesco ad accodare i valori del campo minuti nell'array minuti.

Come faccio a ciclare e ad alimentare l'array minuti?

Grazie

Ciao

Stone :bye:

inviato 10 anni fa
stone
X 0 X

Ho cambiato così il codice e i minuti venogno stampati accanto ai numeri di matricola, ma viene stampato sempre lo stesso valore ... :(

<?php
/* Mi connetto al database */
$host = 'localhost';
$user = 'root';
$password = 'ciao';
$database = 'personale';
$link=mysql_connect("$host","$user","$password")
or die ("Non riesco a connettermi a <b>$host");
mysql_select_db ($database, $link)
or die ("Non riesco a selezionare il db $database<br>");

$indaga = "SELECT * FROM desk WHERE desk = 'derivati'";
$query_indaga = mysql_query ($indaga,$link)
or die ("Non riesco ad eseguire la richiesta $query_indaga");
$num_righe = mysql_num_rows($query_indaga);

$array_matricola = array();
$indice = 0;
while ($valori = mysql_fetch_array ($query_indaga)){
$array_matricola[] = $valori["matricola"];
$indice++;
}

for ($indice = 0 ; $indice <= $num_righe; $indice++) {
$prima_fascia = "SELECT `$array_matricola[0]`.data, turni.minuti FROM `$array_matricola[0]` INNER JOIN turni ON `$array_matricola[0]`.turno = turni.codice WHERE (((`$array_matricola[0]`.data)= '2006-09-11'))";
$query_prima_fascia = mysql_query ($prima_fascia,$link)
or die ("Non riesco ad eseguire la richiesta $query_prima_fascia");

$num_minuti = count($array_matricola);
$array_minuti = array();
$indice_ = 0;
$indice_++;
for ($indice_ = 0 ; $indice_ <= $num_minuti; $indice_++) {
$minuti = "SELECT `$array_matricola[0]`.data, turni.minuti FROM `$array_matricola[0]` INNER JOIN turni ON `$array_matricola[0]`.turno = turni.codice WHERE (((`$array_matricola[0]`.data)='2006-09-11'))";
$query_minuti = mysql_query ($minuti,$link)
or die ("Non riesco ad eseguire la richiesta $query_minuti");
while ($valori = mysql_fetch_array ($query_minuti)){
$array_minuti[] = $valori["minuti"];
}
}
}
echo "$array_matricola[0].$array_minuti[0]<br>";
echo "$array_matricola[1].$array_minuti[1]<br>";
echo "$array_matricola[2].$array_minuti[2]<br>";
echo "$array_matricola[3].$array_minuti[3]<br>";
echo "$array_matricola[4].$array_minuti[4]<br>";
echo "$array_matricola[5].$array_minuti[5]<br>";
echo "$array_matricola[6].$array_minuti[6]<br>";
echo "$array_matricola[7].$array_minuti[7]<br>";
echo "$array_matricola[8].$array_minuti[8]<br>";
echo "$array_matricola[9].$array_minuti[9]<br>";
echo "$array_matricola[10].$array_minuti[10]<br>";
mysql_close ($link);
?>

 :wallbash:

Stone

risposto 10 anni fa
stone
X 0 X

Mi sembra normale visto che la seconda query fa riferimento sempre a $array_matricola[0]:

$prima_fascia = "SELECT `$array_matricola[0]`.data, turni.minuti FROM `$array_matricola[0]` INNER JOIN turni ON `$array_matricola[0]`.turno = turni.codice WHERE (((`$array_matricola[0]`.data)= '2006-09-11'))";

probabilmente devi sostituire $array_matricola[0] con {$array_matricola[$i]}

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda