Примерный алгоритм вот такой, php страница:
<head>
...................
</head>
...................
<table width="100%" border="0">
<tr>
<td>
</td>
</tr>
</table>
<table width="100%" border="0">
<tr>
<td>
...................
<?php
$someconditional11 = "0";
if ($someconditional11 == "1")
{
include_once('dayprice1.php');
include_once('tobuy1.html');
include_once('vhod.html');
}
?>
...................
</td>
</tr>
</table>
...................
<?php
$someconditional11 = "1";
?>
</body>
</html>
Конечно, с такой реализацией как я привёл - с условием if и изменением параметра после таблицы не работает, но в этом-же и вопрос - скажите пожалуйста как это можно реализовать ?
Зараннее, большое спасибо.
С уважением.
Спустя 14 минут, 57 секунд (7.07.2011 - 09:06) Mirexzpalich написал(а):
<?php ob_start(); ?>
<head>
...................
</head>
...................
<table width="100%" border="0">
<tr>
<td>
</td>
</tr>
</table>
<table width="100%" border="0">
<tr>
<td>
...................
<?php
include_once('dayprice1.php');
include_once('tobuy1.html');
include_once('vhod.html');
?>
...................
</td>
</tr>
</table>
...................
</body>
</html>
<?php
$content = ob_get_contents();
ob_clean();
echo $content;
?>
Но это все не этично...
Спустя 9 минут, 42 секунды (7.07.2011 - 09:15) BESTWIZARD написал(а):
Что-то не работает.
Сделал 1:1 как Вы написали - без изменений.
Вы ведь, уважаемый Mirexzpalich, просто добавили в начале формы:
и перед концом формы:
И убрали условие if в середине.
Но с такой реализацией подключаемые модули всё равно грузятся до второй части таблицы.
Или Вы предлагаете загрузить как-то вторую часть таблицы до модулей ? Но тогда что-то не вижу логики куда впихнуть вторую часть таблицы и как загрузить до модулей-то ?
Где это находится:
Впрос остался.
Сделал 1:1 как Вы написали - без изменений.
Вы ведь, уважаемый Mirexzpalich, просто добавили в начале формы:
<?php ob_start(); ?>
и перед концом формы:
<?php
$content = ob_get_contents();
ob_clean();
echo $content;
?>
И убрали условие if в середине.
Но с такой реализацией подключаемые модули всё равно грузятся до второй части таблицы.
Или Вы предлагаете загрузить как-то вторую часть таблицы до модулей ? Но тогда что-то не вижу логики куда впихнуть вторую часть таблицы и как загрузить до модулей-то ?
Где это находится:
<?php ob_start(); ?>
<head>
...................
</head>
...................
<table width="100%" border="0">
<tr>
<td>
</td>
</tr>
</table>
<table width="100%" border="0">
<tr>
<td>
...................
<?php
include_once('dayprice1.php');
include_once('tobuy1.html');
include_once('vhod.html');
?>
------------------- НАЧАЛО ВТОРОЙ ЧАСТИ ТАБЛИЦЫ - ЗАГРУЗИТЬ ДО include
...................
----- ЗДЕСЬ МНОГО ТЕКСТА И ДАННЫХ В ВИДЕ ТАБЛИЦЫ --------
</td>
</tr>
</table>
...................
------------------- КОНЕЦ ВТОРОЙ ЧАСТИ ТАБЛИЦЫ - ЗАГРУЗИТЬ ДО include
<?php
$content = ob_get_contents();
ob_clean();
echo $content;
?>
</body>
</html>
Впрос остался.
Спустя 12 минут, 15 секунд (7.07.2011 - 09:28) Mirexzpalich написал(а):
BESTWIZARD
Эх.... молодо-зелено =)
Спустя 11 минут, 42 секунды Mirexzpalich написал(а):
Если и это не то, что что тебе надо?
P.s. Забыл закрыть ?>....
Эх.... молодо-зелено =)
Спустя 11 минут, 42 секунды Mirexzpalich написал(а):
<?php
ob_start();
include_once('dayprice1.php');
include_once('tobuy1.html');
include_once('vhod.html');
$content = ob_get_contents(); // В переменную положится все, что выводится в твоих скриптах!
ob_clean();
?>
<html>
<head>
<title>Учиться учиться и еще раз учиться</title>
</head>
<body>
<table>
//Тут выводишь первую часть
<?php echo $content; ?>
// Тут последнюю... Тебе ж вроде так надо???
</table>
</body>
</html
Если и это не то, что что тебе надо?
P.s. Забыл закрыть ?>....
Спустя 13 минут, 42 секунды (7.07.2011 - 09:41) BESTWIZARD написал(а):
Вроде оно, счас попробую, минутку.
Спустя 9 минут, 2 секунды BESTWIZARD написал(а):
Спустя 9 минут, 2 секунды BESTWIZARD написал(а):
Цитата (Mirexzpalich @ 7.07.2011 - 06:39) |
<pre class="sh_sourceCode" rel="php"> <span class="sh_keyword"><?php</span> <span class="sh_function">ob_start</span><span class="sh_symbol">();</span> <span class="sh_control">include_once</span><span class="sh_symbol">(</span><span class="sh_string">'dayprice1.php'</span><span class="sh_symbol">);</span> <span class="sh_control">include_once</span><span class="sh_symbol">(</span><span class="sh_string">'tobuy1.html'</span><span class="sh_symbol">);</span> <span class="sh_control">include_once</span><span class="sh_symbol">(</span><span class="sh_string">'vhod.html'</span><span class="sh_symbol">);</span> <span class="sh_variable">$content</span> <span class="sh_symbol">=</span> <span class="sh_function">ob_get_contents</span><span class="sh_symbol">();</span> <span class="sh_comment">// В переменную положится все, что выводится в твоих скриптах!</span> <span class="sh_function">ob_clean</span><span class="sh_symbol">();</span> <span class="sh_keyword">?></span> <span class="sh_symbol"><</span>html<span class="sh_symbol">> <</span>head<span class="sh_symbol">> <</span>title<span class="sh_symbol">></span>Учиться учиться и еще раз учиться<span class="sh_symbol"></</span>title<span class="sh_symbol">> </</span>head<span class="sh_symbol">> <</span>body<span class="sh_symbol">> <</span>table<span class="sh_symbol">></span> <span class="sh_comment">//Тут выводишь первую часть</span> <span class="sh_keyword"><?php</span> <span class="sh_function">echo</span> <span class="sh_variable">$content</span><span class="sh_symbol">;</span> <span class="sh_keyword">?></span> <span class="sh_comment">// Тут последнюю... Тебе ж вроде так надо???</span> <span class="sh_symbol"></</span>table<span class="sh_symbol">> </</span>body<span class="sh_symbol">> </</span>html </pre> Если и это не то, что что тебе надо? P.s. Забыл закрыть ?>.... |
Всё равно не работает.
Смотри, в твоей реализации:
Созаём что-то типа функции ob_start();
И опять-таки ресуем таблицу как и было раньше:
Первая часть таблицы
ОПЯТЬ-ТАКИ ВЫЗВАВ ob_start(); - ТОЧНЕЕ ПРОЦЕСС ЗАГРУЗКИ В ПЕРЕМЕННУЮ $content ДЛИТСЯ РОВНО СТОЛЬКО-ЖЕ СКОЛЬКО ПОДКЛЮЧАЮТСЯ МОДУЛИ. ВЫВОД: ПОДКЛЮЧАЕМ МОДУЛИ ИМЕННО ЗДЕСЬ И ВТОРАЯ ЧАСТЬ ТАБЛИЦЫ НЕ ПРОРИСОВЫВАЕТСЯ ПОКА ЭТИ МОДУЛИ НЕ ПОДКЛЮЧАТЬСЯ !!!
Рисуем вторую часть таблицы.
=================================
Мне-то и надо - сделать обявление модулей подключаемых в середине таблицы, но загрузку их реализовать после прорисовки ВТОРОЙ ЧАСТИ таблицы. Уже копал и асинхронную загрузку в AJAX и JAVASCRIPT и что-то похожее было типа: создать событие ONCLICK и в этом событии прописать подключение модулей, а после прорисовки формы сгенерировать этот самый ONCLICK - но с ONCLICK реальной реализации так и не нашёл - только слова и белитристика - может есть какие соображения по этому поводу ?
С уважением.
Спустя 25 минут, 1 секунда (7.07.2011 - 10:06) Mirexzpalich написал(а):
BESTWIZARD
Понимаешь.... Модули подкружаются ВНАЧАЕЛЕ!!! а не в середине... И даже если ты все это дело реализуешь AJAX'ом, то МГНОВЕННО у тебя не загрузится!
Если же тебе надо, чтобы сначало загрузился весь костяк, а топом в середку вставилось содержимое, ЮЗАЙ AJAX
НАПРИМЕР:
1) Подключи jQuery
2) index.html
3)content.php
Понимаешь.... Модули подкружаются ВНАЧАЕЛЕ!!! а не в середине... И даже если ты все это дело реализуешь AJAX'ом, то МГНОВЕННО у тебя не загрузится!
Если же тебе надо, чтобы сначало загрузился весь костяк, а топом в середку вставилось содержимое, ЮЗАЙ AJAX
НАПРИМЕР:
1) Подключи jQuery
2) index.html
<html>
<head>
<script src="путь до jquery"></script>
<title>Учиться учиться и еще раз учиться</title>
</head>
<body>
<table>
<tr>
<td id="content">
<script>
$.ajax({
URL: "content.php",
success:
function(data)
{
$('#content').attr('innerHTML',data);
}
});
</script>
</td>
</tr>
</table>
</body>
</html
3)content.php
include_once('dayprice1.php');
include_once('tobuy1.html');
include_once('vhod.html');
Спустя 18 минут, 26 секунд (7.07.2011 - 10:25) BESTWIZARD написал(а):
А проще с генерацией ONCLICK события никак нельзя а ?
Может можно как-то ?
просто встречал подобное - но реальных строк не видел.
С уважением.
Может можно как-то ?
просто встречал подобное - но реальных строк не видел.
С уважением.
Спустя 45 минут, 30 секунд (7.07.2011 - 11:10) Mirexzpalich написал(а):
<html>
<head>
<script src="путь до jquery"></script>
<title>Учиться учиться и еще раз учиться</title>
<script>
function load_content(){
$.ajax({
URL: "content.php",
success:
function(data)
{
$('#content').attr('innerHTML',data);
}
});
}
</script>
</head>
<body>
<table>
<tr>
<td id="content">
<input type="button" onclick="load_content();" value="Нажми меня, я вся горю!!!" />
</td>
</tr>
</table>
</body>
</html>
content.php
include_once('dayprice1.php');
include_once('tobuy1.html');
include_once('vhod.html');
Спустя 16 часов, 6 минут, 50 секунд (8.07.2011 - 03:17) BESTWIZARD написал(а):
Даааааааааа, жаль что други способов нет. Ну что-то типа:
<button type="submit" id="15" method="POST" onClick="document.location.href='content.php';">
<img src="checkbox.gif">
<font size="5">
<b>ПОДКЛЮЧЕНИЕ МОДУЛЕЙ !!!</b><br />
</font>
</button>
А затем что-то типа:
<id="15" onClick=true>
Или ещё как-то активировать или генерировать нажатие в конце формы и всё-бы так просто работало.
Спустя 11 минут, 34 секунды BESTWIZARD написал(а):
А, да так тоже нельзя наверно - с кнопками - ведь PHP-cкрипт выполянется на стороне сервера, поэтому прежде чем увидишь странцу на экране своего браузера, пхп успеет интерпретировать. А onclick - это событие, которое выполняется на стороне клиента. НА стороне клиента нет никаких php и т.п. есть только Javascript.
Может что-то с очерёдностью в php можно сделать ?
То есть поставить что-то типа:
загружать include_once('dayprice1.php'); на при условии каком-то такое-то.
и в конце формы: условие такое-то произошло.
Может можно а ?
Или вот ещё оригинальнее: подмена одного элемнта другим - такое-же можно реализовать ?
Скажем заменить копку или колонку таблицы или ещё чего на include_once('dayprice1.php'); ??? Только сделать это в конце формы - после того как сама форма уже загружена а реально такое сделать ?
Спустя 13 часов, 35 минут, 38 секунд BESTWIZARD написал(а):
Так как возможно ? Что-то у меня ничего не получается.
А <script src="путь до jquery"></script> Это путь к чему вообще ? Я сервером не управляю и никаких jquery папок и файлов не вижу.
<button type="submit" id="15" method="POST" onClick="document.location.href='content.php';">
<img src="checkbox.gif">
<font size="5">
<b>ПОДКЛЮЧЕНИЕ МОДУЛЕЙ !!!</b><br />
</font>
</button>
А затем что-то типа:
<id="15" onClick=true>
Или ещё как-то активировать или генерировать нажатие в конце формы и всё-бы так просто работало.
Спустя 11 минут, 34 секунды BESTWIZARD написал(а):
А, да так тоже нельзя наверно - с кнопками - ведь PHP-cкрипт выполянется на стороне сервера, поэтому прежде чем увидишь странцу на экране своего браузера, пхп успеет интерпретировать. А onclick - это событие, которое выполняется на стороне клиента. НА стороне клиента нет никаких php и т.п. есть только Javascript.
Может что-то с очерёдностью в php можно сделать ?
То есть поставить что-то типа:
загружать include_once('dayprice1.php'); на при условии каком-то такое-то.
и в конце формы: условие такое-то произошло.
Может можно а ?
Или вот ещё оригинальнее: подмена одного элемнта другим - такое-же можно реализовать ?
Скажем заменить копку или колонку таблицы или ещё чего на include_once('dayprice1.php'); ??? Только сделать это в конце формы - после того как сама форма уже загружена а реально такое сделать ?
Спустя 13 часов, 35 минут, 38 секунд BESTWIZARD написал(а):
Так как возможно ? Что-то у меня ничего не получается.
А <script src="путь до jquery"></script> Это путь к чему вообще ? Я сервером не управляю и никаких jquery папок и файлов не вижу.
Спустя 18 часов, 58 минут, 49 секунд (8.07.2011 - 22:16) BESTWIZARD написал(а):
Подскажите хот ьчто-нибудь ещё, пожалуйста.
Спустя 54 минуты, 23 секунды (8.07.2011 - 23:10) Mirexzpalich написал(а):
Цитата |
<script src="путь до jquery"></script> Это путь к чему вообще ? Я сервером не управляю и никаких jquery папок и файлов не вижу. |
Тяжелый случай....
Тогда сделай так:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
Спустя 38 минут, 24 секунды (8.07.2011 - 23:49) Guest написал(а):
$h1='<html>';
$h2=modul();
$h3='</html>';
echo $h1.$h2.h3;
Спустя 1 минута, 6 секунд (8.07.2011 - 23:50) bodja написал(а):
Это был я



