• Home
  • Forum
  • Fare Web
  • PHP

Ci risiamo___Array su intero codice

  • Creatore Discussione Creatore Discussione Monital
  • Data di inizio Data di inizio 12 Set 2010
Prec.
  • 1
  • 2
  • 3
Succ.
Primo Prec. 2 di 3 Succ. Ultimo

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 5 Gen 2011
  • #21
Allora il mio script dovrebbe funzionare perfettamente... prova a modificare il ciclo così:
PHP:
print_r($dati);
print_r($dati2);

foreach($res as $key => $id) 
{ 
    $value = $totusc[$key]; 
     
    $sql = "UPDATE mon_prova SET entrate = '{$value}' WHERE id = '{$id}'"; 
    print_r($sql);

    mysql_query($sql) or die(mysql_error()); 
}
E dimmi cosa viene stampato a video.
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
  • 5 Gen 2011
  • #22
Array ( [0] => 1 [1] => 6 [2] => 9 [3] => 5 [4] => 13 [5] => 12 [6] => 8 [7] => 10 [8] => 7 [9] => 24 [10] => 16 [11] => 2 [12] => 4 [13] => 25 [14] => 19 [15] => 14 [16] => 20 [17] => 11 [18] => 3 [19] => 23 [20] => 26 [21] => 15 [22] => 17 [23] => 18 [24] => 22 [25] => 21 ) Array ( [0] => 292 [1] => 318 [2] => 423 [3] => 289 [4] => 433 [5] => 451 [6] => 536 [7] => 443 [8] => 761 [9] => 328 [10] => 339 [11] => 474 [12] => 542 [13] => 246 [14] => 390 [15] => 850 [16] => 458 [17] => 422 [18] => 254 [19] => 254 [20] => 305 [21] => 487 [22] => 412 [23] => 271 [24] => 373 [25] => 278 )
Clicca per allargare...

ma non effettua l'update


@edit
modificato il quote, avevo sbagliato la prima variabile e non mi restituiva l'array
 
Ultima modifica: 5 Gen 2011

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 5 Gen 2011
  • #23
Ops, ho sbagliato io. Prova così:
PHP:
foreach($dati as $key => $id) 
{ 
    $value = $dati2[$key]; 
     
    $sql = "UPDATE mon_prova SET entrate = '{$value}' WHERE id = '{$id}'"; 
    mysql_query($sql) or die(mysql_error()); 
}
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
  • 5 Gen 2011
  • #24
alessandro1997 ha scritto:
Ops, ho sbagliato io. Prova così:
PHP:
foreach($dati as $key => $id) 
{ 
    $value = $dati2[$key]; 
     
    $sql = "UPDATE mon_prova SET entrate = '{$value}' WHERE id = '{$id}'"; 
    mysql_query($sql) or die(mysql_error()); 
}
Clicca per allargare...

Oggi video tastiera router stampante stavo cercando di imparare a volare, ma nel momento in cui mi sono accorto che avevo messo $res al posto di $dati e dopo averlo sostuito lo script ha funzionato alla PERFEZIONE, sono tornati sulla mia scrivania :mavieni:

non ho parole aless sei un grande non c'è la faccina di addorazione ma la meriti tutta

questo sistema funge anche epr ricavare l'età media?

PHP:
  $query = "SELECT AVG(Eta) as tot_eta FROM utenti WHERE idutente='1';
    $risultato = mysql_query($query);
		if($risultato) {
  $row = mysql_fetch_array($risultato);
 $medeta=round($row['tot_eta'],1); // <- qui hai il risultato che ti aspetti
echo $medeta;
 }

faccio una query epr ogni utente cmq mò so troppo contento di sto foreach vado a lavorarci su

Grazi grazi ed ancora grazie


:book::book::book::book::book::book::book::book::book:
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 5 Gen 2011
  • #25
Potresti fare una cosa del genere:
PHP:
$sql = 'SELECT * FROM utenti';
$query = mysql_query($sql) or die(mysql_error());

$total = 0;

