Dropdown weergave dubbel
tot nu toe gaat bijna alles goed.
Ik maak gebruik van twee tabellen uit de database.
een genoemd pag en de andere sitefoto.
als ik in de database tabel pag bijvoorbeeld de naam info en contact heb, word de naam contact 3 keer weer gegeven terwel dat volgens het script maar twee keer moet zijn.
------------------
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
//Query
$query = "SELECT titel FROM pag WHERE status='online' OR status='offline'";
//Query uitvoeren
$uitvoeren = mysql_query($query);
//Begin van dropdown
echo '<select name="soort_foto">';
//While voor data in de dropdown
while($rij = mysql_fetch_assoc($uitvoeren))
{
//De data in de dropdown zetten
echo '<option value='.$sRow['soort_foto'].'>'.$sRow['soort_foto'].'</option>';
echo '<option>'.$rij['titel'].'</option>';
}
//De dropdown beëindigen
echo '</select>';
?>
//Query
$query = "SELECT titel FROM pag WHERE status='online' OR status='offline'";
//Query uitvoeren
$uitvoeren = mysql_query($query);
//Begin van dropdown
echo '<select name="soort_foto">';
//While voor data in de dropdown
while($rij = mysql_fetch_assoc($uitvoeren))
{
//De data in de dropdown zetten
echo '<option value='.$sRow['soort_foto'].'>'.$sRow['soort_foto'].'</option>';
echo '<option>'.$rij['titel'].'</option>';
}
//De dropdown beëindigen
echo '</select>';
?>
----------------------
Ik kan maar niet vinden waar die fout zit.
help!
Gewijzigd op 12/10/2012 20:49:31 door Arthur Heijmen
Deze hoor je alleen bij POST, GET en SESSION te gebruiken.
Die hele WHERE lijkt me trouwens behoorlijk overbodig, iets kan toch online of offline zijn, maar niet iets anders?
Gewijzigd op 12/10/2012 20:39:05 door - Ariën -
die ik heb geplaatst
en offline , online, archief
Gewijzigd op 12/10/2012 20:45:03 door Arthur Heijmen
Waar komt $sRow vandaan. Als je data uit twee tabellen ophaalt moet je zeker eens kijken naar Joins.
je geposte code is geen directe reden voor je probleem, wel een tip maak gebruik van IN('online', 'offline') ipv overbodige statements
Toevoeging op 12/10/2012 20:53:32:
bedoel je hiermee een array
Jaron T op 12/10/2012 20:48:43:
je geposte code is geen directe reden voor je probleem, wel een tip maak gebruik van IN('online', 'offline') ipv overbodige statements
verder niet
en hoe maak je dan gebruik van IN().
Dit is voor mij de eerste keer dat ik dit tegen kom
Gewijzigd op 12/10/2012 20:57:49 door Arthur Heijmen
Toevoeging op 12/10/2012 21:05:17:
Zit er een koppeling tusssen met id's dan moet je eens kijken naar joins.
Gewijzigd op 12/10/2012 21:04:51 door - Ariën -
hier is mijn db structuur
--------------------
CREATE TABLE IF NOT EXISTS `pag` (
`id` int(11) NOT NULL auto_increment,
`titel` varchar(255) default NULL,
`text` text,
`datum` datetime default NULL,
`poss` varchar(10) default NULL,
`status` varchar(10) NOT NULL default 'offline',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `sitefoto` (
`id` int(11) NOT NULL auto_increment,
`soort_foto` varchar(25) default NULL,
`naam_foto` varchar(255) default NULL,
`poss` varchar(10) default NULL,
`text_foto` text,
`status_foto` varchar(10) NOT NULL default 'offline',
PRIMARY KEY (`id`),
UNIQUE KEY `naam_foto` (`naam_foto`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
--------------------
de koppeling is tussen de titel en soort_foto.
het veld soort_foto, krijg dan de input van de titel.
Gewijzigd op 12/10/2012 21:14:32 door Arthur Heijmen
Tussen welke twee velden ligt de koppeling?
de koppeling is tussen de titel uit tabel PAG en soort_foto uit de tabel sitefoto.
Is een idnummer niet makkelijker als je de titel later aan wilt passen? En wat heb je al geprobeerd met joins?
Maar ik zal ook even kijken wat ik kan veranderen in het database structuur.