Gegevens in Array zetten

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Gifo

Gifo

03/03/2006 13:09:00
Quote Anchor link
Hoi,

Ik zit met de volgende uitdaging:

In een tabel "Teams" heb ik 13 kolommen. 1 voor de teamnaam en 12 voor de namen van de spelers in dat team. In totaal heb ik nu zo'n 60 teams.

Wat ik nu graag zou willen, is tellen hoevaak een bepaalde spelernaam voorkomt in de totale tabel "Teams".

Hiervoor heb ik de volgende code opgesteld, maar zoals je begrijpt werkt dit dus niet. De uitkomst is dus dat hij maar 1 team pakt en daarin kijkt hoevaak een spelernaam voorkomt (hetgeen altijd 1 keer is, aangezien een speler niet vaker dan 1 keer in een team kan worden opgenomen)
Heeft iemand enig idee?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?
include '../dbconnect.php';

$query = "SELECT * FROM teams";
$result = mysql_query($query);

$num=mysql_numrows($result);

$i=0;

    while ($i < $num)
    {


        $speler1=mysql_result($result,$i,"speler1");
        $speler2=mysql_result($result,$i,"speler2");
        $speler3=mysql_result($result,$i,"speler3");
        $speler4=mysql_result($result,$i,"speler4");
        $speler5=mysql_result($result,$i,"speler5");
        $speler6=mysql_result($result,$i,"speler6");
        $speler7=mysql_result($result,$i,"speler7");
        $speler8=mysql_result($result,$i,"speler8");
        $speler9=mysql_result($result,$i,"speler9");
        $speler10=mysql_result($result,$i,"speler10");
        $speler11=mysql_result($result,$i,"speler11");
        $speler12=mysql_result($result,$i,"speler12");
        
        $array = array($speler1,$speler2,$speler3,$speler4,$speler5,$speler6,$speler7,$speler8,$speler9,$speler10,$speler11,$speler12);
 
    $i++;
    }


$uniek = array_unique ($array);
$tellen = array_count_values($uniek);

print_r ($tellen);


?>
 
PHP hulp

PHP hulp

05/12/2020 16:06:42
 
Martijn Wieringa

Martijn Wieringa

03/03/2006 13:16:00
Quote Anchor link
Misschien met een statement als:

SELECT id
FROM Teams
WHERE (speler1 = '" . $spelernaam . "')
OR (speler2 = '" . $spelernaam . "')
OR (speler3 = '" . $spelernaam . "')
OR (speler4 = '" . $spelernaam . "')
OR (speler5 = '" . $spelernaam . "')
OR (speler6 = '" . $spelernaam . "')
OR (speler7 = '" . $spelernaam . "')
OR (speler8 = '" . $spelernaam . "')
OR (speler9 = '" . $spelernaam . "')
OR (speler10 = '" . $spelernaam . "')
OR (speler11 = '" . $spelernaam . "')
OR (speler12 = '" . $spelernaam . "');

Dan krijg je per speler de teams terug waar die inzit, eventueel kun je in de SELECT d'r zelfs een COUNT(*) in gooien i.p.v. 'id'...
 
Gifo

Gifo

03/03/2006 15:12:00
Quote Anchor link
Hoi Pholeron,

Dit werkt inderdaad!

Alleen tel ik de spelers met mysql_num_rows in plaats van COUNT, maar verder helemaal top.

Dank je wel!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.