Как сделать.. Не сортированные вопросы/ответы по юкоз Страница 6

Общие вопросы по системе юкоз, вопросы по ucoz, вопросы без определенной темы

Re: Как сделать.. Не сортированные вопросы/ответы по юкоз

waak » » Сообщение:

Спасибо! но я имел введу в моём коде после подкгрузки материалов на страницу пользователя мне нужно получить ссылку из id="resu" и загнать её в переменную что бы я мог её использовать вот в этом скрипте

$('.user_mat_prof').load('$_NEWS_ACTIVITY_URL$ #mat_prof:lt(40)',
function(){
$('.user_mat_prof').each(function(i, v){
$(this).load('$_NEWS_ACTIVITY_URL$ #mat_prof:lt(40)');
});
}
);

вместо $_NEWS_ACTIVITY_URL$ вот в этой части $(this).load('$_NEWS_ACTIVITY_URL$ #mat_prof:lt(40)');
я смог получить ссылку только первого материала и она применяется ко всем остальным хотя в id="resu" в каждом материале ссылки разные

писать, пишите, отсортирую, юкоз, ответы, сортированные, вопросы, сделать

Re: Как сделать.. Не сортированные вопросы/ответы по юкоз

Admin » » Сообщение:

waak писал(а) › 15 окт 2017, 13:51:я имел введу в моём коде после подкгрузки материалов на страницу пользователя мне нужно получить ссылку из id="resu" и загнать её в переменную что бы я мог её использовать вот в этом скрипте

В этом скрипте, вы никак не получите ссылку.
Во-первых, ID - это уникальное значение в пределах страницы, а по вашему коду - это не так, что является серьезной ошибкой.
Во-вторых, что бы сделать так, как вы хотите, нужно полностью переписать скрипт так, что бы иметь доступ к каждому материалу, то бишь, вместо $.load использовать $.get или $.ajax.
В-третьих, как я и писал ранее, все это бессмысленно, ибо вас заблокируют за превышение лимита запросов.
И в-четвертых, повторюсь, если вы все же хотите добить этот скрипт с моей помощью, прошу приводить реальные примеры, а не ту абстракцию, что вы даете выше.



Re: Как сделать.. Не сортированные вопросы/ответы по юкоз

Admin » » Сообщение:

waak писал(а) › 18 окт 2017, 20:06:а если сделать запрос через api то тоже будет бан?

Нет, через апи можно проводить более высокочастотные запросы, не могу сказать точное значение, но думаю (основано на личном опыте) до 50 пройдет.
И, по любому, вам нужно изменять код так, что бы использовать не $.load а именно $.ajax, так как там можно манипулировать получаемыми данными.
Так же, желательно (если вы хотите сами написать данный скрипт) изучить основные функции работы с набором элементов и функции получения этого набора посредством $.ajax или $.get.
Посоветую неплохой мануал на jquery.page2page.ru



Re: Как сделать.. Не сортированные вопросы/ответы по юкоз

waak » » Сообщение:

Здравствуйте!
Помогите пожалуйста с двумя вопросами

есть переменная в которую я записываю первую ссылку из поля id="uTest" затем вывожу её в блок id="result" вот таким скриптом

