Ci risiamo___Array su intero codice

Monital

Utente Attivo
15 Apr 2009
778
2
18
E la tabella degli utenti, invece, come è strutturata? In che campo è contenuto il nome dell'utente?

c'è un tabella con tutti gli utenti è il suo id è

ID_Utenti

strutturata così

ID_Utenti Nome Citta etc.

1 Giovanni Bologna
2 Marco Bari

etc..

ovviamente non ci sono duplicati

quindi io dovrei strare

in pratica vorrei estrarre tutti i nomi utenti come array come già visto e poi nell'altra tabella estarre l'età media dei nominativi associati a tal utente

al momento ho un file che li estrae 1 x 1 e recupera l'eta media 1 x 1 però vorrei evitare che ad ogni nuovo utente di mettere mano al codice

in pratica come hai risolto in questo topic dove ancora ti ringrazio

immagino stai pensando alla join al momento materia ostica per me :book:
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
In realtà, senza complicarsi troppo la vita, io farei così. Modifica il while in cui recuperi gli ID degli utenti in questo modo:
PHP:
$nomi = array();

while($linea = mysql_fetch_array($result, MYSQL_ASSOC))
{ 
	$dati[] = $linea['i_utente'];
	$nomi[] = $linea['Nome'];
}
Poi per recuperare l'età media dei giocatori di ogni utente fai così:
PHP:
$avgs = array();

foreach($nomi as $user)
{
	$sql = "SELECT * FROM giocatori WHERE Utente = '{$user}'";
	$query = mysql_query($sql) or die(mysql_error());
	
	$total = 0;
	
	while($row = mysql_fetch_assoc($query))
		$total += $row['Eta'];
	
	$rows = mysql_num_rows($query);
	
	$avgs[$user] = ($rows > 0) ? ($total / $rows) : 0;
	$avgs[$user] = round($avgs[$user]);
}
Dovrebbe funzionare.
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
Certo, è normale che ti restituisca un array... se hai 3 utenti l'array sarà composto da 3 elementi la cui chiave è il nome dell'utente e il valore la media delle età dei suoi giocatori. Prova a fare:
PHP:
print_r($avgs);
Per vedere quello che ti restituisce.
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
Certo, è normale che ti restituisca un array... se hai 3 utenti l'array sarà composto da 3 elementi la cui chiave è il nome dell'utente e il valore la media delle età dei suoi giocatori. Prova a fare:
PHP:
print_r($avgs);
Per vedere quello che ti restituisce.

ok mi da l'array completo di chiave e valore però non risco a separarli

ho provato con

PHP:
while (list($chiave,$valore) = each($avgs))

e stampando $valore e $chiave me li divide ma poi non mi fa l'implode
PHP:
$val = "'".implode("','", $valore)."'";

ed ame serve che i valori sinao "1","2", etc.

madò sti array mi faranno impazzire
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
A parte che per gli array c'è l'apposito ciclo foreach... per eseguire l'implode dell'array basta che fai così:
PHP:
$val = '"' . implode('","', $avgs) . '"';
E avrai "1","2","3","4" e così via...

si mi so spiegato male mi servono '1','2', etc. ma quessto loa vevamo già visto e so farlo

avevo provato
PHP:
$val = "'".implode("','", $avgs)."'";

ma non mi restituiva niente

probabilmente ho sbagliato qualcosa

il foreach l'ho provaato ma non mi restituiva niente, per questo ho provato con while probabilemnte stos bagliando qualcosa

riprovo e ti faccio sapere
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
mamma miaaaaaaaaaaaaaa

uff
che faticaccia non riuscivo a fare l'up date rispetto l'id ho provato di tutte le maniere

foreach su $avgs e tant'altro

poi conto fino a 5 tazza di caffè e sigaretta

toh l'illuminazine

PHP:
  $avgs[$user] = ($rows > 0) ? ($total / $rows) : 0;
    $avgs[$user] = round($avgs[$user]);

l'ho cambiato in


PHP:
$avgs[] = round((($rows > 0) ? ($total / $rows) : 0),2);

e così finalmente il foreach


PHP:
foreach($dati as $key=>$id)
{ 


$value1 = $avgs[$key];

è andato e so risucito afare l'update

è stato un grosso errore non inserire nella tabella dove sono presenti i gicoatori, l'id del utente ma solo il suo nome. se era presente anche l'id sarebbe stato molto più facile

ancora una volta

GRAZIE

p.s.

a breve apro un altro topo con un altra chicca che mi martella :book::book:

:hammer:
 
Discussioni simili
Autore Titolo Forum Risposte Data
otto9due Leggere valore da array multidimensionale a chiavi dinamiche PHP 1
M Passaggio variabili array php su un tasto jq PHP 3
M Somma inversa di Array C/C++ 2
MarcoGrazia Iterazione array PHP 5
N Passare array da php a javascript PHP 5
G Ordinare un array multidimensionale PHP 4
H Errore su array associativo PHP 1
K Array senza ripetizioni Presentati al Forum 4
A Gestione array multidimensionale PHP 6
otto9due Più chiavi in array con array_key_exists() PHP 0
M Array associativi php su 2 campi mysql PHP 10
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
T PROBLEMA CON ARRAY PHP 8
L Sessione e array per utenti PHP 0
R Importazione csv su mysql tramite array PHP 2
elpirata Ricavare e stampare indirizzo ip da array associativo PHP 0
P Ciclare tra array di oggetti PHP 1
R Raggruppare valori array PHP 5
S Come conoscere la posizione di numeri in un array escludendo i doppioni PHP 4
D Popolare array PHP 8
R Includere elementi array fra apici PHP 1
P Array da foreach PHP 2
N Variabile di sessione è un array PHP7 PHP 3
R Scorporare array e recuperare record tabella PHP 10
A Contare gli elementi di un array PHP 13
A Importare array in mysql PHP 1
A Array di immagini Sviluppo app per Android 10
D Chiave unica in estrazione dati da array php PHP 0
D Spazio vuoto in un elemento di un array php PHP 2
S Come filtrare valori di un array PHP 4
mazman mysqli_query() mi ritorna un array vuoto anche se presente un record nella tabella PHP 13
A Non è un array e nemmeno un intero, che tipo di dato è? Javascript 1
max1974 PHP, Array Multidimensionale e Grafici PHP 22
S [PHP] Confrontare due array con valori quasi uguali PHP 2
MarcoGrazia [PHP] Unioni di due array con somma di valori PHP 6
R [PHP] Visualizzazione dati Array PHP 2
S [PHP] Eliminare doppioni array e rinumerare le posizioni PHP 2
M Importare - Manipolare Json Array Sviluppo app per Android 2
M [PHP] Problemi su inserimento array nel db PHP 7
M [PHP] Visualizzare un array partendo dal numero 1 e non 0 PHP 5
G [ASP] Ciclare i valori di 2 array Classic ASP 2
S [PHP] Estrarre elementi array su più variabili PHP 5
S [PHP] Estrarre dati tabella in diversi array PHP 2
max1974 [PHP] Raggruppare array PHP 4
A [PHP] Caricamento database in array PHP 11
G sql select con array in php PHP 1
L [Java] Aggiungere elementi ad array JSON Java 0
S [PHP] individuare chiave elemento array PHP 7
A [PHP] Script con array con numeri che iniziano per 00 PHP 2
Emix [Javascript] Somma con array input HTML Javascript 1

Discussioni simili