while($user = mysql_fetch_assoc($user))
	$total += $user['Eta'];

$rows = mysql_num_rows($total);

if($rows > 0)
	$avg = round($total / $rows, 1);
Fammi sapere se ha funzionato!
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
  • 6 Gen 2011
  • #26
fiuuuuuuuuuuuuuuuu

scusa so stato preso dal codice precedente :hammer: stavo impazzendo sulle addizioni e sotrattozioni degli array poi ho risolto con una nuova tabella dove memorizzo i dati e successivamente li riestraggo e li sottraggo

cmq no non funzionail codice che hai postato mi resituisce pagina bianca, avevi dimenticato le graffe all' if e le ho aggiunte ma niente
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 6 Gen 2011
  • #27
Le graffe nell'if non servono, perché successivamente viene eseguita una sola istruzione e si possono anche omettere. Comunque è normale che il mio script ti dia pagina bianca, perché non stampa a video nulla. Tuttavia, dopo aver eseguito quelle istruzioni, la variabile $avg dovrebbe contenere la media delle età.
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
  • 6 Gen 2011
  • #28
alessandro1997 ha scritto:
Le graffe nell'if non servono, perché successivamente viene eseguita una sola istruzione e si possono anche omettere. Comunque è normale che il mio script ti dia pagina bianca, perché non stampa a video nulla. Tuttavia, dopo aver eseguito quelle istruzioni, la variabile $avg dovrebbe contenere la media delle età.
Clicca per allargare...

si la'vevo aggiunto io l'echo a $avg
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 6 Gen 2011
  • #29
Ho sbagliato io. Modifica questa riga:
PHP:
$rows = mysql_num_rows($total);
Così:
PHP:
$rows = mysql_num_rows($query);
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
  • 6 Gen 2011
  • #30
alessandro1997 ha scritto:
Ho sbagliato io. Modifica questa riga:
PHP:
$rows = mysql_num_rows($total);
Così:
PHP:
$rows = mysql_num_rows($query);
Clicca per allargare...

mi restituisce 1.1

che ovvaimene non ho

nella select ho aggiunto il where dove definisco l'utente da cercare

e non capisco bene perchè haid efinito total= a 0
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 6 Gen 2011
  • #31
Modifica questa riga:
PHP:
$avg = round($total / $rows, 1);
Così:
PHP:
$avg = round($total / $rows);
La variabile $total è inizializzata a 0, ma poi, dopo il ciclo, assume il valore equivalente al totale delle età di tutti gli utenti. Successivamente, viene divisa per il numero degli utenti (la media si calcola dividendo la somma dei valori per il numero dei valori stessi).
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
  • 6 Gen 2011
  • #32
alessandro1997 ha scritto:
Modifica questa riga:
PHP:
$avg = round($total / $rows, 1);
Così:
PHP:
$avg = round($total / $rows);
La variabile $total è inizializzata a 0, ma poi, dopo il ciclo, assume il valore equivalente al totale delle età di tutti gli utenti. Successivamente, viene divisa per il numero degli utenti (la media si calcola dividendo la somma dei valori per il numero dei valori stessi).
Clicca per allargare...

ale non me ne volere


lo script funziona
PHP:
while($user = mysql_fetch_assoc($user))
    $total += $user['Eta'];

qua avevo tolto il + da vicino l'uguale, pensavo fosse stata una tua svustaper questo non andava
facendo vari echo e rivedendo il tuo script originale me ne so accorto


ora mi dà l'età media giusta

scusami se ti ho fatto eprde del tempo puoi/ vuoi spiegarmi sta cosa del +=


grazie cmq sei un grande sia per conoscenza che per disponibilità
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
  • 6 Gen 2011
  • #33
però ale ok lo script funziona con un utente ma quando isnerisco nella where l'arrai delle id

mi restituisce l'età media di tutta la colonna


mentre nella mia tabella ci sono tot giocatori assegnati a x tot a y etc.

io vorrei fare l'eta emdia dei giocatori di misterx di mister y ecosì via

