Jump to content
  • 0

Вопросы по PHP.


Kompilator
 Share

Question

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

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

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

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

Link to comment
Share on other sites

Recommended Posts

  • 0
  On 9/8/2015 at 12:58 PM, Kompilator said:
Вдруг он (поисковик) как-то видит ПХП до формирования страницы ?
 

Нет. Он видит тоже самое, что видите во view-source. У Гугла была такая кнопка, которая показывала, как страницу видит бот.

  • Like 1
Link to comment
Share on other sites

  • 0

Есть ли в ПХП что-то подобное GO TO ?

Ибо приходится ставить кучу условий, код разросся сильно.

Например вот:

if	($sorted1 == 'model'){echo '<td class="sort"  style="cursor:pointer" title="Отсортировано по модели (A-Z)"onClick="return sorted(\'model DESC\',\''.$sorted2.'\');"><img src="../images/sort_1.png"></td>';}if	($sorted1 == 'model DESC'){echo '<td class="sort" style="cursor:pointer"  title="Отсортировано по модели (Z-A)" onClick="return sorted(\'\',\''.$sorted2.'\');"><img src="../images/sort_2.png"></td>';}		if	($sorted2 == 'model'){echo '<td class="sort"  style="cursor:pointer" title="Отсортировано по модели (A-Z)"onClick="return sorted(\''.$sorted1.'\',\'model DESC\');"><img src="../images/sort_1.png"></td>';}if	($sorted2 == 'model DESC'){echo '<td class="sort" style="cursor:pointer"  title="Отсортировано по модели (Z-A)" onClick="return sorted(\''.$sorted1.'\',\'\');"><img src="../images/sort_2.png"></td>';}if	($sorted1 == ''){echo '<td class="sort" style="cursor:pointer"  title="Отсортировать по модели" onClick="return sorted(\'model\',\''.$sorted2.'\');"><img src="../images/unsort.png"></td>';}if	($sorted1 <> '' && $sorted1 <> 'model' && $sorted1 <> 'model DESC' && $sorted2 == ''){echo '<td class="sort" style="cursor:pointer"  title="Отсортировать по модели" onClick="return sorted(\''.$sorted1.'\',\'model\');"><img src="../images/unsort.png"></td>';}if	($sorted1 <> '' && $sorted2 <> '' && $sorted1 <> 'model' && $sorted1 <> 'model DESC' && $sorted2 <> 'model' && $sorted2 <> 'model DESC'){echo '<td class="sort" style="cursor:pointer"  title="Отсортировать по модели"><img src="../images/unsort.png"></td>';}

, две последние строчки проверяют то, что было проверено в первых четырёх.

И незачем проверять все строчки, если первое условие истинно, там бы выйти сразу в следующую процедуру и все.

Link to comment
Share on other sites

  • 0

Можете использовать шаблонизатор, либо просто

 

<? if (Условие) { ?>HTML код, который будет отображен, в случае, если условие верное<? } ?>

Так проще воспринимается визуально

Edited by li4e
Link to comment
Share on other sites

  • 0

БЛИН ! Тут автоотправка сообщения по истечении некоторого времени чтоле ?

Я пока писал сообщение про ГОТУ, нашел что оно есть в ПХП. И сделал при помощи его как и хотел.

Сюда заглянул, а тут уже целая дискуссия по этому поводу.

Ну блин и движок у форума.

Link to comment
Share on other sites

  • 0

