Commit 9ea4dd5a authored by Nico Schallehn's avatar Nico Schallehn

$GET_arr['Suche'] und Debug

parent 2c9bea05
......@@ -56,8 +56,8 @@ class MediaDBViewerAPI{
}
else{
// Wenn irgenein filter gesetzt ist...
if( (isset($GET_arr['imdbID']) OR isset($GET_arr['3d']) OR isset($GET_arr['GenreID']) OR isset($GET_arr['Genre']) OR
isset($GET_arr['SchauspielerID']) OR isset($GET_arr['Schauspieler']) ) AND $GET_arr['Table'] == "Filme" ){ // Filterung nur für Tablle Filme!!
if( (isset($GET_arr['imdbID']) OR isset($GET_arr['3d']) OR isset($GET_arr['GenreID']) OR isset($GET_arr['Genre']) OR
isset($GET_arr['SchauspielerID']) OR isset($GET_arr['Schauspieler']) OR isset($GET_arr['Suche']) ) AND $GET_arr['Table'] == "Filme" ){ // Filterung nur für Tablle Filme!!
$first = true;
$Where = "WHERE ";
if(isset($GET_arr['imdbID']) AND is_numeric($GET_arr['imdbID'])){
......@@ -69,25 +69,28 @@ class MediaDBViewerAPI{
$Where .= ($first?"":" AND ").'3d '.($GET_arr['3d']?"!=":"=").'""';
$first = false;
}
if(isset($GET_arr['Suche'])){
$Suche = " `name` LIKE '".$GET_arr['Suche']."' OR
`year` =".$GET_arr['Suche']." OR
`md5` LIKE '".$GET_arr['Suche']."' OR
`resolution` LIKE '".$GET_arr['Suche']."' OR
`comment` LIKE '".$GET_arr['Suche']."'";
$Where .= (($first?"":" AND ").$Suche);
$first = false;
}
if(isset($GET_arr['GenreID'])){
$Query = 'SELECT group_concat(fg.imdbID) AS imdbIDs FROM FilmGenre AS fg JOIN Genre AS g ON fg.genreID = g.genreID WHERE g.genreID IN ('.$GET_arr['GenreID'].') ';
$Query;
$Genre = $this->DB_Objekt->query($Query);
if($this->DB_Objekt->error != ""){ return $this->error(1005, $this->DB_Objekt->error);}
$GenreArr = $Genre->fetch_array();
//echo $GenreArr["imdbIDs"];
$Where .= (strlen($GenreArr["imdbIDs"])>0?($first?"":" AND ").str_replace(",)", ")", 'imdbID in ('.$GenreArr["imdbIDs"].')'): ($first?" 0 ":""));
$first = false;
}
if( isset($GET_arr['Genre'])){
$Query = 'SELECT group_concat(fg.imdbID) AS imdbIDs FROM FilmGenre AS fg JOIN Genre AS g ON fg.genreID = g.genreID WHERE g.gername IN ("'.str_replace(",", '","', $GET_arr['Genre']).'") ';
//echo $Query;
$Genre = $this->DB_Objekt->query($Query);
if($this->DB_Objekt->error != ""){ return $this->error(1005, $this->DB_Objekt->error);}
$GenreArr = $Genre->fetch_array();
//echo $GenreArr["imdbIDs"];
$Where .= (strlen($GenreArr["imdbIDs"])>0?($first?"":" AND ").str_replace(",)", ")", 'imdbID in ('.$GenreArr["imdbIDs"].')'): ($first?" 0 ":""));
$first = false;
}
......@@ -104,11 +107,11 @@ class MediaDBViewerAPI{
}
if( isset($GET_arr['Schauspieler'])){
$Query = 'SELECT group_concat(fs.imdbID) AS imdbIDs FROM FilmSchauspieler AS fs JOIN Schauspieler AS s ON fs.schauspielerID = s.schauspielerID WHERE s.name IN ("'.str_replace(",", '","', $GET_arr['Schauspieler']).'") ';
$this->DebugOut($Query." >>Zeile:".__LINE__);
//$this->DebugOut($Query." >>Zeile:".__LINE__);
$Schauspieler = $this->DB_Objekt->query($Query);
if($this->DB_Objekt->error != ""){ return $this->error(1005, $this->DB_Objekt->error);}
$SchauspielerArr = $Schauspieler->fetch_array();
$this->DebugOut($SchauspielerArr["imdbIDs"].">".strlen($SchauspielerArr["imdbIDs"])." >>Zeile:".__LINE__);
//$this->DebugOut($SchauspielerArr["imdbIDs"].">".strlen($SchauspielerArr["imdbIDs"])." >>Zeile:".__LINE__);
$Where .= (strlen($SchauspielerArr["imdbIDs"])>0?($first?"":" AND ").str_replace(",)", ")", 'imdbID in ('.$SchauspielerArr["imdbIDs"].')'): ($first?" 0 ":""));
$first = false;
}
......@@ -116,21 +119,9 @@ class MediaDBViewerAPI{
// Überprüfen ob Schauspieler oder Genre gefordert wird
$SpaltenArr = explode(",", $GET_arr['Spalten']);
$ListGenre = (in_array("Genre", $SpaltenArr)?true:false);
$ListSchauspieler = (in_array("Schauspieler", $SpaltenArr)?true:false);
//echo $GET_arr['Spalten']."<>";
// Lösche Schauspieler und Genre aus der Select Anweisung
$GET_arr['Spalten'] = str_replace("Genre,", "", $GET_arr['Spalten']);
$GET_arr['Spalten'] = str_replace(",Genre", "", $GET_arr['Spalten']);
$GET_arr['Spalten'] = str_replace("Genre", "", $GET_arr['Spalten']);
$GET_arr['Spalten'] = str_replace("Schauspieler,", "", $GET_arr['Spalten']);
$GET_arr['Spalten'] = str_replace(",Schauspieler", "", $GET_arr['Spalten']);
$GET_arr['Spalten'] = str_replace("Schauspieler", "", $GET_arr['Spalten']);
//echo $GET_arr['Spalten'];
/* wenn Genre oder Schauspieler gefordert sind, aber die imdbID nicht in der Spaltenliste ist... */
$NoimdbID = false;
if((($ListGenre OR $ListSchauspieler) AND !in_array("imdbID", $SpaltenArr) AND ($this->iset($GET_arr['Spalten'], "*") != "*" ))){
......@@ -139,10 +130,17 @@ class MediaDBViewerAPI{
}else{
$Select = $this->iset($GET_arr['Spalten'], "*");
}
// Lösche Schauspieler und Genre aus der Select Anweisung
$GET_arr['Spalten'] = str_replace("Genre,", "", $GET_arr['Spalten']);
$GET_arr['Spalten'] = str_replace(",Genre", "", $GET_arr['Spalten']);
$GET_arr['Spalten'] = str_replace("Genre", "", $GET_arr['Spalten']);
$GET_arr['Spalten'] = str_replace("Schauspieler,", "", $GET_arr['Spalten']);
$GET_arr['Spalten'] = str_replace(",Schauspieler", "", $GET_arr['Spalten']);
$GET_arr['Spalten'] = str_replace("Schauspieler", "", $GET_arr['Spalten']);
$Query= "SELECT ".$Select.
" FROM ".$GET_arr['Table']." "
.$Where
.$this->iset($GET_arr['Order'], " ", " ORDER BY ", " ")
.$this->iset($GET_arr['Limit'],"", " Limit "," ")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment