Jump to content
  • 0

Вопросы по PHP.


Kompilator
 Share

Question

Здравствуйте.

Для создания сайта потребовался PHP, в этой теме буду задавать вопросы знатокам.

Пока справляюсь сам, но вот возник вопрос - при формировании таблицы для отображения данных из БД как лучше выводить HTML ? Т.е. каждый шаг цикла (строка БД) выводить посредством "echo" или накапливать всю таблицу в переменной, а потом сразу-  "echo $text;" ?

Как правильнее, или быстрее исполняется или еще что нибудь ?

Link to comment
Share on other sites

Recommended Posts

  • 0

Вы самое главное не останавливайтесь)) как только вам надоест с этой самопиской, вы только скажите. вам сразу же CMS какую нибудь посоветуют. Ну это только когда надоест - значит время пришло)))

Link to comment
Share on other sites

  • 0
Вы можете вынести это в отдельный файл, и подключать его, если потребуется. http://php.net/manua...ion.include.php

Спасибо, это именно то, что я имел в виду =).

Вы самое главное не останавливайтесь)) как только вам надоест с этой самопиской, вы только скажите. вам сразу же CMS какую нибудь посоветуют. Ну это только когда надоест - значит время пришло)))

Дело в том, что я уже всё написал: интерактивное сравнение велофар, параметрический их поиск, комментарии.

Всё.

Осталось "вылизать" только, подсказок для пользователей добавить и т.п.

Далее только наполнение сайта контентом.

Так что СМС мне не грозит, или как оно там называется.

Link to comment
Share on other sites

  • 0

Ну и это, сам себя не похвалишь как говорится )))))

В самом начале посмотрел на всякие конструкторы сайтов, реклама там всякая и т.д., неизвестно что они там в код внедрили, а тут сам всё сделал и знаю что и где поправить если что.

Пришлось конечно потратить намного больше времени, но не жалею, было интересно и для мозгов встряска полезна.

Edited by Kompilator
  • Like 1
Link to comment
Share on other sites

  • 0

По submit отправляются данные формы способом GET.

Нужно прикрутить явой одну переменную к посылу, типа как в форме скрытым полем можно добавить ?

Или придётся весь посыл явой писать, а в форме вместо submit простой button поставить ?

Link to comment
Share on other sites

  • 0

можете записывать значение в скрытое поле. Но до отправки.

Получается надо ловить какое-то событие, вроде перемещения скролла ?

 и как только он переместился писать:

document.getElementById('ID скрытое поле').innerHTML='значение ползунка'

, так ?

Link to comment
Share on other sites

  • 0
нет, достаточно отлавливать событие submit и в обработчике сначала делать какие-то свои манипуляции, а потом делать form.submit();

Спасибо, ява всетаки великий язык )))

Вот ещё у меня вопрос - для того, чтобы при обновлении страницы, она открылась на том же самом месте (скролл), делаю так:

var scrtop = window.pageYOffset;

, и при открытии новой, так:

window.scrollTo(0,<?php echo $_GET['scrtop'];?>);

Так вот, если Вы не забыли, у меня есть левое и правое окно с раскрывающимися списками велофар - http://велосвет.рф/compare.html?idright=32&idleft=32&navmenur=Kompilatorright&navmenul=Kompilatorleft&resimg=1&scrtop=0

, как мне получить значение скроллов этих двух маленьких окошек ? И как их же при обновлении страницы вставить обратно ?

Link to comment
Share on other sites

  • 0
Так вот, если Вы не забыли, у меня есть левое и правое окно с раскрывающимися списками велофар - http://велосвет.рф/c...simg=1&scrtop=0 , как мне получить значение скроллов этих двух маленьких окошек ? И как их же при обновлении страницы вставить обратно ?

 

я бы на вашем месте сохранял позицию скроллов в куках или в локальном хранилище с помощью javascript.

 

получить позицию прокрутки можно как-то так:

document.querySelector('.win_left').scrollTop;
  • Like 1
Link to comment
Share on other sites

  • 0
я бы на вашем месте сохранял позицию скроллов в куках или в локальном хранилище с помощью javascript. получить позицию прокрутки можно как-то так:

Спасибо, сделал.

Это работает только в Firefox, в хроме и ИЕ нет:

function st(){   	window.scrollTo(0,<?php echo $_GET['scrtop'];?>);//работает везде	document.querySelector('.win_left').scrollTo(0,<?php echo $leftstop;?>);//работает только в фаерфоксе	document.querySelector('.win_right').scrollTo(0,<?php echo $rightstop;?>);//работает только в фаерфоксе}

Про куки, а вдруг они выключены ... не хочу чтобы экран скакал.

Edited by Kompilator
Link to comment
Share on other sites

  • 0
Про куки, а вдруг они выключены ... не хочу чтобы экран скакал.

 

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

Link to comment
Share on other sites

  • 0

Столкнулся тут с неприятной особенностью:

<textarea type="text" name="obrazec" class="reviev1_place">Мой текст.</textarea>

, так вот, "Мой текст." выводится в текстовой области ИЕ и Хрома, а в Фаерфоксе нет.

Как победить это недоразумение ?

Placeholder не подходит, надо мочь редактировать этот текст.

Link to comment
Share on other sites

  • 0

Что за чертовщина, уже не в первый раз замечаю странную особенность.

Как только задаю тут вопрос, в 80% случаев практически сразу сам нахожу решение,

А в этот раз больше, задал вопрос (2-мя постами выше) и обновил свою страницу ..... текст в текстовом поле вывелся !

Как это ?


Это очень плохо на самом деле...

Знаю, но не имею свободного трафика для создания нескольких тем  :unsure: .

Link to comment
Share on other sites

  • 0
Как это ?

как вариант страница закэшировалась в браузере, обновляйте страницу через ctrl+F5 , а не просто F5, и страница будет запрошена с сервера, а не взята из кэша.

  • Like 1
Link to comment
Share on other sites

  • 0
как вариант страница закэшировалась в браузере, обновляйте страницу через ctrl+F5 , а не просто F5, и страница будет запрошена с сервера, а не взята из кэша.

Наверное, про контрл не знал, спасибо.

Link to comment
Share on other sites

  • 0

Теперь такая беда.

В HTML написано такое:

<span id='revscr'><form action="modsql.html?id=<?php echo $res;?>&scrtop=0" method="post" name="test" onsubmit="return false;"></span>

В JS написано:

function scrl(){  var scrtop = window.pageYOffset;			  document.getElementById('revscr').innerHTML='<form action="modsql.html?id=<?php echo $res;?>&scrtop='+scrtop+'" method="post" name="test" onsubmit="return false;">';}

Т.е. если жмут на обычную submit, то строка заключенная в <span id='revscr'></span>, остается без изменений.

Если жмут другой кнопкой, то строка подменяется на новую, с другим значением переменной scrtop.

Так вот при нажатии другой кнопки отправляется пустая форма, т.е. там в POST штук 30 значений, и все они не определены.

Как побороть такое ?

Link to comment
Share on other sites

  • 0
Заголовки при запросе указываете?

Нет, не указываю.

Вставил Вашу строчку в функцию JS, вообще не выполняется ничего, или синтаксическая ошибка или ещё что-то.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share


×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy