X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Заменить ссылку на кнопку preg_match
cs7rg
cs7rg
Topic Starter сообщение 25.5.2019, 9:24; Ответить: cs7rg
Сообщение #1


Здравствуйте, друзья помогите мне пожалуйста, за 20 часов опыта не чего не вышло. 

Есть двиг сайта на форуме есть ссылки [mwhide=0]http://dobro-v-cs.ru/files/filemanager/1/tutor_messages.zip[/mwhide] сайт показывает ссылку на файл просто как ссылку. 
Я хочу сделать такие типы ссылок кнопкой "скачать" тут размер файла и т.д
После долгих поисков нашел, вещь которая как мне кажется может мне помочь . чать кода из

functions.php

function find_img_mp3($text, $id, $not_img = 0){
$ok = 0;
$lenght = mb_strlen($text, 'UTF-8');
if($lenght > 17){
$col = substr_count($text,' ');
if($col == 0){
$http = substr($text, 0, 7);
$ras = substr($text, $lenght-4, $lenght);
if($http == 'sticker'){
if(substr(substr($text, 7), 0, 18) != '../files/stickers/') {
$text = check($text, null);
} else {
$text = '<img class="g_sticker" src="'.substr($text, 7).'">';
}
$ok = 1;
}
}
if($ok != 1){
if (preg_match('#(http://[^\s]+(?=\.(mp3|mp4)))#i', $text)) {
$val = mt_rand(0,100);
$text = preg_replace('#(http://[^\s]+(?=\.(mp3|mp4)))(\.(mp3|mp4))#i', '<audio src="$1.$2" controls="controls">Аудио файл: $1.$2</audio>', $text);
}
if($not_img == 0) {
if (preg_match('#((http|https)://[^\s]+(?=\.(jpe?g|png|gif|bmp)))#i', $text)) {
$text = preg_replace_callback('#((http|https)://[^\s]+(?=\.(jpe?g|png|gif|bmp)))(\.(jpe?g|png|gif))#i',"check_img", $text);
}
$text = preg_replace("/(^|[\n ])([\w]*?)((ht|f)tp(s)?:\/\/[\w]+[^ \,\"\n\r\t<]*)/is", "$1$2<span class=\"m-icon icon-link\"></span><a href=\"$3\" target=\"_blank\" title=\"Мы не несем ответственности за ресурс, на который направлена ссылка\">$3</a>", $text);
$text = preg_replace("/(^|[\n ])([\w]*?)((www|ftp)\.[^ \,\"\t\n\r<]*)/is", "$1$2<span class=\"m-icon icon-link\"></span><a href=\"http://$3\" target=\"_blank\" title=\"Мы не несем ответственности за ресурс, на который направлена ссылка\">$3</a>", $text);
if ( preg_match( "/(http|https):\/\/(www.youtube|youtube|youtu)\.(be|com)\/([^<\s]*)/", $text, $match ) ) {
if ( preg_match( '/youtube\.com\/watch\?v=([^\&\?\/]+)/', $text, $id ) ) {
$values = $id[1];
} else if ( preg_match( '/youtube\.com\/embed\/([^\&\?\/]+)/', $text, $id ) ) {
$values = $id[1];
} else if ( preg_match( '/youtube\.com\/v\/([^\&\?\/]+)/', $text, $id ) ) {
$values = $id[1];
} else if ( preg_match( '/youtu\.be\/([^\&\?\/]+)/', $text, $id ) ) {
$values = $id[1];
} else if ( preg_match( '/youtube\.com\/verify_age\?next_url=\/watch%3Fv%3D([^\&\?\/]+)/', $text, $id ) ) {
$values = $id[1];
}
$text = '<iframe width="400" height="200" src="https://www.youtube.com/embed/'.$values.'" frameborder="0" allowfullscreen></iframe>';
}
}
}
}
if($ok != 1){
$smiles_key = array(":smile01:",":smile02:",":smile03:",":smile04:",":smile05:",":smile06:",":smile07:",":smile08:",":smile09:",":smile10:",":smile11:",":smile12:",":smile13:",":smile14:",":smile15:",":smile16:",":smile17:",":smile18:",":smile19:",":smile20:",":smile21:",":smile22:",":smile23:",":smile24:",":smile25:",":smile26:",":smile27:",":smile28:",":smile29:",":smile30:",":smile31:",":smile32:",":smile33:",":smile34:",":smile35:",":smile36:",":smile37:",":smile38:",":smile39:",":smile40:",":smile41:",":smile42:",":smile43:",":smile44:",":smile45:",":smile46:",":smile47:",":smile48:",":smile49:",":smile50:",":smile51:",":smile52:",":smile53:",":smile54:",":smile55:",":smile56:",":smile57:",":smile58:",":smile59:",":smile60:",":smile61:",":smile62:",":smile63:" );
for ($i = 1; $i <= count($smiles_key); $i++)
$smiles_value[$i] = "<img class='g_smile' src='../files/smiles/".$i.".png'>";
$text = str_replace($smiles_key, $smiles_value, $text);
}
return $text;
}

