1 Sierpień 2010, 04:27
30269 Wiadomości - 5580 wątkach, - 3511 Użytkowników

Autor Wątek: magnet link  (Przeczytany 348 razy)

0 Użytkowników i 1 Gość przegląda ten wątek.

Offline cieplutki

  • -= Đ€VîĹ =-
  • Tysięcznik
  • ***
  • Wiadomości: 1021
  • Pomógł: +118/-29
  • Płeć: Mężczyzna
  • [ Đ€VîĹ']['€ĂM ČŐŘPŐŘĂŢIŐŇ ] Pŕöúđ Mémbéŕ
    • forum użytkowników programu ewmapa
  • Domyślny styl: Curve
  • Wersja SMF: 2.0 RC 3
magnet link
« dnia: 25 Wrzesień 2009, 16:26 »
witam potrzebuję pomocy znawców php
problem jest dość prosty tylko ja tego nie widzę
 do rzeczy
 
ed2k składnia:
ed2k://|file|<filename>|<length>|<hash>|/

magnet
magnet:?xt=urn:ed2k:<hash>&xl=<length>&dn=<filename>

zapożyczyłem modyfikację
lekko pozmieniałem nazwy ale problem dotyczy rozmiaru pliku

// tFF - ed2k
function ed2k_readableSize ($ed2k_link) {
preg_match('~(\s|^)(ed2k://\|file\|.+?\|(.+?)\|.+?)(\s|$)~i', $ed2k_link, $matches);
$size=$matches[3];

$loop = 0;
$suffix = array ("Bytes","KBytes","MBytes","GBytes","TBytes"); //TeraByte is max possible
while ( ($size > 1024) && ($loop < 4) ) { //loop shouldn't be > 4 so the TB is max
$loop++;
$size /= 1024;
}
return round($size, 2) . " " . $suffix[$loop];
}
// /tFF - ed2k

