Undefined offset: 1 en Invalid argument supplied for foreach()
//method voor de services
$sql = "SELECT service_id
, service
, omschijving
, footnote
FROM services
ORDER BY service_id, service";
$stmt = $this->pdo->query($sql);
return $stmt->fetchAll();
//method voor service omschrijvingen en prijzen
$sql = "SELECT *
FROM services_prijzen
ORDER BY service_id, service_omschrijving";
$stmt = $this->pdo->query($sql);
$prices = $stmt->fetchAll();
$prices = array();
foreach ($prices as $row) {
if (!is_array($prices[$row['service_id']])) {
$prices[$row['service_id']] = array();
}
$prices[$row['service_id']] = $row;
}
return $prices;
En dit heb ik in de View:
<h2></h2>
<p><span></span></p>
Maar daar krijg ik dis de volgende foutmeldingen bij
Undefined offset: 1 en Invalid argument supplied for foreach() on line 6
Ik kan niet ontdekken wat ik fout doe?
Je kiepert $prices meteen leeg...
$prices = array();
eruit gehaald, maar nog steeds het zelfde probleem.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
// method om services en prijzen op te halen
$sql = "SELECT
s.service_id,
s.service,
s.omschrijving,
s.footnote,
p.service_prijs,
p.service_omschrijving
FROM
services s
LEFT JOIN
services_prices p
ON s.service_id = p.service_id
ORDER BY s.service_id, p.service_omschrijving";
return $this->pdo->query($sql)->fetch_all(PDO_FETCH_ASSOC);
?>
// method om services en prijzen op te halen
$sql = "SELECT
s.service_id,
s.service,
s.omschrijving,
s.footnote,
p.service_prijs,
p.service_omschrijving
FROM
services s
LEFT JOIN
services_prices p
ON s.service_id = p.service_id
ORDER BY s.service_id, p.service_omschrijving";
return $this->pdo->query($sql)->fetch_all(PDO_FETCH_ASSOC);
?>