Een query met een niet direct bruikbare result/object in de foreach gooien?
Gooi dat dan minimaal door fetch_assoc heen, zodat je een array hebt. En als je alles wilt, zul je dit met while() moeten regelen i.p.v. foreach.
Aha, dat doet PDO dus weer meteen in de functie zelf. Dat had ik even niet in de gaten.
Een query met een niet direct bruikbare result/object in de foreach gooien?
Gooi dat dan minimaal door fetch_assoc heen, zodat je een array hebt. En als je alles wilt, zul je dit met while() moeten regelen i.p.v. foreach.
Aha, dat doet PDO dus weer meteen in de functie zelf. Dat had ik even niet in de gaten.
Beste Arien,
Bedankt, inmiddels al een stukje opgeschoten.
krijg je alleen nog maar de juiste regels.
nu nog de count inbouwen om de types bij elkaar te tellen,
$mysqli = new mysqli("localhost", $username, $password, $my_db);
/* check connection */
if ($mysqli->connect_errno) {
printf("Connect failed: %s\n", $mysqli->connect_error);
exit();
}
$query = "SELECT * FROM josnu_eb_field_values WHERE field_value IN ('NA','NB','NC','ND') ";
if ($result = $mysqli->query($query)) {
/* fetch associative array */
while ($row = $result->fetch_assoc()) {
printf ("%s\n", $row["field_value"]);
}
/* free result set */
$result->free();
}
/* close connection */
$mysqli->close();
iemand die me daar een goede richting op kan wijzen ?
Zou het niet veel logischer zijn om deze "separate regels", of liever gezegd, de regelnummers, aan te spreken?
Daarvoor zouden we eerst de indeling van je databasetabel moeten begrijpen?
Wat betekent bijvoorbeeld 13, 23, NB?
Is dat het 13e ingevulde formulier, invoerveld 23 met waarde NB?
Als dat zo is, dan zou je toch simpelweg een selectie kunnen maken op grond van de invoervelden die je wilt hebben, en niet zozeer welke specifieke waarden deze bevatten?
SELECT field_value, COUNT(field_value) AS aantal
FROM josnu_eb_field_values
WHERE <invoerveld_kolomnaam> = 23
GROUP BY field_value
(waarbij je uiteraard <invoerveld_kolomnaam> vervangt door de daadwerkelijke kolomnaam)
En als je in meerdere kolommen geinteresseerd bent, gebruik je WHERE <invoerveld_kolomnaam> IN (x, y, z), waarbij x,y,z de kolomnummers zijn. Mogelijk is het dan ook logisch dat je die dan ook in het SELECT-statement opneemt, en of hier op sorteert.
ik heb deze getest en dat werkt inderdaad iets simpeler als eerst de dingen aanroepen die je wil tellen.
Ik heb er bijvoorbeeld eentje bij zitten met de keuze uit 50 stuks, dan is deze methode simpeler in te richten.