Versio

Links tonen per provincie

Overzicht Reageren

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

25/05/2012 08:11:02
Gesponsorde koppelingen:
BHosted Hosting al vanaf € 1,- per maand

Controleer nu gratis jouw domeinnaam:

  
 
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 van Oeffel

jasper van Oeffel

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 van Oeffel

jasper van Oeffel

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 van Oeffel

jasper van Oeffel

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 van Oeffel
 
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 van Oeffel

jasper van Oeffel

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 van Oeffel
 
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.
 
Karl Karl

Karl Karl

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?
 
Karl Karl

Karl Karl

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"
 
Karl Karl

Karl Karl

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 Karl Karl
 
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