Код: Выделить всё Развернуть
var input = document.getElementById('uTest');
input.onkeyup = (function() {
 return function() {
 var uss = this.value;
 var links = uss.match(/http\:\/\/[\w\-\.\/]+[^\s\Z]+/i);
var first_link = links[0];
var result = document.getElementById("result");
result.innerHTML = ''+first_link+'">';
     
})();

Первый вопрос
данным скриптом я смог получить только ту ссылку которая начинается с http

то есть если текст будет такой ( бла бла likbezz.ru блп блп бла http://likbezz.ru) то скрипт покажет только ссылку которая начинается с http то есть крайнюю а первую пропустит и если в тексте не будет ссылок с http то скрипт нечего не добавит

Как сделать так чтобы он брал не только ссылку с http а любую ссылку которая указана первой была даже если у неё нет http

Второй вопрос
как мне проверить есть ли у данной ссылки http:// и
если есть то оставить всё как есть а если нет то добавить его и только после этого выполнить вывод в блок ссылки


Re: Как сделать.. Не сортированные вопросы/ответы по юкоз

Admin » » Сообщение:

waak писал(а) › 13 дек 2017, 09:50:Первый вопрос
данным скриптом я смог получить только ту ссылку которая начинается с http
то есть если текст будет такой ( бла бла likbezz.ru блп блп бла http://likbezz.ru) то скрипт покажет только ссылку которая начинается с http то есть крайнюю а первую пропустит и если в тексте не будет ссылок с http то скрипт нечего не добавит
Как сделать так чтобы он брал не только ссылку с http а любую ссылку которая указана первой была даже если у неё нет http

Написать более .. гибкую регулярку (uss.match(/http\:\/\/[\w\-\.\/]+[^\s\Z]+/i)), которая бы искала не только ссылки с http но и без.
Это достаточно сложно, так как, во первых, вы ищите не просто html ссылку, а текст, да и имен доменов стало больше, к тому же еще они стали и кириллическими - ликбезз.рф, например..
Попробуйте эту:

Код: Выделить всё Развернуть
uss.match(/^((ftp|http|https):\/\/)?(www\.)?([a-zа-я0-9]{1}[a-zа-я0-9\-]*\.?)*\.{1}[a-zа-я0-9-]{2,8}(\/([\w#!:.?+=&%@!\-\/])*)?/i);
waak писал(а) › 13 дек 2017, 09:50:как мне проверить есть ли у данной ссылки http:// и
если есть то оставить всё как есть а если нет то добавить его и только после этого выполнить вывод в блок ссылки

После найденного, проверить:

Код: Выделить всё Развернуть
var first_link = links[0];
if(first_link.indexOf('http://')==-1){
   first_link = 'http://'+first_link;
}

и если нет, добавить..


Re: Как сделать.. Не сортированные вопросы/ответы по юкоз

waak » » Сообщение:

спасибо, заменил всё как вы предложили и нечего не работает не выводит ссылку

если изменяю только регулярное выражение тоже не работает
если изменяю только проверку всё работает

Добавлено спустя 1 час 16 секунд:
Ещё есть вопрос а можно получить по этой ссылки что мы получаем в переменную first_link текст из <title> на том сайте и загнать его в другую переменную

Добавлено спустя 27 минут 49 секунд:
я нашел решение для получение всех ссылок

Код: Выделить всё Развернуть
/[-a-zA-Z0-9@:%_\+.~#?&//=]{2,256}\.[a-z]{2,4}\b(\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?/gi

но возникла проблема с тем что он также выводит ссылку и на картинку, Можно ли сделать так что бы он не брал ссылки на картинки?

Или если ссылка является картинкой то заганял её в другую переменную к примеру img


Re: Как сделать.. Не сортированные вопросы/ответы по юкоз

Admin » » Сообщение:

waak писал(а) › 14 дек 2017, 03:25:спасибо, заменил всё как вы предложили и нечего не работает не выводит ссылку

Странно, в эмуляторе работало..

waak писал(а) › 14 дек 2017, 03:25:но возникла проблема с тем что он также выводит ссылку и на картинку, Можно ли сделать так что бы он не брал ссылки на картинки?

Добавить в регулярку еще и проверку на тип файла/расширение .. но готового нет.

waak писал(а) › 14 дек 2017, 03:25:Ещё есть вопрос а можно получить по этой ссылки что мы получаем в переменную first_link текст из <title> на том сайте и загнать его в другую переменную

Нет. только с php/



Re: Как сделать.. Не сортированные вопросы/ответы по юкоз

Витёк » » Сообщение:

вопрос по api ucoz
для пользования api от ucoz, на стронем сервере, есть 2 файла uAPImodule.php и uAPIwork.php, архив скачан с офф сайта api ucoz? первый является стандартным ucozвским, во втором такой код:

php Код: Выделить всё Развернуть
 <?php $___notjson=1header('Content-Type: text/html; charset= utf-8');

 require 
'uAPImodule.php';
 
$config = array(
     
'oauth_consumer_key'    => 'XXXXXXXXXXXXXXXXXXXXXX',
     
'oauth_consumer_secret' => 'XXXXXXXXXXXXXXXXXXXXXX',
     
'oauth_token'           => 'XXXXXXXXXXXXXXXXXXXXXX',
     
'oauth_token_secret'    => 'XXXXXXXXXXXXXXXXXXXXXX'
     
);
$request = new Request($config);
$response $request->get('/board',
        array()
    );
$response json_decode($response true);
$allC $response['total'];

echo 
$allC

который выводит общее кол-во материалов модуля доска объявлений, вопрос как мне его "впихнуть" в первый файл, чтоб был один файл php или для него сделать отдельный класс, вида:

php Код: Выделить всё Развернуть
<?php
class SimpleClass
{
    public function 
SimpleFunc() {
        echo 
$this->var;
    }

Пред.



Похожие темыКомментарии ПросмотрыПоследнее сообщение
01053Базы данных на uCoz. Использование ...
Сообщение от: Admin
01263Как сделать загрузочную флешку с Wi...
Сообщение от: Admin
42814Класс _uSuggestList
Сообщение от: Admin
0381Истек период сессии. Обновить/продл...
Сообщение от: Admin
0349Стоп спам. Регистрация на юкоз с пр...
Сообщение от: Admin