После долгих и мучительных манипуляций у меня не чего не вышло. 


Подскажите правильно ли я делаю ? 
Как правильно реализовать то что я хочу? 
Спасибо . 

Сообщение отредактировал BLIK - 25.5.2019, 10:13
Причина редактирования: убрал ссылку под хайд
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
cs7rg
cs7rg
Topic Starter сообщение 25.5.2019, 9:52; Ответить: cs7rg
Сообщение #2


Я так понимаю нужно типо того 



  1. if (preg_match('#(http://[^\s]+(?=\.(zip|rar)))#i', $text)) {

    $text = preg_replace('#(http://[^\s]+(?=\.(zip|rar)))(\.(zip|rar))#i', '<img class="download" src="$1.$2">', $text);



Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
cs7rg
cs7rg
Topic Starter сообщение 2.6.2019, 6:37; Ответить: cs7rg
Сообщение #3


Все перепробывал. 

Что не так с этим кодом? 
 

<?php
if (preg_match('#(http://[^\s]+(?=\.(zip|rar)))#i', $text)) {
$text = preg_replace('#(http://[^\s]+(?=\.(zip|rar)))(\.(zip|rar))#i', '<a href="$1.$2" download=""><button class="btn">Скачать файл <i class="fa fa-download"></i></button></a>', $text);
}

?>

Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
cs7rg
cs7rg
Topic Starter сообщение 2.6.2019, 15:29; Ответить: cs7rg
Сообщение #4


Какие же вы козлы . Тема закрыта. Не могли ответить. 
Я все конечно понимаю, для инекоторых вопрос бональный и вы типо из принципа не хотите отвечать. 
 
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
BLIK
BLIK
сообщение 2.6.2019, 16:18; Ответить: BLIK
Сообщение #5


cs7rg, Какой смысл оскорблять людей форума? Если вам не ответили, значит никто не знает, логично? 

Если вы сами нашли решение поделитесь, многим будет интересно.

А оскорблять людей безосновательно, это не есть хорошо.

P.s Да и как правило, никто, не кому не должен отвечать, но даже в этом случае, это не повод оскорблять.


Сообщение отредактировал BLIK - 2.6.2019, 16:20
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
cs7rg
cs7rg
Topic Starter сообщение 2.6.2019, 16:29; Ответить: cs7rg
Сообщение #6


BLIK_mw,Вы правы. На эмоциях писал. Простите за выше сказаное. 

Решения я не нашел.  


Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Размещу ссылку, статью, обзор на своих сайтах
Качественно и не дорого
3 Funoman 2470 12.10.2023, 13:27
автор: CryptoTims
Открытая тема (нет новых ответов) Получил странную ссылку при линкбилдинге
Как поведет себя поиск при обнаружении странной ссылке?
10 r0mZet 2205 24.10.2022, 19:23
автор: Wachowski
Открытая тема (нет новых ответов) Подобрать группы и страницы и разместить ссылку
4 Lacomka 3412 21.2.2022, 8:43
автор: АлексейWEB
Открытая тема (нет новых ответов) Подобрать группы, страници по тематике и разместить ссылку
4 regem 2399 26.7.2020, 4:14
автор: regem
Открытая тема (нет новых ответов) Как разместить ссылку только на главной в DLE, WP?
4 Telnor 5911 11.1.2020, 15:26
автор: falken


 



RSS Текстовая версия Сейчас: 24.4.2024, 1:29
Дизайн