Links tonen per provincie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 3 volgende »

Gerben J

Gerben J

16/11/2010 14:12:31
Quote Anchor link
Beste PHP-hulpers,

Graag wil ik een site maken met een aantal links per provincie. In de database geef ik bij de link met een getal (1=Groningen,12=Limburg enz.) aan welke provincie.

Met de volgende code maak ik twaalf provincies in PHP:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
$arr = array('Groningen','Friesland','Drenthe','Overijssel','Flevoland','Gelderland','Utrecht','Noord-Holland','Zuid-Holland','Zeeland','Noord-Brabant','Limburg');
foreach ($arr as &$value)
{
    echo $value;
}


Hoe kan ik nu met het uitvoeren van één MySQL-query hier 5 links per provincie tonen?
Gewijzigd op 16/11/2010 14:12:57 door Gerben J
 
PHP hulp

PHP hulp

24/12/2024 00:12:39
 
Gerhard l

gerhard l

16/11/2010 14:16:58
Quote Anchor link
iets van $query = "SELECT links FROM provincies WHERE provincie="jou provincie" limit = 0, 5; als ik jou goed begrijp?
 
Jasper hoi

jasper hoi

16/11/2010 14:21:02
Quote Anchor link
Denk dat ik het begrijp, je wil van 12 provincies 5 links laten zien.
Dus je hebt een DB met daarin per provincie een x aantal links en dan random links laten zien.
Misschien handig om je db structuur te laten zien.
 
Gerben J

Gerben J

16/11/2010 14:26:06
Quote Anchor link
Dank voor jullie snelle reactie. Hieonder de db-structuur. Inderdaad Jasper, graag wil ik per provincie 5 links laten zien.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
CREATE TABLE IF NOT EXISTS `links` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(60) NOT NULL,
  `url` varchar(200) NOT NULL,
  `province` int(11) NOT NULL,
  `visible` int(1) NOT NULL DEFAULT '1',
  `tip` int(1) NOT NULL DEFAULT '0',
  UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=101 ;


Ik zou natuurlijk 12 keer een MySQL-query kunnen uitvoeren, maar dat lijkt me niet netjes en niet snel.
Gewijzigd op 16/11/2010 14:27:27 door Gerben J
 
Jasper hoi

jasper hoi

16/11/2010 14:31:19
Quote Anchor link
Je zou in dit geval de benodigde data moeten halen uit de DB, dus name, url, province, tip.
En vervolgens met php er maar per provincie 5 laten zien.
 
Gerhard l

gerhard l

16/11/2010 14:39:56
Quote Anchor link
de nieuwste 5, of echt random?
 
Gerben J

Gerben J

16/11/2010 14:44:37
Quote Anchor link
Het was de bedoeling random, maar als dat niet kan mag het ook op alfabet of de nieuwste vijf.
 
Gerhard l

gerhard l

16/11/2010 14:48:17
Quote Anchor link
Volgens mij zo:

nieuwste:
moet je een date functie bij je mysql toevoegen
$query = "SELECT links FROM provincies WHERE provincie="jou provincie" ORDER by date limit = 0, 5;

alfabet:
$query = "SELECT links FROM provincies WHERE provincie="jou provincie" ORDER by name limit = 0, 5;

random weet ik zo niet zal even zoeken,
 
Jasper hoi

jasper hoi

16/11/2010 14:51:21
Quote Anchor link
$random_row = mysql_fetch_row(mysql_query("select * from YOUR_TABLE order by rand() limit 1"));

-edit-
gerhard, de eerste die jij noemt kan niet, er is geen date veld. Dat zal je met het id moeten doen en dan het hoogste id is als laatste toegevoegd.
Gewijzigd op 16/11/2010 14:55:02 door jasper hoi
 
Gerhard l

gerhard l

16/11/2010 14:55:55
Quote Anchor link
haha jasper weer wat eerder, ik had ook net iets gevonden:
$sql = "SELECT * FROM tabelnaam ORDER BY RAND() LIMIT 0,1";
$res = mysql_query($sql);