// tFF - ed2k
array(
'tag' => 'ed2k',           
'type' => 'unparsed_content',
'content' => '<img src="__ed2k_ico__" alt="ed2k: __ed2k_size__" title="ed2k: __ed2k_size__" />&nbsp;<a href="$1">__ed2k_name__</a>',
'validate' => create_function('&$tag, &$data, $disabled', '
global $settings;
$humanSize = ed2k_readableSize($data);
$data = strtr($data, array(\'<br />\' => \'\', \' \' => \'\', \'&nbsp;\' => \'\'));
$ed2k_name = preg_replace(\'~(\s|^)(ed2k://\|file\|(.+?)\|.+?)(\s|$)~i\', \'$3\', $data );
$ed2k_ico = $settings[\'images_url\'] . \'/bbc/\' . \'ed2k.gif\';
$tag[\'content\'] = strtr($tag[\'content\'], array(\'__ed2k_name__\' => $ed2k_name, \'__ed2k_ico__\' => $ed2k_ico, \'__ed2k_size__\' => $humanSize));
'),
),
array(
'tag' => 'ed2k',
'type' => 'unparsed_equals',
'before' => '<img src="__ed2k_ico__" alt="ed2k: __ed2k_size__" title="ed2k: __ed2k_size__" />&nbsp;<a href="$1">',
'after' => '</a>',
'validate' => create_function('&$tag, &$data, $disabled', '
global $settings;
$humanSize = ed2k_readableSize($data);
$data = strtr($data, array(\'<br />\' => \'\', \' \' => \'\', \'&nbsp;\' => \'\'));
$ed2k_ico = $settings[\'images_url\'] . \'/bbc/\' . \'ed2k.gif\';
$tag[\'before\'] = strtr($tag[\'before\'], array(\'__ed2k_ico__\' => $ed2k_ico, \'__ed2k_size__\' => $humanSize));
'),
'disabled_after' => ' ($1)',
),
// /tFF - ed2k

trzeba zmodyfikować preg_match - dopasować do składni magnet

mógłby mi ktoś pomóc
Asus P5E3 | Intel Dual-Core E8400 3.0 GHz | Kingston 3GB DDR3-1066 | Seagate 7200 500GB+250GB+160GB | LG DVDR | GeForce 9600 GT Asus Silent 512MB | Asus Xonar DX/XD | Samsung SyncMaster 2253LW 22'| Windows 7 Ultimate x64 PL

Jak mądrze zadawać pytania?

Offline cieplutki

  • -= Đ€VîĹ =-
  • Tysięcznik
  • ***
  • Wiadomości: 1021
  • Pomógł: +118/-29
  • Płeć: Mężczyzna
  • [ Đ€VîĹ']['€ĂM ČŐŘPŐŘĂŢIŐŇ ] Pŕöúđ Mémbéŕ
    • forum użytkowników programu ewmapa
  • Domyślny styl: Curve
  • Wersja SMF: 2.0 RC 3
Odp: magnet link
« Odpowiedź #1 dnia: 26 Wrzesień 2009, 22:31 »
wiem że mógłbym edytować poprzedni post ale wtedy nie było by wydźwięku
to
ed2k://|file|<filename>|<length>|<hash>|/
jest dopasowane do tego
preg_match('~(\s|^)(ed2k://\|file\|.+?\|(.+?)\|.+?)(\s|$)~i', $ed2k_link, $matches);

ja potrzebuję
to
magnet:?xt=urn:ed2k:<hash>&xl=<length>&dn=<filename>
wpasować do tego
preg_match('~(\s|^)(ed2k://\|file\|.+?\|(.+?)\|.+?)(\s|$)~i', $ed2k_link, $matches);

w praktyce wygląda to tak jak w tym poście
ale problem jest że po najechaniu na ikonkę zamiast rozmiaru pliku jest 0
W załączniku paczka jaką do tej pory zmalowałem proszę o pomoc znawców php

//edit
w logach jest takie coś
http://www.zion-dc.ovh.org/index.php?topic=2.0
Filtruj wyniki: Pokazuj błędy tylko z takim samym komunikatem
8: Undefined offset: 3
Filtruj wyniki: Pokazuj tylko błędy z tego pliku
Plik: /home/z/i/o/zion-dc/www/Sources/Subs.php
Linia: 876

a linia 876 to:
$size = $matches[3];
« Ostatnia zmiana: 26 Wrzesień 2009, 22:36 wysłana przez cieplutki »
Asus P5E3 | Intel Dual-Core E8400 3.0 GHz | Kingston 3GB DDR3-1066 | Seagate 7200 500GB+250GB+160GB | LG DVDR | GeForce 9600 GT Asus Silent 512MB | Asus Xonar DX/XD | Samsung SyncMaster 2253LW 22'| Windows 7 Ultimate x64 PL

Jak mądrze zadawać pytania?

Offline cieplutki

  • -= Đ€VîĹ =-
  • Tysięcznik
  • ***
  • Wiadomości: 1021
  • Pomógł: +118/-29
  • Płeć: Mężczyzna
  • [ Đ€VîĹ']['€ĂM ČŐŘPŐŘĂŢIŐŇ ] Pŕöúđ Mémbéŕ
    • forum użytkowników programu ewmapa
  • Domyślny styl: Curve
  • Wersja SMF: 2.0 RC 3
Odp: magnet link
« Odpowiedź #2 dnia: 28 Wrzesień 2009, 17:42 »
Może nie wytłumaczyłem dokładnie orginalny mod
ciąg znaków wygląda tak
ed2k://|file|fakes.rar|1548921|6A11535BC5A77F6DE0CC47EABE9AFF83|/
gdzie
ed2k://|file| <= protokół
fakes.rar <= nazwa pliku
1548921 <= rozmiar (waga) pliku
6A11535BC5A77F6DE0CC47EABE9AFF83 <= TTH pliku

tu jest to zapisane w formie php chyba
preg_match('~(\s|^)(ed2k://\|file\|.+?\|(.+?)\|.+?)(\s|$)~i', $ed2k_link, $matches);lub tu
$ed2k_name = preg_replace(\'~(\s|^)(ed2k://\|file\|(.+?)\|.+?)(\s|$)~i\', \'$3\', $data );a może tu
$data = preg_replace('~(?<=[\s>\.(;\'"]|^)(ed2k://\|file\|(.+?)\|.+?)(?=[?,\s\[\]()*\\\]|$|<br />|&nbsp;|&gt;|&lt;|&quot;|&#039;|\.(?:\.|;|&nbsp;|\s|$|<br />))~i', '[ed2k]$1[/ed2k]', $data);
więc w pierwszej kolejności potrzebuje rozgryść składnie jak to się uda to zamiast ed2k będę potrzebował wsadzić magnet i protokół magnet
który wygląda nieco inaczej niż ed2k a mianowicie tak
magnet:?xt=urn:tree:tiger:5HECFLYAHB6W3EXSYOG2M5VUCS7JUTWNSW7ZWPY&xl=365859962&dn=Robin+Hood+S03E03+HDTV+XviD+FoV+%5Bh33t%5D+%5BKeyman30%5D.avi
magnet:?xt=urn:tree:tiger: <= protokół
5HECFLYAHB6W3EXSYOG2M5VUCS7JUTWNSW7ZWPY <= TTH
&xl=365859962 <= rozmiar (waga) pliku
&xl=365859962&dn=Robin+Hood+S03E03+HDTV+XviD+FoV+%5Bh33t%5D+%5BKeyman30%5D.avi <= nazwa pliku
Asus P5E3 | Intel Dual-Core E8400 3.0 GHz | Kingston 3GB DDR3-1066 | Seagate 7200 500GB+250GB+160GB | LG DVDR | GeForce 9600 GT Asus Silent 512MB | Asus Xonar DX/XD | Samsung SyncMaster 2253LW 22'| Windows 7 Ultimate x64 PL

Jak mądrze zadawać pytania?

Offline cieplutki

  • -= Đ€VîĹ =-
  • Tysięcznik
  • ***
  • Wiadomości: 1021
  • Pomógł: +118/-29
  • Płeć: Mężczyzna
  • [ Đ€VîĹ']['€ĂM ČŐŘPŐŘĂŢIŐŇ ] Pŕöúđ Mémbéŕ
    • forum użytkowników programu ewmapa
  • Domyślny styl: Curve
  • Wersja SMF: 2.0 RC 3
Odp: magnet link
« Odpowiedź #3 dnia: 30 Wrzesień 2009, 13:12 »
wiem już więcej że chodzi tu o wyrażenie regularne  :'(
proszę o pomoc to jest chyba prosty temat dla znawców php
mamy taki wzorzec
magnet:?xt=urn:tree:tiger:5HECFLYAHB6W3EXSYOG2M5VUCS7JUTWNSW7ZWPY&xl=365859962&dn=Robin+Hood+S03E03+HDTV+XviD+FoV+%5Bh33t%5D+%5BKeyman30%5D.avichcemy odszukać wyrażenie: 365859962 same liczby
poprzedzone jest to pewną stałą &xl=
jak to zastosować w praktyce ???
Asus P5E3 | Intel Dual-Core E8400 3.0 GHz | Kingston 3GB DDR3-1066 | Seagate 7200 500GB+250GB+160GB | LG DVDR | GeForce 9600 GT Asus Silent 512MB | Asus Xonar DX/XD | Samsung SyncMaster 2253LW 22'| Windows 7 Ultimate x64 PL

Jak mądrze zadawać pytania?

Offline cieplutki

  • -= Đ€VîĹ =-
  • Tysięcznik
  • ***
  • Wiadomości: 1021
  • Pomógł: +118/-29
  • Płeć: Mężczyzna
  • [ Đ€VîĹ']['€ĂM ČŐŘPŐŘĂŢIŐŇ ] Pŕöúđ Mémbéŕ
    • forum użytkowników programu ewmapa
  • Domyślny styl: Curve
  • Wersja SMF: 2.0 RC 3
Odp: magnet link
« Odpowiedź #4 dnia: 20 Luty 2010, 12:27 »
kolejna odsłona tylko dla smf 2.0 rc2

http://www.divshare.com/img/10531687-611.png
magnet link


specjalnie dla użytkownika @szeber
na drowie

//edit
na smf.org zapodałem temat może ktoś pomoże z wyciągnięciem rozmiaru pliku  ;)

//edit 2
Wątek do śledzenia na smf.org
« Ostatnia zmiana: 20 Luty 2010, 15:14 wysłana przez cieplutki »
Asus P5E3 | Intel Dual-Core E8400 3.0 GHz | Kingston 3GB DDR3-1066 | Seagate 7200 500GB+250GB+160GB | LG DVDR | GeForce 9600 GT Asus Silent 512MB | Asus Xonar DX/XD | Samsung SyncMaster 2253LW 22'| Windows 7 Ultimate x64 PL

Jak mądrze zadawać pytania?

Offline szaber

  • Fan Forum
  • *****
  • Wiadomości: 179
  • Pomógł: +1/-5
    • Forum DC Maniaków
Odp: magnet link
« Odpowiedź #5 dnia: 20 Luty 2010, 13:49 »
Dzieki jesteś wielki :):)

 

Related Topics

  Temat / Zaczęty przez Odpowiedzi Ostatnia wiadomość
4 Odpowiedzi
1159 Wyświetleń
Ostatnia wiadomość 12 Listopad 2008, 22:13
wysłana przez pimosz
2 Odpowiedzi
430 Wyświetleń
Ostatnia wiadomość 27 Czerwiec 2008, 17:16
wysłana przez ronin
4 Odpowiedzi
432 Wyświetleń
Ostatnia wiadomość 20 Kwiecień 2008, 20:04
wysłana przez roco
1 Odpowiedzi
446 Wyświetleń
Ostatnia wiadomość 19 Marzec 2009, 19:05
wysłana przez erydan2000
2 Odpowiedzi
263 Wyświetleń
Ostatnia wiadomość 1 Czerwiec 2009, 04:48
wysłana przez cieplutki