quindis empre inserendo nella where l'array degli id utenti
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 6 Gen 2011
  • #34
Non ho capito bene quale condizione devono rispettare i record di cui devi calcolare la media... dimmi direttamente a quale valore deve corrispondere quale campo.

Comunque scrivere:
PHP:
$total += $row['Eta'];
È come scrivere:
PHP:
$total = $total + $row['Eta'];
Solo che si può abbreviare.
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
  • 7 Gen 2011
  • #35
alessandro1997 ha scritto:
Non ho capito bene quale condizione devono rispettare i record di cui devi calcolare la media... dimmi direttamente a quale valore deve corrispondere quale campo.

Comunque scrivere:
PHP:
$total += $row['Eta'];
È come scrivere:
PHP:
$total = $total + $row['Eta'];
Solo che si può abbreviare.
Clicca per allargare...

deve calcolare l'età media dei giocatori assegnati ad un utentex

in pratica nella tabella deve pescare tutte l'eta dove c'è come utente l'utentex e farne la media

solo che invece di scrivere

PHP:
$sql = 'SELECT * FROM utenti' where Nome='$utentex';
$query = mysql_query($sql) or die(mysql_error());

come lo script di prima vorrei fare

PHP:
$sql = 'SELECT * FROM utenti' where Nome IN($tuttiutenti)';
$query = mysql_query($sql) or die(mysql_error());
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 7 Gen 2011
  • #36
Non capisco... se esegui una query del genere è come se estraessi tutti i giocatori, perché tutti i giocatori sono assegnati ad un utente ma tu selezioni i giocatori di TUTTI gli utenti. A questo punto la condizione perde significato... è come se io in una tabella avessi un campo ENUM che può essere 1, [/B]2[/B] o 3 e scrivessi una query del genere:
Codice:
SELECT * FROM tabella WHERE campo IN('1','2','3')
La condizione sarebbe inutile. Sarebbe uguale scrivere:
Codice:
SELECT * FROM tabella
Avrebbe avuto un senso se avessi voluto selezionare i giocatori di un determinato utente e ricavarne l'età media, ma così non ne vedo l'utilità...
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
  • 7 Gen 2011
  • #37
alessandro1997 ha scritto:
Avrebbe avuto un senso se avessi voluto selezionare i giocatori di un determinato utente e ricavarne l'età media, ma così non ne vedo l'utilità...
Clicca per allargare...
questo è quello che mi serve

in pratica io già ora ricavo l'età media di tutti i giocatori di un determinato utente solo che attualmente lo faccio uno per uno

invece con questa funzione vorrei che ricavasse l'età media di tutti i giocatori di un utente ma utente per utente
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 7 Gen 2011
  • #38
Quindi tu hai bisogno, per esempio, di un array associativo composto così:
Codice:
utente1 => [età media dei suoi giocatori],
utente2 => [età media dei suoi giocatori],
utente3 => [età media dei suoi giocatori]
E così via, giusto? Cioè per ogni utente la relativa media?
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
  • 7 Gen 2011
  • #39
alessandro1997 ha scritto:
Quindi tu hai bisogno, per esempio, di un array associativo composto così:
Codice:
utente1 => [età media dei suoi giocatori],
utente2 => [età media dei suoi giocatori],
utente3 => [età media dei suoi giocatori]
E così via, giusto? Cioè per ogni utente la relativa media?
Clicca per allargare...

si esatto
però il problema è che la tabella e fatta cosi

ID Nome Eta Utente
1 Pippo 20 Giovanni
2 Topolino 22 Matteo
3 Pluto 18 Francesco
4 Minni 25 Giovanni

quindi l'utente può ripwtersi + volte nella tabella perciò dovrei estrarre prima tutte le età relative all'utente e poi farne la media
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
28
Roma
alessandro1997.netsons.org
  • 7 Gen 2011
  • #40
E la tabella degli utenti, invece, come è strutturata? In che campo è contenuto il nome dell'utente?
 
Prec.
  • 1
  • 2
  • 3
