Diese Board wurde aus Spamschutz-Gründen auf minimale Funktionen beschränkt.
Nutze für neue Anfragen/Bug-Reports bitte meine Gitlab-Instanz.

Trailer Button

Was könnte man an der Filmverwaltung verbessern? Fragen und Anregungen von Entwickler an Entwickler.

Moderator: Lifestyle

Antworten
Hubisoft
Beiträge: 19
Registriert: Do 7. Sep 2006, 13:49

Trailer Button

Beitrag von Hubisoft »

Hi, ich mal wieder.

Hätte da vielleicht nen Vorschlag, der auf Interesse stoßen könnte.

Wäre es nicht irgendwie möglich, nen Button bei der DVD Ansicht einzubauen, der einen Filmtrailer abspielen läßt, dieser dann allerdings nicht ne neue Seite öffnet, sondern das File direkt öffnet.

Ich weiß, das ich mich ein wenig umständlich ausdrücke, daher hier ein Beispiel:

Ich habe den Film Braveheart in meinem Bestand und natürlich in deine hervorragende Datenbank gepflegt. Auf meinem Webserver oder auf irgendeinem anderen ist der Trailer als AVI/MPEG/MOV gespeichert.
Nun hätte ich gerne einen Knopf, der mir das File in meinem Mediaplayer öffnet.

Hoffe mein Beispiel hat es erklärt, was ich gerne hätte.

Frohes schaffen ;)
Benutzeravatar
der-domi
Site Admin
Beiträge: 673
Registriert: Di 4. Apr 2006, 19:22
Kontaktdaten:

Re: Trailer Button

Beitrag von der-domi »

Ja, ich verstehe das schon ganz gut. Aber ich weiß nicht, ob diese Funktion von vielen benötigt wird. Es gab schon öfters Vorschläge, welche wohl eher oft nur für den eigenen Zweck sinnvoll ist. So etwas werde ich nur selten übernehmen.

Mir kam aber eine Idee. Viel besser ist es, wenn jeder irgendwelche zusätzlichen Informationen abspeichern kann, wie er gerade möchte. Ich werde versuchen etwas in dieser Richtung zu entwickeln.
Nicht verzagen, Domi fragen

Viele Grüße
Dominik
Hubisoft
Beiträge: 19
Registriert: Do 7. Sep 2006, 13:49

Beitrag von Hubisoft »

Na dass ist doch mal ne Aussage...

Freu mich...

Bis bald....
Manuel
Beiträge: 37
Registriert: Mi 12. Jul 2006, 19:17

Beitrag von Manuel »

nunja ich hab mir das auch schon mal gedacht und ich habs dann einfach so gemacht das ich den Link zum Trailer in die Bemerkungen getan habe allerdings habe ich das schnell wieder aufgehört da es so einige an Trailer nicht gibt (oder besser gesagt ich hab sie nicht gefunden)
Nike-Shox-69
Beiträge: 5
Registriert: Mi 31. Jan 2007, 09:25

Trailler & Film Ab! Button

Beitrag von Nike-Shox-69 »

Hallo Jung's

da die Filmdatenbank auch sehr geeignet ist für viele vom Fernseher (DVBT oder aber auch Kabel Digital) aufgezeichnete Filme würde sich doch auch zu einem "Trailler" Butten ein "Film Ab!" Button sehr gut machen. Somit wärde die Filmdatenbank zugleich eine "Online-Home-Videothek".
Also wenn Dominik die "Frei konfigurierbaren Butten" einpflegen könnte wäre das eine Super Idee....
Somit könnte ich direkt den gesuchten Film ohne langes Suchen abspielen.

Gruß
Nike-Shox-69
Benutzeravatar
bflash
Beiträge: 16
Registriert: Mo 4. Dez 2006, 11:03
Kontaktdaten:

Re: Trailer Button

Beitrag von bflash »

Hallo zusammen !