Тут обнаружилось страшное :( .

Выпадающие списки:

<select class ="rev_sel_akb" name="menu" size="1"><option value="0">0</option></select>

, так вот, в ИЕ, Фаерфоксе есть кнопочка, нажав на которую список раскрывается, а в Хроме её нет.

Манипуляции с -webkit-appearance: button; не помогают.

Link to comment
Share on other sites

  • 0
  On 9/11/2015 at 12:21 PM, afdw said:

 

А зачем эта строка?

-webkit-appearance: none;

Она была в примере, решил оставить во избежание появления непредсказуемой кнопки в каком нибудь браузере.

Link to comment
Share on other sites

  • 0
  On 9/11/2015 at 12:27 PM, Kompilator said:
Она была в примере, решил оставить во избежание появления непредсказуемой кнопки в каком нибудь браузере.
 

Эта строка как раз и убирает кнопку.

  • Like 1
Link to comment
Share on other sites

  • 0

Подскажите пожалуйста с формами, а именно ...

по нажатию кнопки "Показать", выполняется такая строка:

<form action="reviev_n.html?sorted1=<?php echo $sorted1;?>&sorted2=<?php echo $sorted2;?>" method="post">

т.е. вся инфа (11 переменных) передаётся методом POST, а две других, которые определяются не в данной форме, я прицепил как GET параметры (sorted1,sorted2).

Мне нужно передавать данные не по POST, а по GET. Я меняю метод:

<form action="reviev_n.html?sorted1=<?php echo $sorted1;?>&sorted2=<?php echo $sorted2;?>" method="get">

и теперь две "левые" переменные, которые я прикрутил к адресу руками, не передаются.

Т.е. их просто нет в адресной строке, GET их вырезает.

Подскажите, как их всё таки передать вместе с остальными ?

Спасибо, разобрался:

<input type="hidden" name="sorted1" value="<?php echo $sorted1;?>">
Edited by Kompilator
Link to comment
Share on other sites

  • 0
  On 9/16/2015 at 10:12 AM, wwt said:
<form action="reviev_n.html" method="get"><input type="hidden" name="sorted1" value="<?php echo $sorted1;?>"><input type="hidden" name="sorted2" value="<?php echo $sorted2;?>"></form>

Одновременно получилось =).

Спасибо.

Link to comment
Share on other sites

  • 0

Вот интересное недоразумение:

<button class="revclrbutt" onClick="return clr('123');">Сбросить</button>

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

Если эту строчку поставить после тега </form>, то помимо выполнения функции, отрабатывает ещё и это:

<form action="reviev_n.html" method="post">

Тег буттон как-то завязан по умолчанию на форму что ли ?

Link to comment
Share on other sites

  • 0
  On 9/16/2015 at 11:40 AM, wwt said:
Не привязан ли обработчик к кнопке где-то в скриптах?
function clr()	{			window.location.href='http://велосвет.рф/reviev_n.html?cena_min=&cena_max=&lumen_min=&lumen_max=&massa_min=&massa_max=&kelvin_min=&kelvin_max=&akb_min=&akb_max=&qi_min=&qi_max=&kol_led_min=&kol_led_max=&sorted1=&sorted2=';	}

Нет, не привязан.

Это кнопка обнуления данных поиска.

Edited by Kompilator
Link to comment
Share on other sites

  • 0
  On 9/16/2015 at 11:48 AM, Kompilator said:

Вы уверены? =)))

Присваивание значения свойству window.location.href работает как редирект на заданный адрес =)

Link to comment
Share on other sites

  • 0
  On 9/16/2015 at 11:51 AM, wwt said:
Присваивание значения свойству window.location.href работает как редирект на заданный адрес =)

Так и должно быть.

Видите, все переменные которые идут паровозиком - не определены, т.е. там пусто. При генерации новой страницы, РНР проставит эти значения (пустоту) в форму и она окажется пустая.

А кнопка срабатывает как отправка формы, т.е. там не нули, а значения выбранные пользователем.

Вот если сделать переход в новую вкладку (прявязать другую функцию к кнопке):

function go_http(id)    {            window.open(id, '_blank');    }

, то видно, что функция всё таки отрабатывает, окно открывается, но при этом в окне родителе, происходит действие описанное в:

<form action="reviev_n.html" method="get">

Значит в первом случае получается каким-то образом отрабатывают 2 действа ?

Ну да ладно, спасибо Вам, есть за что :rolleyes:.

Я тег <button> заменил на <span>, там такую же кнопку нарисовал, она работает корректно.

Вот где оно находится, кнопка "Очистить" не хотела работать - http://велосвет.рф/reviev_n.html

Там только еще не доделано, но если проставить какое нить значение в поле, то "Показать" не стирает, а "Очистить" теперь стирает.


  On 9/16/2015 at 12:00 PM, Николя223 said:

 

  On 9/16/2015 at 11:48 AM, Kompilator said:
Это кнопка обнуления данных поиска.

по умолчанию button имеет type="submit" , чтобы была простой кнопкой укажите тип button

 

Где ж ВЫ были час назад ? =)))))))

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