Where.... and-problemer i MySQL
Har en MySQL med disse tabeller:CREATE TABLE tekst (
id mediumint(5) unsigned NOT NULL auto_increment,
dato date NOT NULL default '0000-00-00',
overskr text NOT NULL,
tekst text NOT NULL,
PRIMARY KEY (id),
KEY dato (dato),
KEY id (id)
) TYPE=MyISAM;
CREATE TABLE homepages (
id mediumint(4) unsigned NOT NULL auto_increment,
http char(100) NOT NULL default '',
tekst_id mediumint(5) unsigned NOT NULL default '0',
PRIMARY KEY (id)
) TYPE=MyISAM;
Til de enkelte tekster kan der tilknyttes links.
Jeg kan udtrække og vise teksterne med følgende script, men kun i tilfælde af, at der også er tilknyttet min. et link. Hvis der ingen links er tilknyttet vises der ingenting overhovedet.
Jeg vil tro at problemet ligger i WHERE-klausulen, men kan simpelthen ikke gennemskue, hvordan min SELECT burde være.
$id=$_GET["id"];
$query = mysql_query("SELECT t.id AS tid,dato,overskr,tekst,tekst_id,http
FROM tekst t, homepages
WHERE t.id='$id' AND tekst_id='$id' ");
//hente tekst + evt. forsalg og img-src
$r = mysql_fetch_array($query);
WHILE($r) {
$id = $r["tid"];
$dato = $r["dato"];
$overskr = $r["overskr"];
$tekst = $r["tekst"];
//kalde funktioner fra common.php til dato-konvertering
us_dk($dato);
//vise koncert + evt. forsalg og img-src
ECHO "<TR><TD><DIV CLASS=fed>$dato $overskr</DIV><BR></TD></TR>\n";
ECHO "<TR><TD>$tekst<BR></TD></TR>\n";
//hente http's fra db
WHILE($id == $r["tekst_id"]) {
$homepage = $r["http"];
//homepage eller ej
IF(strlen($homepage)>"NULL") {
ECHO "<TR><TD><BR>Se hjemmeside: <A HREF=\"http://$homepage\" TARGET=\"_blank\">$homepage</A><BR></TD></TR>\n";
}
ELSE {
ECHO "\n";
}
$r = mysql_fetch_array($query);
}
}
?>
På forhånd tak!