Ich habe auf meiner Seite Trailer einfügen können. Zum Teil habe ich selbst welche erstellt und zum anderen Teil habe ich Sie von der Seite http://www.moviemaze.de verlinken können (zum größten Teil als Flash-Video).
Allerdings gibt es ein kleines Problem. Wenn ich den Trailer als Code in dem Feld Bemerkungen innerhalb der Datenbank auf myPHP eingetragen habe und später dann noch einmal im Frontend auf ändern gehe, wird auch der Code geändert und der Trailer ist nicht mehr sichtbar. Ansonsten funktioniert es aber sehr gut. Wer einmal sehen möchte wie es aussieht, kann meine Seite ja mal besuchen unter http://www.llst.de/filmdb

Hier ein paar Screenshots aus der MySQL Datenbank:
Bild
Bild
Bild
Bild
Bild
NickiS1305
Beiträge: 1
Registriert: Do 19. Jun 2008, 09:27

Re: Trailer Button

Beitrag von NickiS1305 »

Hi habe seit neustem auch die Filmverwaltung auf meiner HP nur wollte ich auch sowas mit Trailer eigentlich immer in Bemerkung! Nur die Filmverwaltung erkennt den Code von den Flash Trailern von moviemaze nicht!?

Kann man das irgendwie Kompatibel machen?


MFG Dominique

Edit: Ich habs mal so gemach wie mein vorredner! Das klappt 100% gibt es dann keine Fehler irgendwann?
Benutzeravatar
Lifestyle
Beiträge: 406
Registriert: Mo 17. Sep 2007, 20:24
Wohnort: Helpsen
Kontaktdaten:

Re: Trailer Button

Beitrag von Lifestyle »

NickiS1305 hat geschrieben: Edit: Ich habs mal so gemach wie mein vorredner! Das klappt 100% gibt es dann keine Fehler irgendwann?
Also das geht einwandfrei, braucht euch da also keine Sorgen machen. es darf jedoch nichts in den Filmdetails geändert werden, weil die HTML Tags dann zum Text werden.

Evtl. überleg ich mir zu dem Thema mal etwas schickes,....
MFG
L!f3

Bugs melden unter: http://bugs.lifeshammer.de (Auch Wünsche)
Anmeldung zum Bugtracker: http://bugs.lifeshammer.de/signup_page.php
Benutzeravatar
bflash
Beiträge: 16
Registriert: Mo 4. Dez 2006, 11:03
Kontaktdaten:

Re: Trailer Button

Beitrag von bflash »

Hallo !

Das Menu Menu598_sentFilmEinfuegen.php einfach wie folgt ändern:
Gilt für die Design-Version. Die Einträge im Bemerkungsfeld behalten dann auch ihre Formatierung.

<?php

/*******************************************
* *
* Filmverwaltung mit PHP & MySQL *
* *
*******************************************
* *
* Copyright: ab 2005 Dominik Erdmann *
* Internet: http://www.der-domi.de *
* *
*******************************************
* *
* Das Skript darf nach eigenem Belieben *
* geändert werden. Copyright-Hinweise und *
* Links auf http://www.der-domi.de dürfen nicht *
* verändert werden und müssen jederzeit *
* sichtbar bleiben! *
* *
*******************************************
*/

/*
* Falls Formular für einfügen oder ändern eines Film gensendet wurde
*/


if ( $_SESSION['UserRechte'] < 600 )
exit();

