• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Videodatenbank - wie YouTube.com

Hesoyam

Neues Mitglied
Hallo,

da ich mich ja nun um meine Serverweiterleitung und um meine Spracherkennung gekümmert habe, möchte ich mich nun um meine Videodatenbank kümmern.

Wie ihr das ja von youtube kennt hat jedes Video eine ID.
Ich möchte, dass meinen Videos, die ich über ein Formualr hochlade auch so eine ID bekommen und dass jede ID eine eigene Seite bekommt.
Da da warscheinlich unheimlich viel Arbeit dahinter steckt und da ich ja nicht gerade ungewollt bin auch was dafür zu machen, wäre es echt nett, wenn mir da einer etwas intensiver helfen würde.

Selbst wenn ich nur vereinzelt Hilfe bekommen würde, wäre es dennoch echt nett, da ihr ja das alles, wie ich schon des öfteren erwähnte, alles für lau macht.

Also zusammengefasst, stelle ich mir das so vor (soll jetzt nicht wieder wie eine Bestellung klingen)
- Videos werden im ACP über Formular hochgeladen
- Gleichzeitig wird bei diesem Formular eine Addresse vergeben, also wenn ich es mit dem Formular in den Ordner http://meineseite.de/Videos/Music/ hochlade, dann soll in der DB als URL automatisch eingetragen werden
http://meineseite.de/Videos/Music/lied.mp3
- Das Video bekommt eine ID (einfach mit MySQL)
- Jede ID bekommt seine eigene Seite
- Wird eine ID aufgerufen, die es nicht(mehr) gibt, soll eine Seite angezeigt werden, auf der steht, dass es diese ID nicht(mehr) gibt.
- Alle Videos sollen auf der Startseite des Video-Ordners (http://meineseite.de/Videos/index.php) augelistet werden in Kategorien eingeordnet werden (wie im Formular angegeben: Musik; Film)

Ich denke, dass es das war.
Also nochmal, dass soll keine Bestellliste sein und ich werde mir alles selber zusammenschreiben ... aber ich bracueh Hilfe, da ich, wie ja in meiner Signatur steht, ein PHP-Anfänger bin und ich da nur Gerademal-Grundkenntnisse besitze.

Also wenn Ihr mir helfen wollt, dann bedanke ich mich recht herzlich.
Von mir aus erwähne ich euch auch als (c) auf der Video-Seite, wenn euch das wichtig ist ^^ (mein ich ernst)

Danke an alle die mir helfen und mir auch schon so oft geholfen haben, tolles Forum und echte berreicherung und Must-Have für alle HTML- und PHP-Könner.

Grüsse
 
Zuletzt bearbeitet:
Hi,

du kannst ja mal anfangen und wenn du auf ein konkretes Problem triffst, könenn wir dir sicher helfen ;) Wie du ja selber schon bemerkt hast, ist das ne menge Arbeit und du solltest dir erstmal ein vernünftiges Buch über PHP und MySQL kaufen/leihen. Grundlagen sollten bei deinem Projekt ebenfalls ein "Must-Have" sein!!
 
°.°
oookey ... also wenn ich das fertig habe ... dann darf ich wieder nachfragen? ok ... dann ehm ... danke ^^
 
So, da ich keinen neuen Threat aufmachen möchte, werde ich nun einfach hier weiterschreiben, man muss ja nicht provokativ Speicher verschwenden.

Also:

Ich habe folgendes Bearbeitet, wobei noch ziemlich viel Arbeit auf mich wartet:

- ACP aktiviert
- Tagebuch aktiviert (noch fehlerhaft)
- Video-Upload aktiviert (noch kein BETA, da Fehlerhaft)
- Logdatei aktiviert

Die Logdatei funktioniert einwandfrei, da bin ich fast schon Stolz auf mich, dass ich wenigstens das Fehlerfrei hinbekommen habe, solltet ihr dennoch welche finden, ich werde eure kritik verkraften.

Das Tagebuch ´habe ich eigentlich 1:0,5 aus einem Buch abgeschrieben, aber irgendwie habe ich beim umsetzen wohl Fehler gemacht, auf die ich nicht komme. Quellcode folgt unten.

Beim Video-Upload habe ich leider vergessen, was der genaue Fehler war, aber das kann ich getrost vernachlässigen, denn diese Funktion werde ich wohl eh erst später realisieren.

