tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von Napofis
ERLEDIGT
NEIN
ANTWORTEN
9
ZUGRIFFE
395
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Thomas_Jung
    Thomas_Jung Thomas_Jung ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Beiträge
    333
    Hallo

    Ich möchte mit PHP eine m3u playliste erstellen.

    PHP-Code:
    $datei fopen("playliste.txt","w+");

          
    while(
    $row mysql_fetch_object($result)) { 
    fwrite ($datei'#EXTM3U
    #EXTINF:'
    .$row->id.','.$row->artist.' - '.$row->titel.'
    '
    .$row->mp3_path.'\n');



    fclose($datei); 
    Das Problen ist das \n es darf nich in der Datei angezeigt werden.

    Gibt es eine Möglichkeit dafür?

    Gruß Thomas
     
    Shit doesn't happen, it's produced by an asshole - Ein Anwendungsbeispiel sagt mehr als 1000 Worte.
    Sieh es nicht als selbstverständlich an, dass Dir jemand hilft und uneigennützig sein Wissen mit Dir teilt.

  2. #2
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Hab zwar keine Ahnung von m3u- aber, warum entfernst du das \n nicht?

    Ansonsten. \n wird nur als Zeilenumbruch gewertet wenn es zwischen doppelten Anführungszeichen steht. In einfachen Anführungszeichen ist es nur ein Text.
    Es lohnt sich hier mit der heredoc-Syntax zu arbeiten

    PHP-Code:
    while($row mysql_fetch_object($result)) { 
        
    $item = <<<ITEM
    #EXTM3U
    #EXTINF:
    {$row->id},{$row->artist} - {$row->titel}
    {$row->mp3_path}

    ITEM;

        
    fwrite ($datei$item);

     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  3. #3
    Avatar von Thomas_Jung
    Thomas_Jung Thomas_Jung ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Beiträge
    333
    Hallo Yaslaw

    Die heredoc-Syntax hat geholfen.

    Vielen Dank

    Thomas
     
    Shit doesn't happen, it's produced by an asshole - Ein Anwendungsbeispiel sagt mehr als 1000 Worte.
    Sieh es nicht als selbstverständlich an, dass Dir jemand hilft und uneigennützig sein Wissen mit Dir teilt.

  4. #4
    Avatar von Thomas_Jung
    Thomas_Jung Thomas_Jung ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Beiträge
    333
    Hallo Yaslaw

    Ich habe mich leider zu früh gefreut.

    Die heredoc-Syntax hat ist zwar besser aber ich benötige einen Zeilenumbruch,
    da der Windows Mediaplayer sonst einen Fehler anzeigt.

    Die Datei wir so erstellt

    #EXTM3U
    #EXTINF:2,Paul Young -
    musik/12 Inch Versions 80s/01 Come Back And Stay.mp3#EXTM3U
    #EXTINF:3,The Trammps -
    musik/12 Inch Versions 80s/01 Disco Inferno.mp3#EXTM3U
    #EXTINF:25,Gloria Gaynor -
    musik/12 Inch Versions 80s/02 Never Can Say Goodbye.mp3


    Ich benötige aber die Datei so

    #EXTM3U
    #EXTINF:2,Paul Young -
    musik/12 Inch Versions 80s/01 Come Back And Stay.mp3
    #EXTM3U
    #EXTINF:3,The Trammps -
    musik/12 Inch Versions 80s/01 Disco Inferno.mp3
    #EXTM3U
    #EXTINF:25,Gloria Gaynor -
    musik/12 Inch Versions 80s/02 Never Can Say Goodbye.mp3

    Kannst du oder ein anderer mir dabei helfen?

    Gruß Thomas
     
    Shit doesn't happen, it's produced by an asshole - Ein Anwendungsbeispiel sagt mehr als 1000 Worte.
    Sieh es nicht als selbstverständlich an, dass Dir jemand hilft und uneigennützig sein Wissen mit Dir teilt.

  5. #5
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    item: Hast du die Leerzeile im Code genauso wie ich sie habe? Also nach {$row->mp3_path} noch eine Leerzeile und erst dann ITEM;

    item: Die Variante mit doppelten Anführungszeichen schon probiert?
    Zitat Zitat von Yaslaw Beitrag anzeigen
    Ansonsten. \n wird nur als Zeilenumbruch gewertet wenn es zwischen doppelten Anführungszeichen steht. In einfachen Anführungszeichen ist es nur ein Text.
    '\n' ist nicht gleich "\n"
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  6. #6
    Avatar von Thomas_Jung
    Thomas_Jung Thomas_Jung ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Beiträge
    333
    Hallo Yaslaw

    Derzeitiger Code

    PHP-Code:
    $query $_SESSION['search_query'] or die (mysql_error());
    //echo  "Playliste erstellen: ".$query ."<br>";
    $result =  mysql_query($query);
    if (
    mysql_errno()) die ("MySQL-Fehler: " mysql_error());
    $datei fopen("playliste.m3u","w+");
    while(
    $row mysql_fetch_object($result)) { 
    $mp3_path =  $row->mp3_path.' ';
    $item = <<<ITEM
    #EXTM3U
    #EXTINF:
    {$row->id},{$row->artist} - {$row->titel}
    {$mp3_path}
    ITEM;
    fwrite ($datei$item);
    }  
    fclose($datei); 

    Mit Leerzeichen sieht es so aus.

    #EXTM3U
    #EXTINF:64,Talk Talk -
    musik/12 Inch Versions 80s/05 - Talk Talk - It's My Life (Extended Mix).mp3 #EXTM3U
    #EXTINF:65,unknow -
    musik/12 Inch Versions 80s/05 All Tomorrow's Parties (1983 Remix).mp3 #EXTM3U
    #EXTINF:66,unknow -


    Mit "\n" sieht es so aus.

    Siehe Bild 1
    Mit PHP eine m3u Playliste erstellen-1.jpg


    Mit '\n' sieht es so aus.

    Siehe Bild 2
    Mit PHP eine m3u Playliste erstellen-2.jpg

    Gruß Thomas
     
    Shit doesn't happen, it's produced by an asshole - Ein Anwendungsbeispiel sagt mehr als 1000 Worte.
    Sieh es nicht als selbstverständlich an, dass Dir jemand hilft und uneigennützig sein Wissen mit Dir teilt.

  7. #7
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Finde die Unterscheide was Zeilenumbrüche angeht.
    Code php:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    //Dein Code: [url]http://www.tutorials.de/php/383771-mit-php-eine-m3u-playliste-erstellen.html#post1984958[/url]
    $item = <<<ITEM
    #EXTM3U
    #EXTINF:{$row->id},{$row->artist} - {$row->titel}
    {$mp3_path}
    ITEM; 
     
    //Mein Code: [url]http://www.tutorials.de/php/383771-mit-php-eine-m3u-playliste-erstellen.html#post1984788[/url]
    $item = <<<ITEM
    #EXTM3U
    #EXTINF:{$row->id},{$row->artist} - {$row->titel}
    {$row->mp3_path}
     
    ITEM;

    genau. vor ITEM; habe ich eine Leerziele drin

    Und das "\n" nicht als Zeilenumbruch akzeptiert wird? Auf was für einem System arbeitest du?
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  8. #8
    Avatar von Thomas_Jung
    Thomas_Jung Thomas_Jung ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Beiträge
    333
    Hallo Yaslaw

    Hi habe zwichen dem {$row->mp3_path} und dem ITEM; keine Leerzeile gehabt.

    Habe Leerzeile mit Leerzeichen verwechselt.

    Muß mal Pause machen.

    Jetzt geht es natürlich.

    Vielen Dank für deine Zeit und Hilfe.

    Gruß Thomas
     
    Shit doesn't happen, it's produced by an asshole - Ein Anwendungsbeispiel sagt mehr als 1000 Worte.
    Sieh es nicht als selbstverständlich an, dass Dir jemand hilft und uneigennützig sein Wissen mit Dir teilt.

  9. #9
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Zitat Zitat von Thomas_Jung Beitrag anzeigen
    Habe Leerzeile mit Leerzeichen verwechselt.
    Ist mir beim Schreiben des letzten Beitrages genauso gegangen - erst beim Korrekturlesen hab ichs gemerkt *g*
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  10. #10
    Avatar von Napofis
    Napofis Napofis ist offline require 'brain.php';
    Registriert seit
    Jun 2007
    Ort
    Bayern
    Beiträge
    587
    Zitat Zitat von Yaslaw Beitrag anzeigen
    Und das "\n" nicht als Zeilenumbruch akzeptiert wird? Auf was für einem System arbeitest du?
    Noch etwas Klugscheisen ...

    Die Konstante PHP_EOL enthält immer den entsprechenden Escapesequenz für den Zeilenumbruch je nach OS, ist ganz praktisch zwecks Barrierenfreiheit.

    Linux: \n
    Mac: \r
    Windows: \r\n
    Yaslaw bedankt sich. 

Ähnliche Themen

  1. Flashplayer mit Playliste
    Von evoleena im Forum Flash Plattform
    Antworten: 3
    Letzter Beitrag: 02.03.10, 18:06
  2. [VB 6.0] Eine XML-Datei erstellen
    Von 5noOPY im Forum Visual Basic 6.0
    Antworten: 1
    Letzter Beitrag: 06.12.07, 15:02
  3. Eine CSV Datei erstellen
    Von ThomasBu im Forum Visual Basic 6.0
    Antworten: 1
    Letzter Beitrag: 13.10.06, 13:47
  4. Playliste auf einem Server abrufen
    Von dernuke im Forum Internet, DSL & Flatrate
    Antworten: 1
    Letzter Beitrag: 30.10.04, 15:13
  5. Antworten: 2
    Letzter Beitrag: 01.02.04, 22:11