1

Тема: Изменение плейлиста с помощью php

Написал скрипт на perl - проигрывает плейлист и смотрит вносились ли в него какие то изменения. Все работает за исключением - когда редактирую я этот файл через свой php скрипт:

<?php
if(isset($_GET['go'])){
$edit = fopen("playlist.pls", "w") ;
fwrite($edit, $_POST['playlist']);
fclose($edit);
header('Location: index.php');
}
else{
$text = fopen("playlist.pls", "r");
while(!feof($text)){
  $line .= fgets($text);
}
print '<form action="index.php?go" method="post">
<textarea  style="width: 25%; min-height: 500px;" name="playlist" >'.$line.'</textarea>
<input type="submit" value="Обновить" />';
}
?>

В логе ошибки поиска файла...
Подскажите в чем проблема?

2

Re: Изменение плейлиста с помощью php

используйте абсолютный путь к файлу и проверить права доступа на файл

3

Re: Изменение плейлиста с помощью php

Дело в том что если я изменяю файл плейлиста через WinSCP, то все проходит нормально. Если же через вот этот скрипт то ошибка.

4

Re: Изменение плейлиста с помощью php

ну и что? Какое отношение имеет WinSCP к php ?

5

Re: Изменение плейлиста с помощью php

пишет tarasian666:

ну и что? Какое отношение имеет WinSCP к php ?

отношения не имеет никакого, но я привел его в пример чтобы показать суть проблемы.

6

Re: Изменение плейлиста с помощью php

пишет joker:

В логе ошибки поиска файла...

варианта всего 2 - или ему надо сказать абсолютный путь или у php нет прав на чтение и запись этого файла

7

Re: Изменение плейлиста с помощью php

пишет tarasian666:

пишет joker:

В логе ошибки поиска файла...

варианта всего 2 - или ему надо сказать абсолютный путь или у php нет прав на чтение и запись этого файла

Проверял, с этим все нормально права 777 на playlist.pls и всегда указываю абсолютный путь к mp3. Файл перезаписывается... Мне кажется этот скрипт добавляет что-то в самое начало файла, что треки не могут найтись... Потому что когда также редактирую через самый обычный блокнот и заливаю плейлист все проходит успешно...

8

Re: Изменение плейлиста с помощью php

так с этого и надо было начинать что ices не может найти  файл mp3

значит некие символы добавляються еще в textarea

надо открыть плейлист через редактор vi и смотреть что за символы и тогда их фильтровать в скрипте

9

Re: Изменение плейлиста с помощью php

пишет tarasian666:

так с этого и надо было начинать что ices не может найти  файл mp3

значит некие символы добавляються еще в textarea

надо открыть плейлист через редактор vi и смотреть что за символы и тогда их фильтровать в скрипте

Открывал с помощью vi, в обеих файлах ничего лишнего нет. Однако размер у них разный - у рабочего 874 байт и 891 байт у не рабочего. Содержание и кодировка в них одинаковая.

10

Re: Изменение плейлиста с помощью php

ices капризен ко всяким "нечитабельным знакам"
в логе пишет какой именно файл не находит? иногда там пишет так как его не правильно видет в плейлисте

11

Re: Изменение плейлиста с помощью php

Вот весь лог после запуска с этим плейлистом:

Logfile opened
##Инициализация##:
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
: Error opening: No such file or directorye.mp3
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
: Error opening: No such file or directorymp3
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
: Error opening: No such file or directorykogda_pri_uch._mark_tven_and_l.mp3
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
: Error opening: No such file or directory-_criminal_.mp3
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
: Error opening: No such file or directory_david__-_t_bolshe_ne_moya.mp3
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
Error opening /mnt/mp3/099_imperia_s.s.c._and_basta_-_medlyak_prod._by_basta_nog: Error opening: No such file or directory
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
: Error opening: No such file or directory_drug.mp3
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
: Error opening: No such file or directory
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
: Error opening: No such file or directoryya_fidel_wicked_radio_dfm.mp3
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
: Error opening: No such file or directory-_papi.mp3
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
: Error opening: No such file or directory_shena_-_high_radio_mix.mp3
##Есть плейлист##:
Плейлист не изменялся:
Плейлист не закончился:
Exiting after 10 consecutive errors.
Perl subsystem shutting down:
Ices Exiting...

