mp3 fragen eines Newbie

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • mp3 fragen eines Newbie

    Hallo zusammen, Vorsicht ein Newbie!

    vielleicht hat jemand eine Idee und kann mir helfen.
    Ich habe eine Datenbank musik angelegt, dort eine Tabelle mit dem Namen mp3. Die Tabelle habe ich folgendermaßen augebaut:

    lfdnr | song_ID | interpret | titel | zeit.

    Meine MP3's liegen in einem Unterverzeichnis das archiv heißt.

    Der Code zum abrufen meiner Datenbank sieht folgendermaßen aus:

    PHP-Code:
    <?php
    $verbindung 
    mysql_connect("$MySQL_Host","$MySQL_User","$MySQL_Passw");
    if(
    $verbindung)
    {
        
    $ergebnis mysql_select_db($db$verbindung);
        if(
    $ergebnis)
        {
            
    $sql "SELECT interpret, titel, zeit FROM mp3 ORDER BY 'interpret'";
            
    $ergebnis mysql_query($sql$verbindung);
            if (
    $ergebnis)
            {
            echo 
    "<table width='740' align='center' border='0' bgcolor='#DDDDDD'>\n";
            while (
    $zeile=mysql_fetch_row($ergebnis))
                {
                echo 
    "<tr>\n";
                    {
                    echo 
    "<td width='220' class='interpret'> $zeile[0] </td>";
                    echo 
    "<td width='250' class='titel'> $zeile[1] </td>";
                    echo 
    "<td width='140' class='zeit'> $zeile[2] </td>";
                                    }
                echo 
    "</tr>\n";
                }
            echo 
    "</table>\n";
            }        
            else echo 
    "Abfrage $sql konnte nicht " .
            
    "ausge&uuml;hrt werden.<br>\n";
                    
        }
        
        else echo 
    "Die Datenbank " .
        
    "wurde nicht gefunden.<br>\n";

        
    mysql_close();
     }
    else echo 
    "Die Verbindung zur Datenbank " 
        
    "konnte nicht hergestellt werden.<br>\n" 
    ?>
        </td>
      </tr>
    </table>
    Dieses ist alles auch noch verständlich für mich. Jetzt möchte ich aber das ich wenn die Liste erzeugt wird und im Browser ausgegeben wird, durch anklicken des Interpreten "oder" des Titels, man die MP3-Datei sich anhören kann. Die MP3-Dateien sind fortlaufen nummeriert (00001), diese Nummer stimmt mit der song_ID in der Datenbank überein.

    Sorry bin noch ein Newbie, und bin am lernen. Über eine Lösung würde ich mich freuen. Danke im vorraus.

    MfG oh_weh

    EDIT:
    [php]-tags by Abraxax
    Zuletzt geändert von Abraxax; 29.11.2003, 19:33.
    Jeder stand mal am Anfang und hat klein angefangen. Ich stehe dort und möchte lernen.

  • #2
    ein einfacher Link zur Datei sollte reichen:
    <a href="archiv/dateiname.mp3">Titel</a>

    Nur Leerzeichen & Co. sollten codiert werden; hierfür gibt es die Funktion urlencode.
    Außerdem sollten die 'normalen' Texte mit htmlentities maskiert werden - für die Zeitangabe ist das aber definitiv unnötig.
    Fragt sich nur noch, wie der Dateiname zusammen setzt;
    ich gehe hier einfach mal davon aus dass es 'Interpret - Titel' ist:
    PHP-Code:
    while ($zeile=mysql_fetch_row($ergebnis))
    {
      
    $href '<a href="archiv/'urlencode("$zeile[0] - $zeile[1]"). '.mp3">';
      echo 
    '<tr>
        <td width="220" class="interpret">'
    $hrefhtmlentities($zeile[0]), '</a></td>
        <td width="250" class="titel">'
    $hrefhtmlentities($zeile[1]), '</a></td>
        <td width="140" class="zeit">'
    $zeile[2], '</td>
      </tr>'
    ;

    mein Sport: mein Frühstück: meine Arbeit:

    Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

    Kommentar


    • #3
      Super Danke

      Hallo,

      super danke, hat mir sehr geholfen, hatte die mp3's zwar umbenannt, jedoch bin ich noch am Anfang und es kein Problem dieses zurück zuändern.

      Danke nochmal, man lernt nie aus.

      MfG oh_weh
      Jeder stand mal am Anfang und hat klein angefangen. Ich stehe dort und möchte lernen.

      Kommentar


      • #4
        Probleme mit Leerzeichen

        Hallo,

        wenn ich die Zeilen einbinde funktioniert dieses nur wenn ich keine Leerzeichen in der MP3- Datei habe. Ist aber kein Problem, da ich die Leerzeichen durch einen Unterstrich ersetzte.

        bei der Zeile:
        PHP-Code:
        $href '<a href="archiv/'urlencode("$zeile[0] - $zeile[1]"). '.mp3">'
        habe ich die Leerzeichen zwischen dem - entfernt
        PHP-Code:
         ("$zeile[0]-$zeile[1]"
        und somit funktioniert dieses.

        Gibt es denn eine Möglichkeit das evt. die Leerzeichen auch erkannt werden?

        Mfg oh_weh
        Zuletzt geändert von oh_weh; 01.12.2003, 19:59.
        Jeder stand mal am Anfang und hat klein angefangen. Ich stehe dort und möchte lernen.

        Kommentar


        • #5
          Re: Probleme mit Leerzeichen

          naja,

          Gibt es denn eine Möglichkeit das evt. die Leerzeichen auch erkannt werden?
          eigentlich wandelt die urlencode die leerzeichen in %20 um.

          probier mal
          Code:
          $href = "<a href=\"archiv/\".urlencode($zeile[0]." - ".$zeile[1]).".mp3\">";
          gehts?
          Zuletzt geändert von derHund; 30.11.2003, 18:27.
          Die Zeit hat ihre Kinder längst gefressen

          Kommentar


          • #6
            Nein Leider nicht!

            Hallo

            Wenn ich die Zeile Einfüge bekomme ich folgende Fehlermeldung:


            Warning: Unexpected character in input: "\" (ASCII=92) state=1 in c:\phparbeiten\mp3archiv\test02.php on line 80

            Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in c:\phparbeiten\mp3archiv\test02.php on line 80


            Wenn ich das richtig interpretiere mag er den backslash nicht.


            MfG oh_weh
            Jeder stand mal am Anfang und hat klein angefangen. Ich stehe dort und möchte lernen.

            Kommentar


            • #7
              also,

              Code:
              $href = '<a href="archiv/'.urlencode($zeile[0]." - ".$zeile[1]).'.mp3">';
              ?
              Die Zeit hat ihre Kinder längst gefressen

              Kommentar


              • #8
                Re: Super Danke

                Original geschrieben von oh_weh
                hatte die mp3's zwar umbenannt, jedoch bin ich noch am Anfang und es kein Problem dieses zurück zuändern.
                unnötig. Bau einfach eine zusätzliche Spalte "filename" in die Tabelle ein und benutz den Wert im href.

                Wo zum Henker kommt der Windows-Pfad her? Zeig mal bitte, wie du den href zusammen setzt!
                mein Sport: mein Frühstück: meine Arbeit:

                Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                Kommentar


                • #9
                  next problem

                  Hallo,,
                  wenn cih dieses jetzt richtig verstanden habe. sollte der Code jetzt so aussehen:

                  dieses Spalte entfällt
                  PHP-Code:
                  $href '<a href="archiv/'urlencode("$zeile[0] - $zeile[1]"). '.mp3">'
                  und somit würde dieser Code eingefügt:

                  PHP-Code:
                  while ($zeile=mysql_fetch_row($ergebnis))
                  {
                    
                  $filename "archiv/'. urlencode("$zeile[0] - $zeile[1]"). '.mp3";
                    
                  echo 
                  '<tr>
                      <td width="220" class="interpret">'
                  $filename htmlentities($zeile[0]), '</a></td>
                      <td width="250" class="titel">'
                  $filename htmlentities($zeile[1]), '</a></td>
                      <td width="140" class="zeit">'
                  $zeile[2], '</td>
                    </tr>'
                  ;

                  dann bekomme ich diese Fehlermeldung.


                  Parse error: parse error, unexpected T_VARIABLE in c:\phparbeiten\mp3archiv\test02.php on line 80


                  Was mach ich denn jetzt hier falsch.


                  MfG oh_weh
                  Zuletzt geändert von oh_weh; 01.12.2003, 21:49.
                  Jeder stand mal am Anfang und hat klein angefangen. Ich stehe dort und möchte lernen.

                  Kommentar


                  • #10
                    @oh_weh
                    wann lernst du eigentlich mal, die php-tags zu verwenden?
                    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                    Kommentar


                    • #11
                      $filename = "mp3/'. urlencode("$zeile[0] - $zeile[1]"). '.mp3";
                      bringt garantiert einen parse error
                      Beantworte nie Threads mit mehr als 15 followups...
                      Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                      Kommentar


                      • #12
                        @oh_weh
                        warum änderst du die von mir hinzugefügten php-tags weg?
                        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                        Kommentar


                        • #13
                          Sorry war mit dem Schreiben noch nicht fertig und hatte ausversehen enter gedrückt.

                          Sorry nochmal, tut mir echt leid

                          MfG oh_weh
                          Jeder stand mal am Anfang und hat klein angefangen. Ich stehe dort und möchte lernen.

                          Kommentar


                          • #14
                            dann füge jetzt noch selber die tags ein und gut ist...
                            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                            Kommentar


                            • #15
                              jetzt ohne Fehlermeldung

                              Hallo,

                              jetzt habe ich es hinbekommen das ich keine Fehelermeldung mehr bekomme. Trotzdem liest er die Datei nicht aus. Das alte Problem habe ich stets immer noch. Es werden keine leerzeichen erkannt.

                              Der Code sieht jetzt so aus.

                              PHP-Code:

                              while ($zeile=mysql_fetch_row($ergebnis))
                              {
                                
                              $filename '<a href="archiv/'urlencode("$zeile[0] - $zeile[0]"). '.mp3">';
                                echo 
                              '<tr>
                                  <td width="220" class="interpret">'
                              $filenamehtmlentities($zeile[0]), '</a></td>
                                  <td width="250" class="titel">'
                              $filenamehtmlentities($zeile[1]), '</a></td>
                                  <td width="140" class="zeit">'
                              $zeile[2], '</td>
                                </tr>'
                              ;

                              wenn ich über der link gehe dann wird in der Statuszeile folgendes angezeigt:


                              depeche+mode+-+master+and+servant.mp3

                              und wenn ich den Link anklicke, kein Datei gefunden.

                              Das selbe bekomme ich wenn ich dieses zeile einfüge:

                              PHP-Code:

                              $filename 
                              '<a href="mp3/'.urlencode($zeile[0]." - ".$zeile[1]).'.mp3">'
                              MfG oh_weh
                              Zuletzt geändert von oh_weh; 01.12.2003, 20:59.
                              Jeder stand mal am Anfang und hat klein angefangen. Ich stehe dort und möchte lernen.

                              Kommentar

                              Lädt...
                              X