Спустя 23 часа, 26 минут, 5 секунд (9.07.2011 - 23:16) BESTWIZARD написал(а):
Цитата (Guest @ 8.07.2011 - 20:49) |
$h1='<html>'; |
Так вот эта строчка:
echo $h1.$h2.h3;
В ней-же всё равно загружается по очереди $h1.$h2.$h3;
А $h2 - это include и он выполнится вторым в любом случае - ПРОВЕРИЛ:
$h3 не загружается раньше $h2 - практически да и по логике быть иного не может.
Есть идея - может вот восользоваться injectInside с использованием JavaScript ?
Идея такова:
1) Загрузить всю таблицу TABLE1 без подключения командой include страниц на php и html.
2) Затем в самом конце загрузить в какой-нибудь div или в ещё что все эти модули написанные на php и html с помощю include.
3) Переместить с помощью injectInside или ещё как подключенные модули в середину таблицы TABLE1.
Единственная загвоздка - не получается реализация - подскажите пожалуйста, вы продвинутые наверняка сталкивались с подобной ситуацией.
Зараннее большое спасибо.
С уважением.
Спустя 20 минут, 31 секунда (9.07.2011 - 23:36) bodja написал(а):
Цитата |
В ней-же всё равно загружается по очереди $h1.$h2.$h3; А $h2 - это include и он выполнится вторым в любом случае. |
$h2-это переменная в которой уже подготовлены данные.
данные уже пойдут потоком без задержек на обработку.
Это тоже самое что написать
$h=$h1.$h2.$h3;
echo $h;
Где в таком случае будет задержка :) ?
Спустя 8 минут, 46 секунд (9.07.2011 - 23:45) BESTWIZARD написал(а):
Цитата (bodja @ 9.07.2011 - 20:36) | ||
$h2-это переменная в которой уже подготовлены данные. данные уже пойдут потоком без задержек на обработку. Это тоже самое что написать
Где в таком случае будет задержка :) ? |
Загвоздка вся в подготавливаемых данных, точнее:
$h2 - это то-же самое что:
include_once('dayprice1.php');
include_once('tobuy1.html');
include_once('vhod.html');
И данные эти подключаемые ежедневно изменются так что по другому - может вариант только с injectInside ?
Спустя 43 минуты, 49 секунд (10.07.2011 - 00:29) bodja написал(а):
Я Вам про порядок вывода данных,а вы вцепились в это include.
Да пускай хоть 10 сек будет "жевать",зато потом выплюнет все сразу.
А не так ,что сначала вывело начало,потом "переваривает" 10 сек в модуле ,и в конце рожает.
Да пускай хоть 10 сек будет "жевать",зато потом выплюнет все сразу.
А не так ,что сначала вывело начало,потом "переваривает" 10 сек в модуле ,и в конце рожает.
Спустя 1 час, 7 минут, 36 секунд (10.07.2011 - 01:37) BESTWIZARD написал(а):
Цитата (bodja @ 9.07.2011 - 21:29) |
Я Вам про порядок вывода данных,а вы вцепились в это include. Да пускай хоть 10 сек будет "жевать",зато потом выплюнет все сразу. А не так ,что сначала вывело начало,потом "переваривает" 10 сек в модуле ,и в конце рожает. |
Да, я всё понял.
Так в том-то и дело задача какая - я-же в самом начале данной темы и написал-то:
Боевая задача:
Вывести пользователю всю таблицу сразу !!! - иначе весь вид портит на экране. Организовать загрузку дополнительных данных сразу-же после вывода основной таблицы на экран.
Методы подключения и загрузки дополнительных данных не важны.
-----------------------------------------------------------
Так вот вся загвоздка в том что эти самые дополнительные данные должны находится в самом центре выводимой таблицы 3х3.
А если, как Вы говорите - сразу готовить всё, а потом выводить - то сразу автоматически возникает вообще нераешаемая проблема: пользователи на данный сайт вообще перестанут заходить так как он будет грузиться несколько секунд, а потом всё выводить - так что идея с подготовкой всего сразу не подходит: только подключать после основной таблицы, а затем перемещать или ещё как-то ВПИХНУТЬ в центр таблицы 3х3.
С уважением.
Спустя 1 час, 26 минут, 13 секунд (10.07.2011 - 03:03) BESTWIZARD написал(а):
Нечто подобное:
Или:
Или:
Но почему-то не работает - в таблицу не перемещается с конца страницы подключенный include_once('dayprice1.php');
Подскажите, пожалуйста в чём дело-то ?
<html>
<head>
<meta http-equiv=Content-Type content="text/html;
charset=windows-1251">
</head>
<body lang=RU>
<H2>Различия свойств innerText, innerHTML, outerText, outerHTML</H2>
<p>Для изменения текстов щелкните по ним мышкой</p>
<H2 onmousedown="this.innerText='Так работает
<em>innerText</em>'">Текст1</H2>
<H2 onmousedown="this.innerHTML='Так работает
<em>innerHTML</em>'">Текст2</H2>
<H2 onmousedown="this.outerText='Так работает
<em>outerText</em>'">Текст3</H2>
<H2 onmousedown="this.outerHTML='<p>Так работает
<em>outerHTML</em>'">Текст4</H2>
</body>
</html>
Или:
document.getElementById('id1').appendChild(document.getElementById('id2'));
Или:
var a = document.getElementById("id2").innerhtml;
var b = document.getElementById("id3").innerhtml;
document.getElementById("id2").innerhtml = b;
document.getElementById("id3").innerhtml = a;
document.getElementById("id2").id="a"
document.getElementById("id3").id="id2"
document.getElementById("a").id="id3"
Но почему-то не работает - в таблицу не перемещается с конца страницы подключенный include_once('dayprice1.php');
Подскажите, пожалуйста в чём дело-то ?
Спустя 6 часов, 52 минуты, 57 секунд (10.07.2011 - 09:56) ExpJ написал(а):
Лучше по другому спроектируйте ваше приложение. Надо сделать так что бы все компоненты страницы генерировались быстро, тогда будет все равно в какой последовательности их инклудить.
Спустя 1 час, 1 минута, 38 секунд (10.07.2011 - 10:57) BESTWIZARD написал(а):
Цитата (ExpJ @ 10.07.2011 - 06:56) |
Лучше по другому спроектируйте ваше приложение. Надо сделать так что бы все компоненты страницы генерировались быстро, тогда будет все равно в какой последовательности их инклудить. |
Нереально быстро - прайс очень большой - просто набор очень большой цифр. Так что только перемещение.
Спустя 1 час, 11 минут, 54 секунды (10.07.2011 - 12:09) bodja написал(а):
Разбейте прайс на страницы,
кто хочет смотреть весь,дайте ссылку на скачку и пускай смотрят у себя на компе.
ЗЫ километровых страниц никто не делает.
кто хочет смотреть весь,дайте ссылку на скачку и пускай смотрят у себя на компе.
ЗЫ километровых страниц никто не делает.
Спустя 9 часов, 5 минут, 32 секунды (10.07.2011 - 21:15) BESTWIZARD написал(а):
Так что с перемещением глухо или как ?
Спустя 12 часов, 31 минута, 34 секунды BESTWIZARD написал(а):
Ну хоть кто-то знает как перемещать подключенные блоки ?
Спустя 11 дней, 13 часов, 48 минут, 44 секунды BESTWIZARD написал(а):
Что проблема зависла ? Решения нет ?
Спустя 12 часов, 31 минута, 34 секунды BESTWIZARD написал(а):
Ну хоть кто-то знает как перемещать подключенные блоки ?
Спустя 11 дней, 13 часов, 48 минут, 44 секунды BESTWIZARD написал(а):
Что проблема зависла ? Решения нет ?
Спустя 23 дня, 20 часов, 44 минуты, 16 секунд (4.08.2011 - 17:59) BESTWIZARD написал(а):
Ну хоть кто-то ещё что скажет ?