Succ.
Primo Prec. 2 di 3 Succ. Ultimo
Devi accedere o registrarti per poter rispondere.

Discussioni simili

Leggere valore da array multidimensionale a chiavi dinamiche
  • otto9due
  • 31 Dic 2023
  • PHP
Risposte
1
Visite
1K
PHP 31 Dic 2023
otto9due
M
Passaggio variabili array php su un tasto jq
  • maubox8
  • 9 Dic 2022
  • PHP
Risposte
3
Visite
2K
PHP 10 Dic 2022
maubox8
M
M
Somma inversa di Array
  • MaxFor
  • 6 Nov 2022
  • C/C++
Risposte
2
Visite
3K
C/C++ 10 Nov 2022
MaxFor
M
Iterazione array
  • MarcoGrazia
  • 26 Ott 2022
  • PHP
Risposte
5
Visite
1K
PHP 31 Ott 2022
WmbertSea
G
in_array
  • Gae
  • 17 Set 2022
  • PHP
Risposte
2
Visite
989
PHP 23 Set 2022
Gae
G
N
Passare array da php a javascript
  • Namaste!
  • 12 Lug 2022
  • PHP
Risposte
5
Visite
3K
PHP 13 Lug 2022
WmbertSea
B
  • Bloccata
Completare il seguente ciclo affinché stampi tutto l’array al contrario
  • blade744
  • 5 Giu 2022
  • PHP
Risposte
3
Visite
1K
PHP 7 Giu 2022
Max 1
G
Ordinare un array multidimensionale
  • Gae
  • 30 Apr 2022
  • PHP
Risposte
4
Visite
2K
PHP 3 Mag 2022
Gae
G
H
Errore su array associativo
  • hunter81
  • 5 Apr 2022
  • PHP
Risposte
1
Visite
1K
PHP 5 Apr 2022
WmbertSea
K
Array senza ripetizioni
  • Kate81
  • 23 Mar 2022
  • Presentati al Forum
Risposte
4
Visite
491
Presentati al Forum 24 Mar 2022
Kate81
K
A
Gestione array multidimensionale
  • antoooo
  • 10 Gen 2022
  • PHP
Risposte
6
Visite
1K
PHP 12 Gen 2022
zorro
Più chiavi in array con array_key_exists()
  • otto9due
  • 2 Nov 2021
  • PHP
Risposte
0
Visite
813
PHP 2 Nov 2021
otto9due
M
Array associativi php su 2 campi mysql
  • maxnegri2036
  • 14 Ago 2021
  • PHP
Risposte
10
Visite
2K
PHP 16 Ago 2021
zorro
T
  • Bloccata
ALTRO PROBLEMA CON ARRAY PHP
  • thanatos
  • 30 Mag 2021
  • PHP
Risposte
1
Visite
2K
PHP 30 Mag 2021
Max 1
T
PROBLEMA CON ARRAY
  • thanatos
  • 27 Mag 2021
  • PHP
Risposte
8
Visite
2K
PHP 31 Mag 2021
marino51
L
Sessione e array per utenti
  • luigi777
  • 22 Apr 2021
  • PHP
Risposte
0
Visite
840
PHP 22 Apr 2021
luigi777
L
R
Importazione csv su mysql tramite array
  • Riccardo Contu
  • 23 Gen 2021
  • PHP
Risposte
2
Visite
2K
PHP 25 Gen 2021
Riccardo Contu
R
Ricavare e stampare indirizzo ip da array associativo
  • elpirata
  • 20 Gen 2021
  • PHP
Risposte
0
Visite
891
PHP 20 Gen 2021
elpirata
P
  • Bloccata
Ciclare tra array di oggetti
  • Phelps
  • 2 Gen 2021
  • PHP
Risposte
1
Visite
1K
PHP 3 Gen 2021
Max 1
R
Raggruppare valori array
  • Riccardo Contu
  • 26 Nov 2020
  • PHP
Risposte
5
Visite
2K
PHP 29 Nov 2020
WmbertSea
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?