So ... damit ihr mir auch sagen könnt, was ich falsch gemacht habe, poste ich euch hier den Link zum ACP und Nutzername / Passwort (natürlich nur das, welches ich zu BETA-Zwecken eingerichtet habe.

Link: Colombia Unida - Login - ACP
Nutzername: Admin
PW: admin (sehr geistreich ich weiss ... Nutzername muss 1:1 'Admin' sein.)

Quellcode (für Tagebuch)
PHP:
<?php include('../inc/titel.inc'); ?>
<?php include('../inc/auth.php'); ?>
<?php $thisPage = "Tagebuch"; ?>
<?php
    include('../inc/mysql.inc');
    $aktion = $_GET['aktion'];
    $id = $_GET['id'];
    if($aktion == "Delete") {
        $query = "DELETE FROM tagebuch WHERE id = $id";
        $dummy = mysql_query($query);
        unset($eintrag, $datum, $jahr, $monat, $id);
    } elseif ($aktion == "Edit") {
        $query = "SELECT * FROM tagebuch WHERE id = $id";
        $sql = mysql_query($query);
        $db = mysql_fetch_object($sql);
        $id = $db->id;
        $eintrag = $db->eintrag;
        $datum = $db->datum;
        $monat = $db->monat;
        $jahr = $db->jahr;
    } else {
        $id = $_POST['id'];
        $eintrag = trim($_POST['eintrag']);
        $datum = $_POST['datum'];
        $jahr = $_POST['jahr'];
        $monat = $_POST['monat'];
        if (!empty($id)) {
            $query = "UPDATE tagebuch SET "
                    ."eintrag = '$eintrag', datum = '$datum', monat = '$monat', jahr = '$jahr'"
                    ."WHERE id = $id";
            } elseif (!empty($eintrag)) {
                $query = "INSERT INTO tagebuch "
                        ."(eintrag, datum, monat, jahr)"
                        ."VALUES ('$eintrag', '$datum', '$monat', '$jahr'";
                $dummy = mysql_query($query);
                unset($id, $eintrag, $datum, $jahr, $monat);
            }
    }
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <title><?=$titel?> - <?=$thisPage?></title>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   <meta http-equiv="Content-Style-Type" content="text/css" />
   <meta name="Content-Language" content="de" />
   <meta name="author" content="Hesoyam Design" />
   <meta name="KeyWords" content="Reise, Columbien, Bogota, Süd, Amerika" />
   <meta name="Description" content="Auf dieser Seite wird in die Reise eingeführt" />
    <link href="../css/print.css" rel="stylesheet" type="text/css" media="print" />
    <link href="../css/screen.css" rel="stylesheet" type="text/css" media="screen, projection" />
    <!--[if lte IE 6]><link rel="stylesheet" href="../css/ielte6.css" type="text/css" media="screen" /><![endif]-->

 </head>
 <body>
 <div id="container">
  <a class="skip" href="#main">Navigation überspringen</a>
      <? include('../inc/logo.inc') ?>
    <? include('../inc/menu.inc')?>
    <? include('../inc/subnav.inc')?>
    
  <div id="main">
   <h1>Admin Control Panel</h1>
        <form action="index.php" method="post">
            <table width="100%">
                <tr align="center">
                    <td><input name="datum" 
                        onfocus="if(this.value=='YYYY-MM-DD')this.value=''"
                        onblur="if(this.value=='')this.value='YYYY-MM-DD'" value="<?=$datum?>" width="33%"/></td>
                    <td><input name="monat"
                        onfocus="if(this.value=='Monat')this.value=''"
                        onblur="if(this.value=='')this.value='Monat'" value="<?=$monat?>" width="33%" /></td>
                    <td><input name="jahr"
                        onfocus="if(this.value=='jahr')this.value=''"
                        onblur="if(this.value=='')this.value='Jahr'" value="<?=$jahr?>" width="33%" /></td>
                </tr>
                <tr>
                    <td colspan="3"><textarea name="eintrag" style="width:100%; height:150px;"><?=$eintrag?></textarea></td>
                  </tr>
                <tr>
                    <td colspan="3" align="center"><input type="submit" value="Aktualisieren" /></td>
                  </tr>
              </table>
           </form>
        <table border="1" cellpadding="1" cellspacing="1" width="100%">
            <tr align="center">
                <td><b>ID</b></td>
                <td><b>Datum</b></td>
                <td><b>Eintrag</b></td>
                <td><b>Bearbeiten</b></td>
            </tr>
<?
    $query = "SELECT * FROM tagebuch ORDER BY id DESC";
    $sql = mysql_query($query);
    while ($db = mysql_fetch_object($sql)) {
        $id = $db->id;
        $eintrag = $db->eintrag;
        $datum = $db->datum;
        $monat = $db->monat;
        $jahr = $db->jahr; ?>
            <tr>
                <td><?=$id?></td>
                <td><?=$datum?></td>
                <td><?=$eintrag?></td>
                <td nowrap="nowrap">
                    <form action="bearbeiten.php" method="get">
                        <input type="submit" name="aktion" value="Edit" />
                        <input type="submit" name="aktion" value="Delete" />
                        <input type="hidden" name="id" value="<?= $id ?>" />
                    </form>
                </td>                
               </tr>
<? }; ?>
        </table>
  </div>
  <p id="footer"></p>
 </div>
 </body>
</html>
Ok, da ich nicht wusste, ob ich alles oder nur einen Teil posten soll, habe ich einfach mal alles gepostet.

Bezüglich Logdatei, werde ich nichts posten, das funktioniert ja soweit ganz gut.

Und da ich ja darauf hingewiesen wurde, dass ich selber lernen soll, bitte ich euch nur, mal drüber zu fliegen und mir evtl. sagen, woran der Fehler liegen könnte.
Vor lauter Tippen hätte ich jetzt fast den Fehler vergessen:

- Wenn ich /acp/tagebuch aufrufe müssten eigentlich sämtliche Einträge angezeigt werden (in der Tabelle unter dem eingabeformular)
- Eigentlich solte durch das eingabeformular etwas eingetragen werden, passiert aber nix.
- Wenn ich manuell im Titel ?id=1 (o.ä) eingebe, dann passiert auch nichts, obwohl eigentlich dann der Eintrag mit ID=1 angezeigt werden soll.
Diese Funktion hat vor einer veränderung noch funktioniert, allerdings hat das Script schon von anfang an nicht die komplette Tabelle ausgelesen, bzw angezeigt.

Ich hoffe mir wird diesmla geholfen und freue mich schon auf eure Antworten.


PS:
Auf der Index-Seite des ACP möchte ich den Click-Counter mit einem Refresh versehen, das habe ich zwar versucht, aber vlt. wisst ihr ja, wie das geht.
Das ist ein <iframe> wie man unschwer erkennen kann und ich hoffe, dass es da eine möglichkeit gibt, die ihr mir dann auch verratet ^^
 
Zuletzt bearbeitet:
also folgendes ist nicht im Sinne des Erfinders:
PHP:
<?php include('../inc/titel.inc'); ?>
<?php include('../inc/auth.php'); ?>
<?php $thisPage = "Tagebuch"; ?>
<?php
Warum immer php-Tag auf und wieder zu, wieder auf und wieder zu?
=>
PHP:
<?php 
include('../inc/titel.inc');
include('../inc/auth.php');
$thisPage = "Tagebuch";
macht das Gleiche!

Du musst lernen zu debuggen und das selbstständig!

ich rate mal: $_POST["id"] ist leer bzw. existiert nicht. In deinem Formular (mit dem Button "Aktualisieren") sehe ich kein Formularfeld mit dem Namen id!

Setze an den Anfang einer jeden Datei immer error_reporting(E_ALL); , das erspart eine Menge Sucharbeit, falls man sich mal wieder wundern sollte. Nachdem du das getan und den Fehler etwas eingegrenzt hast, kannst du dich wieder melden und wir gucken uns mal die nächsten Schritte an ;)

Gutes gelingen.
 
So, da ich keinen neuen Threat aufmachen möchte, werde ich nun einfach hier weiterschreiben, man muss ja nicht provokativ Speicher verschwenden.
Ein neuer Thread verschwendet nicht wirklich Speicher. Speicher verschwendet nur jedes einzelne Posting, insbesondere wenn man Code postet, wo ein Link sowieso viel hilfreicher wäre.

Threads haben den Sinn, dass man für jedes Thema einen eigenen aufmacht, um anhand des Titels sofort zu erkennen, worum es geht, und dass man so in der Lage ist, Informationen schneller zu finden.

Ein "threat" ist übrigens auf Deutsch eine "Drohung". :-)
 
Zurück
Oben