Lijst met merken opmaken
Op de website Biologischeaanbiedingen.nl ben ik met een uitbreiding bezig die te vinden is op http://www.biologischeaanbiedingen.nl/index.php?p=bb&n=1&cid=2
Hier heb ik alle ingevoerde producten in categorieen opgedeeld en zo ook getoond. Nu heb ik rechts een groen vlak met 'Merken' waarin een overzicht moet komen van de merken waar producten van zijn in die groep. Dus nu zitten we in de groep aardappelen en dan zouden alle merken van de aardappelen op ABC volgorde onder elkaar moeten komen.
Dit probeer ik te doen met de volgende code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$sql="SELECT * FROM biologische_producten_categorieen WHERE id = '$categorie'";
$res=mysql_query($sql);
$merk_id = @mysql_result($res,0,'merk_id');
$merk_id_array[] = @mysql_result($res,0,'merk_id');
$sql = "SELECT * FROM biologischemerken WHERE id!='' ";
$naam = @mysql_result($res,0,'naam');
foreach($merk_id_array as $merk_id) {
$sql .= " OR id=".$merk_id." ";
}
$res=mysql_query($sql);
{
echo "$merk_id <br />";
}
?>
$sql="SELECT * FROM biologische_producten_categorieen WHERE id = '$categorie'";
$res=mysql_query($sql);
$merk_id = @mysql_result($res,0,'merk_id');
$merk_id_array[] = @mysql_result($res,0,'merk_id');
$sql = "SELECT * FROM biologischemerken WHERE id!='' ";
$naam = @mysql_result($res,0,'naam');
foreach($merk_id_array as $merk_id) {
$sql .= " OR id=".$merk_id." ";
}
$res=mysql_query($sql);
{
echo "$merk_id <br />";
}
?>
Maar helaas geeft deze code nog geen resultaten weer. Heeft iemand een idee waar het fout gaat?
Alvast bedankt!
Angela
Foutafhandeling inbouwen.
$Vars buiten de quotes halen.
Beveiliging?
Wat bedoeld u met $Vars buiten de quotes halen?
Gr. Angela
$Vars buiten quotes halen:
echo $merk_id ."<br />";
Code (php)
1
2
3
4
2
3
4
<?php
$merk_id = mysql_result($res,0,'merk_id');
$merk_id_array[] = mysql_result($res,0,'merk_id');
?>
$merk_id = mysql_result($res,0,'merk_id');
$merk_id_array[] = mysql_result($res,0,'merk_id');
?>
En wat krijg je voor'n foutmelding?
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /home/biologischeaanbiedingen.nl/www/content/ba.biologische-producten_tumb.php on line 81
SanThe schreef op 23.12.2009 13:56:
Foutafhandeling inbouwen.
De query zal mislukt zijn.
http://www.phptuts.nl/view/35/
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
Ik heb inmiddels 1x het merk_id in beeld, maar er moet eigenlijk een lijst uitkomen, enig idee waar die fout ligt?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
$sql="SELECT * FROM biologischemerken_assortiment WHERE categorie_id = '$categorie' AND node = '$node' ORDER BY naam";
$res=mysql_query($sql);
$merk_id = mysql_result($res,0,'merk_id');
$merk_id_array[] = mysql_result($res,0,'merk_id');
$sql = "SELECT * FROM biologischemerken WHERE merk_id!='' ";
$naam = mysql_result($res,0,'naam');
foreach($merk_id_array as $merk_id) {
$sql .= " OR id=".$merk_id." ";
}
$res=mysql_query($sql);
{
echo $merk_id ."<br />";
}
?>
ini_set('display_errors', 'On');
error_reporting(E_ALL);
$sql="SELECT * FROM biologischemerken_assortiment WHERE categorie_id = '$categorie' AND node = '$node' ORDER BY naam";
$res=mysql_query($sql);
$merk_id = mysql_result($res,0,'merk_id');
$merk_id_array[] = mysql_result($res,0,'merk_id');
$sql = "SELECT * FROM biologischemerken WHERE merk_id!='' ";
$naam = mysql_result($res,0,'naam');
foreach($merk_id_array as $merk_id) {
$sql .= " OR id=".$merk_id." ";
}
$res=mysql_query($sql);
{
echo $merk_id ."<br />";
}
?>
print_r($res);
Gewijzigd op 01/01/1970 01:00:00 door angela steevens
Zie www.phptuts.nl voor tutorials.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
$sql="SELECT * FROM biologischemerken_assortiment WHERE categorie_id = '" . $categorie . "' AND node = '" . $node . "' ORDER BY naam";
$res=mysql_query($sql);
$merk_id = mysql_result($res,0,'merk_id');
$merk_id_array[] = mysql_result($res,0,'merk_id');
$sql = "SELECT * FROM biologischemerken WHERE id= '" . $merk_id . "' ";
$res=mysql_query($sql);
$naam_merk = mysql_result($res,0,'naam');
foreach($merk_id_array as $merk_id) {
$sql .= " OR id=".$merk_id." ";
}
$res=mysql_query($sql);
{
echo $naam_merk ."<br />";
}
print_r($res);
?>
ini_set('display_errors', 'On');
error_reporting(E_ALL);
$sql="SELECT * FROM biologischemerken_assortiment WHERE categorie_id = '" . $categorie . "' AND node = '" . $node . "' ORDER BY naam";
$res=mysql_query($sql);
$merk_id = mysql_result($res,0,'merk_id');
$merk_id_array[] = mysql_result($res,0,'merk_id');
$sql = "SELECT * FROM biologischemerken WHERE id= '" . $merk_id . "' ";
$res=mysql_query($sql);
$naam_merk = mysql_result($res,0,'naam');
foreach($merk_id_array as $merk_id) {
$sql .= " OR id=".$merk_id." ";
}
$res=mysql_query($sql);
{
echo $naam_merk ."<br />";
}
print_r($res);
?>
Wat staat er in 'merk_id'? Zijn dat meerdere nummers?
In het tweede stuk maakt hij van dat nummer een naam. Omdat dan de id van de tabel biologischemerken gekoppeld worden aan de naam. Maar hij toont op dit moment alleen de eerste.
Angela
Code (php)
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
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
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
$sql="SELECT * FROM biologischemerken_assortiment WHERE categorie_id = '" . $categorie . "' AND node = '" . $node . "' ORDER BY naam";
$res=mysql_query($sql);
if($res)
{
$array_merk_id = array();
while($row = mysql_fetch_assoc($res))
{
$array_merk_id[] = $row['merk_id'];
}
$sql = "SELECT * FROM biologischemerken WHERE id= '" . $array_merk_id[0] . "' ";
$count = count($array_merk_id);
for($i = 1; $i < $count; $i++)
{
$sql .= " OR id= '" . $array_merk_id[$i] . "' ";
}
$res=mysql_query($sql);
if($res)
{
while($row = mysql_fetch_assoc($res))
{
echo $row['naam'] ."<br />";
}
}
else
{
echo 'Error';
}
}
else
{
echo 'Error';
}
?>
ini_set('display_errors', 'On');
error_reporting(E_ALL);
$sql="SELECT * FROM biologischemerken_assortiment WHERE categorie_id = '" . $categorie . "' AND node = '" . $node . "' ORDER BY naam";
$res=mysql_query($sql);
if($res)
{
$array_merk_id = array();
while($row = mysql_fetch_assoc($res))
{
$array_merk_id[] = $row['merk_id'];
}
$sql = "SELECT * FROM biologischemerken WHERE id= '" . $array_merk_id[0] . "' ";
$count = count($array_merk_id);
for($i = 1; $i < $count; $i++)
{
$sql .= " OR id= '" . $array_merk_id[$i] . "' ";
}
$res=mysql_query($sql);
if($res)
{
while($row = mysql_fetch_assoc($res))
{
echo $row['naam'] ."<br />";
}
}
else
{
echo 'Error';
}
}
else
{
echo 'Error';
}
?>
Nu zouden de namen alleen nog op ABC weergegeven moeten worden en er moet 1 uitzondering gemaakt worden. Wanneer het merk_id = 100 of de naam: Biologische producten voorkomt dan moet hij weergeven: Overige
Code (php)
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
39
40
41
42
43
44
45
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
39
40
41
42
43
44
45
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
$sql="SELECT * FROM biologischemerken_assortiment WHERE categorie_id = '" . $categorie . "' AND node = '" . $node . "' ORDER BY naam";
$res=mysql_query($sql);
if($res)
{
$array_merk_id = array();
while($row = mysql_fetch_assoc($res))
{
$array_merk_id[] = $row['merk_id'];
}
$sql = "SELECT * FROM biologischemerken WHERE id= '" . $array_merk_id[0] . "' ";
$count = count($array_merk_id);
for($i = 1; $i < $count; $i++)
{
$sql .= " OR id= '" . $array_merk_id[$i] . "' ";
}
$sql .= " ORDER BY naam ASC";
$res=mysql_query($sql);
if($res)
{
while($row = mysql_fetch_assoc($res))
{
if($row['merk_id'] == 100 or $row['naam'] == 'Biologische producten')
{
echo 'Overige<br />';
}
else
{
echo $row['naam'] ."<br />";
}
}
}
else
{
echo 'Error';
}
}
else
{
echo 'Error';
}
?>
ini_set('display_errors', 'On');
error_reporting(E_ALL);
$sql="SELECT * FROM biologischemerken_assortiment WHERE categorie_id = '" . $categorie . "' AND node = '" . $node . "' ORDER BY naam";
$res=mysql_query($sql);
if($res)
{
$array_merk_id = array();
while($row = mysql_fetch_assoc($res))
{
$array_merk_id[] = $row['merk_id'];
}
$sql = "SELECT * FROM biologischemerken WHERE id= '" . $array_merk_id[0] . "' ";
$count = count($array_merk_id);
for($i = 1; $i < $count; $i++)
{
$sql .= " OR id= '" . $array_merk_id[$i] . "' ";
}
$sql .= " ORDER BY naam ASC";
$res=mysql_query($sql);
if($res)
{
while($row = mysql_fetch_assoc($res))
{
if($row['merk_id'] == 100 or $row['naam'] == 'Biologische producten')
{
echo 'Overige<br />';
}
else
{
echo $row['naam'] ."<br />";
}
}
}
else
{
echo 'Error';
}
}
else
{
echo 'Error';
}
?>
Notice: Undefined index: merk_id in /home/biologischeaanbiedingen.nl/www/content/ba.biologische-producten_tumb.php on line 103
AH puur & eerlijk
Notice: Undefined index: merk_id in /home/biologischeaanbiedingen.nl/www/content/ba.biologische-producten_tumb.php on line 103
Bio+
Notice: Undefined index: merk_id in /home/biologischeaanbiedingen.nl/www/content/ba.biologische-producten_tumb.php on line 103
Overige
Notice: Undefined index: merk_id in /home/biologischeaanbiedingen.nl/www/content/ba.biologische-producten_tumb.php on line 103
De Groene Weg Slagerijen
Notice: Undefined index: merk_id in /home/biologischeaanbiedingen.nl/www/content/ba.biologische-producten_tumb.php on line 103
Leo de Kock Tafelaardappelen