// kijk of er wel iets gevonden is
if (mysql_num_rows($res) >= 1)
echo mysql_result($res, 0);

moet je denk ik nog even die limits op 5 zetten
Gewijzigd op 16/11/2010 14:56:39 door gerhard l
 
Jasper hoi

jasper hoi

16/11/2010 14:59:46
Quote Anchor link
enigste is dat je dan 5 compleet willekeurige links krijgt en hij wil er volgens mij 5 per provincie.
Gewijzigd op 16/11/2010 15:06:55 door jasper hoi
 
Gerben J

Gerben J

16/11/2010 21:05:33
Quote Anchor link
Inderdaad Jasper, maar dat zal wel niet in één query kunnen. Helaas.
 

16/11/2010 21:11:06
Quote Anchor link
Gerben J op 16/11/2010 21:05:33:
Inderdaad Jasper, maar dat zal wel niet in één query kunnen. Helaas.


Inderdaad, dit kan niet simpel in één query.
 
Noppes Homeland

Noppes Homeland

16/11/2010 21:18:26
Quote Anchor link
En waarom zal dat volgens de heren niet kunnen?
 

16/11/2010 21:27:12
Quote Anchor link
Noppes Homeland op 16/11/2010 21:18:26:
En waarom zal dat volgens de heren niet kunnen?



Ga jij het maar eens proberen. En anders moet je je kop houden, jij onderbouwd je stellingen haast nooit.
Of je moet groeperen (en dan vieze trucjes uithalen die niet werken).
Of je moet joinen (wat niet meer simpel is).
Of je moet subqueries gebruiken (ook niet simpel).

Dus het kan niet simpel in één query. Of het überhaupt kan? Geen idee.
 
Noppes Homeland

Noppes Homeland

16/11/2010 21:34:47
Quote Anchor link
Als je geen idee hebt of het kan, dan kan je beter achterwege laten om er ook maar 1 woord aan vuil te maken.

De oplossing behoort te zitten in het pakket van "Basis kennis SQL"
 

16/11/2010 22:25:40
Quote Anchor link
Noppes Homeland op 16/11/2010 21:34:47:
Als je geen idee hebt of het kan, dan kan je beter achterwege laten om er ook maar 1 woord aan vuil te maken.

De oplossing behoort te zitten in het pakket van "Basis kennis SQL"


Waarom help je dan niet mee, als je zo zeker ervan bent dat het kan.

Volgens mij ben je gewoon een arrogante klootzak die rel wilt schoppen.
Gewijzigd op 16/11/2010 22:57:38 door
 
Gerben J

Gerben J

17/11/2010 11:48:19
Quote Anchor link
Noppes Homeland op 16/11/2010 21:34:47:
Als je geen idee hebt of het kan, dan kan je beter achterwege laten om er ook maar 1 woord aan vuil te maken.

De oplossing behoort te zitten in het pakket van "Basis kennis SQL"


Wat is de oplossing dan, Noppes?
 
Gerhard l

gerhard l

17/11/2010 11:52:06
Quote Anchor link
Gerben J op 17/11/2010 11:48:19:
Noppes Homeland op 16/11/2010 21:34:47:
Als je geen idee hebt of het kan, dan kan je beter achterwege laten om er ook maar 1 woord aan vuil te maken.

De oplossing behoort te zitten in het pakket van "Basis kennis SQL"


Wat is de oplossing dan, Noppes?


zou ik ook graag willen weten ;s
 
Teun Hesseling

Teun Hesseling

17/11/2010 11:55:00
Quote Anchor link
moet je er niet gewoon nog
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php AND provincie="'.$value.'" ?>
aan vast plakken?
Gewijzigd op 17/11/2010 11:55:37 door Teun Hesseling
 
Gerben J

Gerben J

17/11/2010 12:01:23
Quote Anchor link
Dan krijg je de links van één provincie. Maar ik wil graag 5 links per provincie.
 

Pagina: 1 2 3 volgende »



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.