Hallo mensen,

nav vorige post zelf ff nagedacht en probeer nu alles in 1 query op te halen:

$query = ("SELECT * FROM produkten JOIN label_manager on label_id WHERE label_manager.label_id =produkten.label_id, ORDER BY prod_naamlang, prod_naamlang DESC");

$query = ("SELECT * FROM produkten JOIN label_manager on label_id WHERE label_manager.label_id =produkten.label_id, ORDER BY prod_naamlang, prod_naamlang DESC"); $result = mysql_query($query) or die ('Fout bij ophalen gegevens');
$resulttellen = mysql_num_rows($result) or die ('Fout bij ophalen gegevens');

while($row = mysql_fetch_array($result))
{
$prodID= @$row['prod_id'];
$fileID= @$row['file_id'];
$labelID= @$row['label_id'];
$labelimage= @$row['label_name'];
}

maar dit geeft altijd error.

Wat doe ik nu fout id query?

Kees

welke error ?? table dumb ?
Je kan je database nabouwen in MS acces en daarin dan de query's maken.
Zo heb ik het ook altijd gedaan met joins en het werkt perfect :p
Oplossing was niet zo moeilijk in dit geval:

Join terwijl koloomen zelfde naam hebben..

LEFT JOIN was hier de oplossing en werkt nu ook:


<html><title>Wijnwinkel Groot- Vertroue</title>
<link href="../../shopstyle.css" rel="stylesheet" type="text/css">
<head>
</head>
<body class="body">
<table width="438" height="429" border="0" cellpadding="0" cellspacing="0" background="../midden.jpg">
<tr>
<td valign="top"><table width="443" height="429" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="19" rowspan="2" valign="top"><img src="img/spacer.gif" width="19" height="4" hspace="0" vspace="0" border="0"></td>
<td width="424" height="21" colspan="3" valign="bottom" class="koppen"><img src="img/spacer.gif" width="1" height="1" hspace="0" vspace="0" border="0">Wijnwinkel</td>
</tr>
<tr>
<td colspan="3" valign="top">
<?
include("../../instellen/connect.inc.php");

mysql_connect($host, $user, $password) or die('Kon geen contact maken met de database.');
mysql_select_db($DBname) or die("Fout bij aanspreken database");

$query =
"SELECT *
FROM produkten
LEFT JOIN label_manager ON label_manager.label_id
WHERE produkten.label_id = label_manager.label_id
";

$result = mysql_query($query) or die (mysql_error());
//$resulttellen = mysql_num_rows($result) or die ('Fout bij ophalen gegevens');

while($row = mysql_fetch_array($result))
{
$prodID= $row['prod_id'];
$fileID= $row['file_id'];
$labelID= $row['label_id'];
$labelimage= $row['label_name'];
$prodnaamlang= $row['prod_naamlang'];
$prodnaamkort= $row['prod_naamkort'];
$prodsoortlang=$row['prod_soortlang'];
$prodsoortkort= $row['prod_soortkort'];
$prodaanplant= $row['prod_aanplant'];
$prodalcohol= $row['prod_alcohol'];
$prodopbrengst= $row['prod_opbrengst'];
$prodverpakking= $row['prod_verpakking'];
$prodinhoud= $row['prod_inhoud'];
$prodkleur= $row['prod_kleur'];
$prodprijs1= $row['prod_prijs1'];
$prodprijs2= $row['prod_prijs2'];
$notitie= $row['prod_notitie'];
$drinken= $row['prod_drinken'];

?>
<form method="get" action="wijn.php" class="catalogusform">
<table width="136" height="107" border="0" cellpadding="0" cellspacing="0" background="img/labels/<? echo $labelimage; ?>" class="catalogustabelletjes">
<tr>
<td valign="top"><table width="136" height="107" border="0" cellpadding="2" cellspacing="0">
<tr align="right" valign="middle">
<td height="21" colspan="2" class="produktlabelkop"><span class=style3><? echo $prodnaamkort; ?><img src="./img/spacer.gif" width="3" height="1" hspace="0" vspace="0" border="0" align="absmiddle"></span></td>
</tr>
<tr>
<td width="70" height="69" valign="top"><input name="Submit" type="image" value="Submit" src="../img/spacer.gif" width="70" height="69">
<input name="prodID" type="hidden" id="prodID" value="<? echo $prodID;?>"></td>
<td align="left" valign="top" class="produktlabeltextklein"><? echo $prodsoortkort; ?><br>
<? echo $prodaanplant; ?><br>
<? echo $prodkleur; ?><br>
va. € <? echo $prodprijs1; ?></td>
</tr>
</table></td>
</tr>
</table>
</form>
<?
}
?></td>
</tr>
</table></td>
</tr>
</table>
</body>
</html>


Maar nu loop ik tegen iets anders aan:

de reultataen worden ieder netjes op hun eigen formulier geprint maar er zit ruimte tussen de formulieren en die krijg ik maar niet weg. Er zit een rand om het form en de tabel voor de duidelijkheid

http://www.subasonic.nl/zieruimte.html
kees, misschien vind je het leuk om tutorial over joins te schrijven?! :)
"
$prodID= $row['prod_id'];
$fileID= $row['file_id'];
$labelID= $row['label_id'];
$labelimage= $row['label_name'];
$prodnaamlang= $row['prod_naamlang'];
$prodnaamkort= $row['prod_naamkort'];
$prodsoortlang=$row['prod_soortlang'];
$prodsoortkort= $row['prod_soortkort'];
$prodaanplant= $row['prod_aanplant'];
$prodalcohol= $row['prod_alcohol'];
$prodopbrengst= $row['prod_opbrengst'];
$prodverpakking= $row['prod_verpakking'];
$prodinhoud= $row['prod_inhoud'];
$prodkleur= $row['prod_kleur'];
$prodprijs1= $row['prod_prijs1'];
$prodprijs2= $row['prod_prijs2'];
$notitie= $row['prod_notitie'];
$drinken= $row['prod_drinken']; "

heb je tijd over ofzo? :-)

gebruik gewoon $row overal, zet het niet in aparte vars die je vervolgens maar 1 keer gebruikt, dit kjost veel tijd en geheugen en het heeft geen nut.


LEFT JOIN label_manager ON label_manager.label_id

da kannie.

De syntax is of:
SELECT *
FROM produkten
LEFT JOIN label_manager ON produkten.label_id = label_manager.label_id

of

SELECT *
FROM produkten
LEFT JOIN label_manager
WHERE produkten.label_id = label_manager.label_id


Over je nieuwe probleem: je print losse forms in een enkele cell van de buitenste tabel, en je zet er geen BR tussen. HTML gaat dus maar wat gokken over wat je bedoelt.
Wat betreft de queries: de 1e is goed 2e geeft fout op where clausule.

Wel vreemd dat mij query zelfde resultaat gaf?

Opnieuw zetten van variabeles $prodID=
helpt mij beter te begrijpen voor nu ben nog niet zolang bezig.

Over 2e probleem:

Bedankt voor je aanwijzing. ik heb er nu nog een tabelletje omheen gezet en nu staan ze tegen elkaar aan, maar als ik er dan een br inzet komt ie weer op de ruimte van een paragraaf uit??

Kheb voorbeeld online staan op:

http://www.subasonic.nl/zieruimte.html

Zal ik verder met CSS moeten doen vrees ik?

Kheb oplossing gevonden:
De tabel die ik heb toegevoegd heb ik 5 pixels groter gemaakt als de tabel die erin komt en nu is de afstand precies zoals ik het hebben wil.

In ieder geval maar weer bedankt mensen!

Kees

Reageren