if ( $myVar->MenuID == 598 && ( isset($_POST['insert']) || isset($_POST['change']) ) && $_SESSION['UserRechte'] > 300 )
{


// alle POST-Variablen auf Richtigkeit prüfen und evtl. slashes einfügen
if ( strlen($_POST['Titel']) <= 0 )
$myVar->warnung[] = "Der Eintrag muss einen Titel besitzen!";
$Titel = $myDB->escape_string( htmlentities( $_REQUEST['Titel'] ) );
$Originaltitel = $myDB->escape_string( htmlentities( $_REQUEST['Originaltitel'] ) );
$Land = $myDB->escape_string( htmlentities( $_REQUEST['Land'] ) );
$FSK = $_REQUEST['FSK'];

if ( strlen( $_POST['Webseite'] ) )
$Webseite = $myDB->escape_string( htmlentities( "http://".str_replace( "http://", "", $_POST['Webseite'] ) ) );
else
$Webseite = $myDB->escape_string("");

// Zeilenumbrüche berücksichtigen, Tags in HTML-Entities konvertieren, Zeilenumbrüche umwandeln in <br />
if ( array_key_exists( 'Inhalt', $_POST ) )
$Inhalt = $myDB->escape_string( nl2br( htmlentities( $_REQUEST['Inhalt'] ) ) );
else
$Inhalt = "";
if ( array_key_exists( 'Bemerkung', $_POST ) )
$Bemerkung = $myDB->escape_string( $_REQUEST['Bemerkung'] );
else
$Bemerkung = "";

// anzDisks kontrollieren
if ( array_key_exists( 'anzDisks', $_REQUEST ) && (int)$_REQUEST['anzDisks'] >= 1 && (int)$_REQUEST['anzDisks'] <= 16 ) // 16 ist sehr hoch
$anzDisks = (int)$_REQUEST['anzDisks'];
else
$anzDisks = 1;

// brauchtPrivileg kontrollieren
if ( (int)$_REQUEST['brauchtPrivileg'] >= 0 && (int)$_REQUEST['brauchtPrivileg'] <= 99 )
$brauchtPrivileg = (int)$_REQUEST['brauchtPrivileg'];
else
$brauchtPrivileg = 1;
if ( $_REQUEST['brauchtPrivileg'] == '' )
$brauchtPrivileg = 1;

// Jahr kontrollieren
if ( (int)$_REQUEST['Jahr'] >= 1920 && (int)$_REQUEST['Jahr'] <= date('Y') )
$Jahr = (int)$_REQUEST['Jahr'];
else
$Jahr = $myDB->escape_string(0);

// Laufzeit kontrollieren
if ( (int)$_REQUEST['Laufzeit'] >= 1 && (int)$_REQUEST['Laufzeit'] <= 1500 )
$Laufzeit = (int)$_REQUEST['Laufzeit'];
else
$Laufzeit = 0;


// Falls Titel existiert, wird ein Hinweis ausgegeben
$sql = "SELECT FilmID FROM $myDB->FILME WHERE Titel = ".$Titel;
if ( isset ($_REQUEST['change']) )
$sql .= " AND FilmID != {$myVar->FilmID}";

$rs = $myDB->go($sql);
while ( $row = $myDB->getRow($rs) )
$myVar->hinweis[] = "Der Titel <a href=\"{$_SERVER['PHP_SELF']}?MenuID=280&FilmID={$row['FilmID']}\"><strong>".htmlentities($_REQUEST['Titel'])."</strong></a> ist bereits vorhanden!";

if ( (int) $_POST['setMyFilmID'] != 0 )
{
$sql = "SELECT COUNT(*) AS Anz FROM $myDB->FILME WHERE myFilmID=".$_POST['setMyFilmID']." AND COLLECT_CollectID=".$_POST['setCollectID'];
// Wenn Film ändern, dann FilmID!=diese für Query
if ( !isset($_REQUEST['insert']) )
$sql .= " AND FilmID!=".$_POST['FilmID'];
$rs = $myDB->go($sql);
$row = $myDB->getRow($rs);
if ( $row['Anz'] != 0 )
$myVar->warnung[] = "Diese FilmID ist in der gew&auml;hlten Kollektion bereits vorhanden!";
}
if ( array_key_exists( 'discs', $_REQUEST ) && $_POST['discs'] == 2 )
{
if ( (int) $_POST['DiscID'] <= 0 )
$myVar->warnung[] = "Ung&uuml;tige DiscID!";
else
{
$sql = "SELECT COUNT(*) AS Anz FROM $myDB->DISCS INNER JOIN $myDB->FILME ON FILME_FilmID=FilmID WHERE COLLECT_CollectID=".$_POST['setCollectID']." AND DiscID=".$_POST['DiscID'];
$rs = $myDB->go($sql);
$row = $myDB->getRow($rs);
if ( $row['Anz'] == 0 )
$myVar->warnung[] = "In dieser Kollektion ist keine passende DiscID vorhanden!";
}
}
// Markieren, ob sich CollectID geändert hat. Wird für DiscID ändern verwendet
$CollectIDchanged = FALSE;
if ( isset($_POST['change']) )
{
$sql = "SELECT COLLECT_CollectID FROM $myDB->FILME WHERE FilmID=$myVar->FilmID";
$rs = $myDB->go($sql);
$row = $myDB->getRow($rs);
if ( $row['COLLECT_CollectID'] != $_POST['setCollectID'] )
{
$oldCollectID = $row['COLLECT_CollectID'];
$CollectIDchanged = TRUE;

// falls sich auf der Disk noch weitere Filme befinden, kann CollectID nicht geändert werden
$sql = "SELECT DiscID FROM $myDB->DISCS WHERE FILME_FilmID=$myVar->FilmID";
//$sql = "SELECT COUNT(*) AS Anz FROM $myDB->DISCS WHERE FILME_FilmID!=$myVar->FilmID AND DiscID IN (SELECT DiscID FROM $myDB->DISCS WHERE FILME_FilmID=$myVar->FilmID)";
$rs = $myDB->go($sql);
$anz = 0;
while ( $row = $myDB->getRow($rs) )
{
$sql2 = "SELECT COUNT(*) AS Anz FROM $myDB->DISCS INNER JOIN $myDB->FILME ON FILME_FilmID=FilmID WHERE FILME_FilmID!=$myVar->FilmID AND COLLECT_CollectID=$oldCollectID AND DiscID=".$row['DiscID'];
$rs2 = $myDB->go($sql2);
$row2 = $myDB->getRow($rs2);
$anz += $row2['Anz'];
}

if ( $anz )
$myVar->warnung[] = "Auf der Disk zu diesem Film befinden sich weitere Filme. Es muss zuerst über die Diskverwaltung die Zuordnung gel&ouml;scht werden, damit die Kollektion ge&auml;ndert werden kann! (Lese im Handbuch dazu mehr!)";
}
}

// wenn keine Fehlermeldung, dann einfügen
if ( !count($myVar->warnung) )
{
if ( isset($_REQUEST['insert']) )
{
$sql = "INSERT INTO $myDB->FILME (Titel, inserted, USERS_UserID, COLLECT_CollectID, myFilmID, Originaltitel, Jahr, Land, Laufzeit, FSK, FSKunbekannt, Inhalt, Bemerkung, istTopfilm, Webseite, brauchtPrivileg, FORMATE_FormatID) " .
"VALUES ( '', now(), {$_SESSION['UserID']}, 0, 0, '', 0, '', 0, 0, 0, '', '', 0, '', 0, 0 )";
$rs = $myDB->go($sql);
$myVar->FilmID = mysql_insert_id();
}


// Wenn myFilmID!=0, muss keine neue myFilmID gesucht werden
if ( array_key_exists( 'setMyFilmID', $_REQUEST ) && (int)$_POST['setMyFilmID'] != 0 )
$myVar->myFilmID = (int)$_POST['setMyFilmID'];
else
{
// Passende myFilmID suchen
if ( $settings->firstFitID )
{
$sql = "SELECT myFilmID FROM $myDB->FILME WHERE COLLECT_CollectID=".$_POST['setCollectID']." AND FilmID!=$myVar->FilmID ORDER BY myFilmID ASC";
$rs = $myDB->go($sql);
$oldID = 1;
while ( $row = $myDB->getRow($rs) )
if ( $row['myFilmID'] > $oldID )
break;
else
++$oldID;

$myVar->myFilmID = $oldID;
}
else
{
$sql = "SELECT MAX(myFilmID)+1 AS myFilmID FROM $myDB->FILME WHERE COLLECT_CollectID=".$_POST['setCollectID'];
$rs = $myDB->go($sql);
$row = $myDB->getRow($rs);
$myVar->myFilmID = $row['setMyFilmID'];
}
}

// Nach dem Einfügen von Datum, folgt der Rest, bzw. beim Ändern eines Eintrags
$sql = "UPDATE $myDB->FILME SET Titel=$Titel, Originaltitel=$Originaltitel, COLLECT_CollectID=".$_POST['setCollectID'].", myFilmID=$myVar->myFilmID, Jahr=$Jahr, brauchtPrivileg=$brauchtPrivileg, Land=$Land, FSK=$FSK, FSKunbekannt=";
if ( array_key_exists( 'FSKunbekannt', $_POST ) && (int)$_POST['FSKunbekannt'] == 1 )
$sql .= "1";
else
$sql .= "0";
$sql .= ", Laufzeit=$Laufzeit, istTopfilm=";
if ( array_key_exists( 'istTopfilm', $_POST ) && (int)$_POST['istTopfilm'] == 1 )
$sql .= "1";
else
$sql .= "0";
$sql .= ", Webseite=$Webseite, Inhalt=$Inhalt, Bemerkung=$Bemerkung, FORMATE_FormatID={$_REQUEST['setFormatID']} WHERE FilmID = $myVar->FilmID";
$rs = $myDB->go($sql);

// DiscID finden, wenn neue Discs angelgt werden
if ( $myVar->printChange == FALSE && $_POST['discs'] == 1 ) // wenn neue Disc(s) einfügen
{
if ( $settings->firstFitID )
{
$sql = "SELECT DISTINCT di.DiscID FROM $myDB->DISCS di INNER JOIN $myDB->FILME fi ON di.FILME_FilmID = fi.FilmID WHERE fi.COLLECT_CollectID = ".$_POST['setCollectID']." ORDER BY DiscID ASC";
$rs = $myDB->go($sql);
$oldID = 1;
$check = FALSE;

// es wird gesucht, wo anzDisks hintereinander frei sind
while ( $row = $myDB->getRow($rs) )
if ( $oldID < $row['DiscID'] || $check )
{
// am Anfang markieren, dass freie DiscID gefunden wurde
if ( !$check )
$check = TRUE;
// wenn Differenz von nächste belegte ID und gemerkte freie ID >= Anzahl ist, dann ID gefunden
elseif ( $row['DiscID']-$oldID > $anzDisks )
break;
// ansonsten Markierung rückgängig machen
else
{
$check = FALSE;
$oldID = $row['DiscID'] + 1;
}
}
else
++$oldID;

$DiscID = $oldID;
}
else // !$firstFitID
{
$sql = "SELECT MAX(DiscID)+1 AS DiscID FROM $myDB->DISCS INNER JOIN $myDB->FILME ON FILME_FilmID=FilmID WHERE COLLECT_CollectID=".$_POST['setCollectID'];
$rs = $myDB->go($sql);
$row = $myDB->getRow($rs);
$DiscID = $row['DiscID'];
}

for ( $i = 0; $i < $anzDisks; ++$i )
{
$id = $DiscID+$i;
$sql = "INSERT INTO $myDB->DISCS (DiscID,FILME_FilmID,USERS_UserID,ausgeliehenAm) VALUES (".$id.",$myVar->FilmID,0,'0000-00-00')";
$myDB->go($sql);
}
}
elseif ( $myVar->printChange == FALSE && $_POST['discs'] == 2 ) // wenn einer DiscID zuordnen
{
$sql = "INSERT INTO $myDB->DISCS (DiscID,FILME_FilmID) VALUES (".(int)$_POST['DiscID'].",$myVar->FilmID)";
$myDB->go($sql);
}


// wenn beim Ändern die CollectID sich geändert hat, muss die DiscID geändert werden
if ( $CollectIDchanged == TRUE )
{
$sql = "SELECT COUNT(*) AS Anz FROM $myDB->DISCS WHERE FILME_FilmID=$myVar->FilmID";
$rs = $myDB->go($sql);
$row = $myDB->getRow($rs);
$anzDisks = $row['Anz'];

$sql = "DELETE FROM $myDB->DISCS WHERE FILME_FilmID=$myVar->FilmID";
$rs = $myDB->go($sql);

if ( $settings->firstFitID )
{
$sql = "SELECT di.DiscID FROM $myDB->DISCS di INNER JOIN $myDB->FILME fi ON di.FILME_FilmID = fi.FilmID WHERE fi.COLLECT_CollectID = ".$_POST['setCollectID']." ORDER BY DiscID ASC";
$rs = $myDB->go($sql);
$oldID = 1;
$check = FALSE;

// es wird gesucht, wo anzDisks hintereinander frei sind
while ( $row = $myDB->getRow($rs) )
if ( $oldID < $row['DiscID'] || $check )
{
// am Anfang markieren, dass freie DiscID gefunden wurde
if ( !$check )
$check = TRUE;
// wenn Differenz von nächste belegte ID und gemerkte freie ID >= Anzahl ist, dann ID gefunden
elseif ( $row['DiscID']-$oldID > $anzDisks )
break;
// ansonsten Markierung rückgängig machen
else
{
$check = FALSE;
$oldID = $row['DiscID'] + 1;
}
}
else
++$oldID;

$DiscID = $oldID;
}
else // !$firstFitID
{
$sql = "SELECT MAX(DiscID)+1 AS DiscID FROM $myDB->DISCS INNER JOIN $myDB->FILME ON FILME_FilmID=FilmID WHERE COLLECT_CollectID=".$_POST['setCollectID'];
$rs = $myDB->go($sql);
$row = $myDB->getRow($rs);
$DiscID = $row['DiscID'];
}

for ( $i = 0; $i < $anzDisks; ++$i )
{
$id = $DiscID+$i;
$sql = "INSERT INTO $myDB->DISCS (DiscID,FILME_FilmID) VALUES (".$id.",$myVar->FilmID)";
$myDB->go($sql);
}

}



// alle alten Schauspieler-Beziehungen löschen
$sql = "DELETE FROM $myDB->FILME_ACTORS WHERE FILME_FilmID = $myVar->FilmID";
$rs = $myDB->go($sql);

// Schauspieler einfügen
$actors = getArrayNames( $_REQUEST['Actors'], $settings, $myDB );
$actorsNameID = getArrayNameID( $actors, "Actors", $myDB );
insertIntoRelation( $actorsNameID, "Actors", $myVar->FilmID, $myDB );

// alle alten Regisseure-Beziehungen löschen
$sql = "DELETE FROM $myDB->FILME_REGISSEURE WHERE FILME_FilmID = $myVar->FilmID";
$rs = $myDB->go($sql);

// Regisseure einfügen
$regie = getArrayNames( $_REQUEST['Regisseure'], $settings, $myDB );
$regiesNameID = getArrayNameID( $regie, "Regisseure", $myDB );
insertIntoRelation( $regiesNameID, "Regisseure", $myVar->FilmID, $myDB );


// Genres ändern
// erst alle gesetzten Genre löschen...
$sql = "DELETE FROM $myDB->FILME_GENRES WHERE FILME_FilmID=$myVar->FilmID";
$rs = $myDB->go($sql);

// ... dann neu einfügen
if ( array_key_exists( 'Genre', $_POST ) )
{
for ( $i = 0; $i < count($_POST['Genre']); ++$i )
{
$sql = "INSERT INTO $myDB->FILME_GENRES (FILME_FilmID, GENRES_GenreID) VALUES ($myVar->FilmID, {$_POST['Genre'][$i]})";
$rs = $myDB->go($sql);
}
}

if ( isset($_FILES['Cover']) && !$_FILES['Cover']['error'] )
insertCover( $myDB, $myVar, $gdlib );

if ( strlen($_POST['CoverURL']) && $_POST['CoverURL'] != 'http://' ) {
$urls = split(";", $_POST['CoverURL']);
foreach($urls as $url) {
insertCover( $myDB, $myVar, $gdlib, trim($url) );
}
}

// wenn alles erfolgreich war...
$myVar->printChange = TRUE;
}
}


?>
Benutzeravatar
Lifestyle
Beiträge: 406
Registriert: Mo 17. Sep 2007, 20:24
Wohnort: Helpsen
Kontaktdaten:

Re: Trailer Button

Beitrag von Lifestyle »

Hallo,

ich habe mittlerweile die Trailer als eignen Punkt in der Datenbank realisiert. Basierend auf dem Flash Player von Youtube.
Derzeit ist es so, dass ich alle Trailer auf meinem eigenen Webspace hoste und anzeige.

Werde aber auch noch die Möglichkeit bieten, externe Player alla Moviemaze zu integrieren. Es ist dabei jedoch zu beachten, dass fehlerhafte Codes die Anziege der Seite beschädigen können.

Falls noch jemand Anregungen hat möge er sich melden.
MFG
L!f3

Bugs melden unter: http://bugs.lifeshammer.de (Auch Wünsche)
Anmeldung zum Bugtracker: http://bugs.lifeshammer.de/signup_page.php
Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast