Data uit meerdere tables uitlezen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Remco Leuven

Remco Leuven

24/02/2009 12:20:00
Quote Anchor link
Hallo allemaal, ik ben bezig met een klein projectje om nieuwsbrieven van een OsCommerce shop ook online weer te geven.

In de database staan twee tables die ik nodig heb; newsletters en newsletters_products

In de eerste wordt o.a. opgeslagen: newsletters_id, title, content, date_added
In de tweede staat newsletters_id en products_id (de id's van producten die gekoppeld zijn aan de nieuwsbrief.

Nu heb ik een PHP script gemaakt met hulp van meerdere tuts op deze site. En het nieuwsbericht wordt goed weergegeven uit de database (datum, titel en content). Maar van de gekoppelde producten zie ik er steeds maar 1, terwijl er drie in staan (dit kunnen er ook meer worden, variabel aantal).

Hoe kan dit? Hierbij mijn script:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?
// Verbinding maken met de databaseserver
$link = mysql_connect('localhost','***','***') or die("Kan geen verbinding maken met de nieuwsbriefserver.");

// De database selecteren
mysql_select_db('***',$link)or die("Er is verbinding met de server maar de nieuwsbriefdatabase is niet gevonden.");

// GET statement maken, als de ID niet numeriek is wordt er geredirect naar de 404
if(isset($_GET['id']) && is_numeric($_GET['id']))
{

$id = $_GET['id'];
}

else
{
header ("Location: ../web/404.shtml");
exit;
}


// Database query uitvoeren
$query = mysql_query("SELECT title, content, DATE_FORMAT(date_added, 'Verzonden op %d-%m-%Y om %H:%i.') AS date FROM newsletters WHERE newsletters_id='". $id ."'");

$query2 = mysql_query("SELECT * FROM newsletters_to_products WHERE newsletters_id='". $id ."'");

// Resultaat variabele maken
$result = mysql_fetch_array($query);
$result2 = mysql_fetch_array($query2);

// Resultaat nieuwsbrief weergeven
echo "Titel: ".$result['title'] ."<br />";
echo "Inhoud: ".$result['content'] ."<br />";
echo "Datum: ".$result['date'] ."<br />";
echo "<br /><br />";

// Resultaat producten weergeven
echo "Gekoppelde producten: ".$result2['products_id'] ."<br />";

?>


Uitput van dit script is:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
Titel: Testtitel
Inhoud: Testbericht
Datum: Verzonden op 24-02-2009 om 08:38.


Gekoppelde producten: 71


Terwijl er drie producten gekoppeld staan aan deze testnieuwsbrief:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
  newsletters_id products_id
      18 71
      18 365
      18 366
Gewijzigd op 01/01/1970 01:00:00 door Remco Leuven
 
PHP hulp

PHP hulp

22/12/2024 13:03:55
 
Jo colling

jo colling

25/02/2009 10:20:00
Quote Anchor link
while() gebruiken
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
while($result2 = mysql_fetch_array($query2))
{
echo "Gekoppelde producten: ".$result2['products_id'] ."<br />";
}
 



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.