Hallo dedlfix,
Ob Left oder nicht, hängt von der Aufgabenstellung ab. Jörg hat deinen Left Join zu einem impliziten Inner Join umgeschrieben (was vermutlich nicht gewollt ist). Die Verknüpfungsbedingung in der WHERE-Klausel erzeugt auch einen Join, aber einen Inner Join. Für Outer Joins muss man die explizite Join-Syntax nehmen.
ich hab das jetzt so umgesetzt und wie erwartet bekomme ich eine Fehlermeldung
function serienTEMP($mysqli, $id) {
$select = "SELECT
`web_serien`.`s_id`,
`web_serien`.`s_hID`,
`web_serien`.`s_titel`,
`web_serien`.`s_titelUrl`,
`web_serien`.`s_status`,
`web_serien`.`s_titelUrl`,
`web_hersteller`.`h_titelURL`,
`web_hersteller`.`h_id`
FROM
`web_serien`,
`web_hersteller`
WHERE
`web_hersteller`.`h_titelURL` = ?
AND `web_serien`.`s_hID` = `web_hersteller.h_id`";
$stmt->bind_param("s", $id);
$stmt->execute();
$stmt->bind_result($s_id, $s_hID, $s_titel, $s_titelUrl, $s_status, $s_titelUrl, $h_titelURL, $h_id);
$stmt->store_result();
if($stmt->num_rows() > 0) {
while ($stmt->fetch()){
$serien[] = array(
's_id' => $s_id,
's_hID' => $s_hID,
's_titel' => $s_titel,
's_titelUrl' => $s_titelUrl,
's_status' => $s_status,
'h_titel' => $h_titel,
'h_titelURL' => $h_titelURL,
'h_id' => $h_id
);
}
return $serien;
}
}
Notice: Undefined variable: stmt in uebersicht.php on line 250
Fatal error: Call to a member function bind_param() on a non-object in uebersicht.php on line 250
Ich mach es am besten mit zwei Abfragen wie ich es im ersten Posting schon geschrieben habe.