Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Подгрузка данных при скорилинге

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Demeus
Отправлено: 01 Февраля, 2011 - 16:48:54
Post Id


Гость


Покинул форум
Сообщений всего: 96
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




Видел массу примеров подгрузки данных при скорилинге, у меня возникло несколько вопросов:
1 Стоит ли вообще это использовать
2 Как относится поисковик к этому
3 Если ответ на первый вопрос да, то есть ли пример.
 
 Top
grefon
Отправлено: 01 Февраля, 2011 - 18:21:39
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 823
Дата рег-ции: Нояб. 2010  


Помог: 32 раз(а)




1) Это довольна таки интересная вещь, но далеко не везде уместная!
2) Поисковики не поймут подгрузку через аякс. Они проиндексируют только то, что будет в html без использования javascript.
3) Пока что самый лучший пример который я видел - это на фейсбуке поиск друзей. Зашел на страницу, тебе показали 20 рисунков, и тебе не нужно клацать по страницам вперед-назад, нужно только крутить скролл, пока не найдешь то, что искал. В данном случае это очень удобно!


-----
____________________________________________________________________
Ну как то так, наверное.
http://grefon[dot]com
 
 Top
Demeus
Отправлено: 02 Февраля, 2011 - 22:10:30
Post Id


Гость


Покинул форум
Сообщений всего: 96
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




Думаю что в моем случае это уместно, т.к. грузится длинная портянка предложений, хотелось бы сделать так как реализовано на одноклассниках, например сначала первые 50 записей, потом след 50... только как это реализовать...
 
 Top
Viper
Отправлено: 03 Февраля, 2011 - 07:55:04
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




Demeus очень просто.
Не вдаваясь в код выглядит это так.
Выводим какой-то список чего-то. После этого списка вставляем скрытый input. Далее скриптом при прокрутке проверяем достигли ли этого input. Если да, то шлем запрос серверу на получение данных. Если данные получены и есть ещё данные, то присоединяем полученный ответ(это может быть html так проще имхо) и вставляем эти данные перед input, если данных больше нет, то выводим ответ сервера и удаляем input. В input value мы храним кол-во выводимых записей на страницу(limit) + уже выведенные(limitstart). Примерно так.

Делал для себя такое на jQuery, но только по принципу как на twitter.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
TM123
Отправлено: 03 Февраля, 2011 - 09:45:08
Post Id


Новичок


Покинул форум
Сообщений всего: 35
Дата рег-ции: Нояб. 2010  
Откуда: Москва


Помог: 0 раз(а)




Предлагаю подумать над тем, как к этому отнесется браузер и слабенькие машины. Нагрузить таким образом в страницу можно хоть 100 метров, как с этим всем справится браузер и как с этим всем справятся слабые машины, типа телефонов с браузерами.

До кучи вывод всяких картинок потребляет ресурсы операционки, если картинок на странице будет очень много и реального размера, например 1000 штук, то машина с гигом оперативки может уйти в глубокий и безнадежный секс с своп файлом.


-----
Программим потихоньку http://www[dot]altycon[dot]ru
 
 Top
Viper
Отправлено: 03 Февраля, 2011 - 10:55:14
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




TM123 у меня сервер + среда стоят под линухами на машине Intel Celeron 1.6GHz с гигом рамы. Учитывая что 1 только Огнелис занимает от 300мб оперативы... Все нормально работает при нагрузке 100 юзеров в сек(больше не смог наскрести реальных юзеров, синтетическим тестам не особо доверяю). Причем скрипт это CMS Joomla 1.6 без кеширования и всеми включенными модулями и плагинами. На хостингах же ресурсов намного больше даже при минимальных тарифных планах.

Про реальный размер картинок нет и речи. Естественно нужно выводить превьюшки.

ЗЫ! ИМХО все зависит от прямоты рук девелопера.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
TM123
Отправлено: 03 Февраля, 2011 - 18:00:45
Post Id


Новичок


Покинул форум
Сообщений всего: 35
Дата рег-ции: Нояб. 2010  
Откуда: Москва


Помог: 0 раз(а)




Вы не поняли, я говорил о клиентской машине!!! ее ресурсы не безграничны. 5 лет назад схватил такой косяк - на машине разработки все выстреливается с сервера в момент и отображается на рабочей станции, а на боевой страница с боевого сервера который в разы мощнее разработки грузится несколько минут, разбирательства показали что с сервера страница улетает за пару секунд, а потом браузер не мог сгенерировать ее отображение в течение 2-3 минут. Последующие разбирательства показали, что дело в select, который на разработке был всего 20 позиций, а на боевой 2500 позиций, ну не подумали технологи, когда писали задание, а программер не видя реальных данных сделал как по ТЗ, потом меня осенило, что все это время браузер формировал select узурпируя ресурсы рабочей станции, причем судя по всему каждый option создавал как отдельный объект, на создание которого уходило много времени и ресурсов - спасибо ООП.