12

Re: Изменение плейлиста с помощью php

Я так понимаю он не правильно начинает читать плейлист

13

Re: Изменение плейлиста с помощью php

скинь сюда плей лист

14

Re: Изменение плейлиста с помощью php

/mnt/mp3/loya_-_roz_temno_ale.mp3
/mnt/mp3/elka_-_okolo_tebya.mp3
/mnt/mp3/024_zikwal_-_gde_i_kogda_pri_uch._mark_tven_and_l.mp3
/mnt/mp3/023_britney_spears_-_criminal_.mp3
/mnt/mp3/081_dino_mc47_feat._david__-_t_bolshe_ne_moya.mp3
/mnt/mp3/099_imperia_s.s.c._and_basta_-_medlyak_prod._by_basta_noggano_feat._guf_and_ak_47_.mp3
/mnt/mp3/064_nerv_-_kofe_moi_drug.mp3
/mnt/mp3/niusha_-_vshe.mp3
/mnt/mp3/001_pachulya_-_t_i_ya_fidel_wicked_radio_dfm.mp3
/mnt/mp3/059_jennifer_lopez_-_papi.mp3
/mnt/mp3/012_alex_hide_feat._shena_-_high_radio_mix.mp3
/mnt/mp3/034_dj_kaliostro_-_my_kisska_drinking_only_whisky_radio_edit.mp3
/mnt/mp3/035_flo_rida_-_good_feeling.mp3
/mnt/mp3/053_vremya_i_steklo_-_kafel.mp3
/mnt/mp3/062_pitbull_ft._chris_brown_-_international_love.mp3
/mnt/mp3/066_dominik_dzhoker_-_esli_t_so_mnoi_paul_vine_remix.mp3
/mnt/mp3/079_serebro_-_mama_liuba_davai.mp3

15

Re: Изменение плейлиста с помощью php

так ничего не увидеть, возьми "неправильный" плейлист и склрируй файл в свою веб папку и дай ссылку на скачивание

16

Re: Изменение плейлиста с помощью php

Вот http://cipw.ru/playlist.pls

17

Re: Изменение плейлиста с помощью php

можно на perl глянуть ?

18

Re: Изменение плейлиста с помощью php

http://cipw.ru/ices.pm

19

Re: Изменение плейлиста с помощью php

жуть... больше нет слов

20

Re: Изменение плейлиста с помощью php

сам скрипт перл неправильно передает путь к файлу

21

Re: Изменение плейлиста с помощью php

В чем жуть? В коде? Что именно не правильно?

22

Re: Изменение плейлиста с помощью php

да код впринципе рабочий, просто много ненужного (повторений) и чтение плейлиста б делал перловским open FILE
проблема что chomp вместо того чтоб убрать в конце только знак \n режет начало строки
без chomp выводит нормально но в конце есть "невидимая"  \n
интересная ситуация вообщем..

23

Re: Изменение плейлиста с помощью php

есть выход, в php скрипте полученый через post плейлист перегнать в массив и по линиях уже записать в файл плейлиста, может даже в качестве разделителей не использовать \n

24

Re: Изменение плейлиста с помощью php

А поточнее можно пожалуйста? А то не понял как \n влияет в print. И как chomp убрать знак \n?

25

Re: Изменение плейлиста с помощью php

Проблема может ещё быть и в кодировке самого файла, сталкивался с такой проблемой, если ты говоришь что файлы разного размера тут 2 причины
1) Кодировка файла, UTF-8 и UTF-8 без BOM - 2 разные вещи ...
2) Проверь в конце плейлиста случаем пустую строку не втыкает твой скрипт ?

Хостинг радио от http://FmHosting.ru