Если все кидать ajax в одну и ту же страницу, то она в конце концов станет на столько большой, что браузеру может стать затруднительно ее отображать, хотя конечно все зависит от прямизны рук писателей браузера, но и при прямых руках этот предел будет когда-то достигнут, особенно если это смартфон с крошечной памятью, если ее сравнивать со стационарным компом, там страница может просто не поместиться в памяти, даже если мощности проца хватит.


-----
Программим потихоньку http://www[dot]altycon[dot]ru
 
 Top
JustUserR
Отправлено: 06 Февраля, 2011 - 16:41:51
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Demeus пишет:
Подгрузка данных при скорилинге, у меня возникло несколько вопросов
Осуществление использования технологии автоматической загрузки последующих информационных полей производимых при прокрутки области видимости контейнерного элемента отображения является эффективным средством в определенных случаях - в частности если процесс генерации целевых информационных полей требует достаточных вычислительных мощностей в то время как пользователь не осуществляет одновременного просмотра всего потока данных - указанная схема используется в технологии PowerPivot реализующей в достаточной мере быструю сортировку больших объектов информационных полей в БД основанную на проведении операции в реальном времени ва процесс просмотра данных пользователем - кроме того при осуществлении реализации оригинального клиентского решения HTML-приложения целесообразно обеспечивать постоянное TCP-соединения для уменьшения количества инициализируемых сетевых соединений и увеличения общей производительности


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
kigors
Отправлено: 23 Декабря, 2015 - 00:27:55
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Дек. 2015  


Помог: 0 раз(а)




Привет всем! помогите решить задачку
Есть сайт на Wordpress. Использовал шаблон http://www[dot]dessign[dot]net/gridthemeresponsive/
В чем проблема: когда у меня болеше чем 24 записи, то он уже не подгружает их при прокрутке вниз.
Вот index:
<?php get_header(); ?>

<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
$('.home_post_cont img').hover_caption();
$('.home_small_post_box img').hover_caption();
$('.side_box img').hover_caption();
});
</script>

<div id="content">

<div id="content_inside">

<?php
$category_ID = get_category_id('blog');

if (ereg('iPhone',$_SERVER['HTTP_USER_AGENT'])) {

$args = array(
'post_type' => 'post',
'posts_per_page' => -1,
'cat' => '-' . $category_ID,
'paged' => ( get_query_var('paged') ? get_query_var('paged') : 1)
);

} else {

$args = array(
'post_type' => 'post',
'posts_per_page' => 12,
'cat' => '-' . $category_ID,
'paged' => ( get_query_var('paged') ? get_query_var('paged') : 1)
);

}

query_posts($args);
$x = 0;
while (have_posts()) : the_post(); ?>

<?php
$cat_text = '';
foreach((get_the_category()) as $category) {
if($cat_text != '')
$cat_text .= ' / ';

$cat_text .= '<a href="' . get_category_link($category->term_id ) . '">' . $category->cat_name . '</a>';
}

?>

<?php if($x == 3) { ?>
<div class="home_post_cont home_post_cont_last post_box">
<?php } else { ?>
<div class="home_post_cont post_box">
<?php } ?>
<?php $temp_content = explode(" ",substr(strip_tags(get_the_content()),0,175)); $temp_content[(count($temp_content)-1)] = ''; $new_content = implode(" ",$temp_content); ?>
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('home-post',array('alt' => 'post image', 'class' => '', 'title' => '<div class="home_post_content"><div class="in_title">' . get_the_title() . '</div><p>' . $new_content . '...</p></div><div class="home_post_cat">' . $cat_text . '</div>')); ?></a>
</div><!--//home_post_cont-->

<?php if($x == 3) { $x = -1; echo '<div class="clear"></div>'; } ?>

<?php $x++; ?>
<?php endwhile; ?>

<div class="clear"></div>

</div><!--//content_inside-->

<div class="clear"></div>
<div class="load_more_cont">
<div align="center"><div class="load_more_text">

<?php

ob_start();
next_posts_link('<img src="' . get_bloginfo('stylesheet_directory') . '/images/loading-button.png" />');
$buffer = ob_get_contents();
ob_end_clean();
if(!empty($buffer)) echo $buffer;
?>

</div></div>
</div><!--//load_more_cont-->

<?php wp_reset_query(); ?>

</div><!--//content-->

<?php get_footer(); ?>
 
 Top
esterio
Отправлено: 23 Декабря, 2015 - 17:50:14
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




С Новым Годом !!!!
П.С. Создайте собственную тему, а не поднимайте старую
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB