Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Web страница  (Прочитано 2449 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн zu11u

  • Автор темы
  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Web страница
« : 01 Марта 2012, 10:15:38 »
Добрый день,

на днях забежал человек и попросил сделать, что-то вроде системы контроля.
Суть в том, что есть желание иметь web страницу, на которой будет размещено 10 фоток. При нажатие на которые,  рамка вокруг фотографии меняется на определенный цвет и под фоткой появляется опредёлённый текст время нажатия.
В наличии есть Апатч с ПХП.
Пока нет необходимости хранить историю нажатий.
В web программировании я полный ноль, но могу с помощью гугла накидать таблицу с нажимающимися кнопками в ячейках. Могу попробовать накидаю код для кнопки, что бы менялся цвет ячейки. Но это всё будет только для ЭТОЙ страницы. При перегрузке всё вернется на дефолтные настройки.
В принципе по идеи можно вбить переменные и выдёргивать их файла
%ЦВЕТ%;%ФОТКА%;%ИМЯ%;%ТЕКСТ%;%ВРЕМЯ%
<td width="120px" style="background-color:%ЦВЕТ%" align="middle"><form>
<button style="height: 98px; width: 74px"><img src="%ФОТКА%" alt="%ИМЯ%" style="vertical-align: middle" onclick="%ВЫПОЛНИТЬ%"></button>
%ТЕКСТ% %ВРЕМЯ%
</form></td>
Но тут должен быть триггер при обработке полей текста и цвета,  если до нажатия было это то, сделать противоположное.
Вот и сижу, думаю, как сделать, так что бы это всё работало.
Хотя может есть другие варианты, как это сделать проще вместо того что бы писать код для каждой кнопки по отдельности.

Оффлайн gva230

  • Активист
  • *
  • Сообщений: 981
  • GUI-овый линуксоид
    • Просмотр профиля
    • Моя дикая страничка
Re: Web страница
« Ответ #1 : 01 Марта 2012, 10:46:13 »
Время нажатия и текущее состояние рамочки нужно где-то сохранять. На мысль приходит два варианта - в базе и в файле. Думаю, если это всего одна небольшая страничка и всего три переменные, то в файл будет проще, чем городить базы.

В файле хранится следующая информация:
идентификатор фотки|цвет|время последнего клика
На одну строку одна фотка.

PHP-скрипт читает строки файла в массив и уже из него вставляет данные в нужные места страницы.
При клике по фотке этот же скрипт замещает в файле нужную строку на новую, с новыми данными.
Kubuntu - наше фсё! :Ь

Оффлайн zu11u

  • Автор темы
  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: Web страница
« Ответ #2 : 01 Марта 2012, 11:16:37 »
Так в том то и вопрос, как это лучше сделать.
Толи писать 10 отдельных кнопок, проверяющий конкретную строку и обновляющую её, или одну выдёргивающию значения из данной ячейки, но как это сделать я пока не вкурсе.

Оффлайн gva230

  • Активист
  • *
  • Сообщений: 981
  • GUI-овый линуксоид
    • Просмотр профиля
    • Моя дикая страничка
Re: Web страница
« Ответ #3 : 01 Марта 2012, 13:15:11 »
Допустим вы уже прочитали файл и сформировали ассоциативный массив данных $arr, где ключом является идентификатор картинки, например путь к ней. Так же допустим, что вы уже обработали клик пользователя и имеете переменную $in, в которой хранится идентификатор картинки, по которой совершён клик.

<?php
$out 
""// в эту переменную будет писаться сформированный текст
$time time(); // получаем текущее время на стороне сервера
foreach ($arr as $key => $value// перебираем все элементы массива $arr, где $key - идентификатор картинки и ключ массива, а $value - время клика 
{
	
if (
$key == $in// проверяем, по этой-ли картинке совершён клик
	
{
	
	
// если по этой, то меняем её цвет и время
	
	
$out .= "<div class=\"highlight\"><div><input type=\"image\" src=\"".$key."\" name=\"in\" value=\"".$key."\" /></div><div>".$time."</div></div>"
	
}
	
else
	
{
	
	
// если клик не по этой картинке, то цвет стандартный, а время прежнее
	
	
$out .= "<div><div><input type=\"image\" src=\"".$key."\" name=\"in\" value=\"".$key."\" /></div><div>".$value."</div></div>"
	
}
}
// формируем html-страничку
print("<html><head><link type="text/css" rel="stylesheet" href="style.css" /></head><body><form action=\"index.php\" method=\"post\">");
print(
$out);
print(
"</form></body></html>");
?>


Это всё очень упрощённо, ошибки не исключены.
Kubuntu - наше фсё! :Ь

Оффлайн Olej

  • Забанен
  • Активист
  • *
  • Сообщений: 884
    • Просмотр профиля
Re: Web страница
« Ответ #4 : 01 Марта 2012, 13:44:27 »
на днях забежал человек и попросил сделать, что-то вроде системы контроля.
Суть в том, что есть желание иметь web страницу, на которой будет размещено 10 фоток. При нажатие на которые,  рамка вокруг фотографии меняется на определенный цвет и под фоткой появляется опредёлённый текст время нажатия.

... я прошу прощения за off-topic, и ещё раз за вмешательство в беседу джентльменов ;), но ...

но мог удержаться от столь блистательного ТЗ на работу:

Цитировать
Суть в том, что есть желание иметь web страницу, на которой будет размещено 10 фоток. При нажатие на которые,  рамка вокруг фотографии меняется на определенный цвет - чёрный, и под фоткой появляется опредёлённый текст время нажатия: "Любим, помним, скорбим".

Оффлайн zu11u

  • Автор темы
  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: Web страница
« Ответ #5 : 01 Марта 2012, 16:46:11 »
Это всё очень упрощённо, ошибки не исключены.

спасибо
завтра поигрась со страницей

... я прошу прощения за off-topic, и ещё раз за вмешательство в беседу джентльменов ;), но ...
но мог удержаться от столь блистательного ТЗ на работу:
какое есть.
Фактически он сказал: "Пусть там будут кнопки, они заходят и нажимают, а у меня тут что нибудь загориться через компьютер. И я знаю сколько их там сидит без дела."
« Последнее редактирование: 01 Марта 2012, 16:54:39 от zu11u »

Оффлайн arrecck

  • Старожил
  • *
  • Сообщений: 1725
    • Просмотр профиля
Re: Web страница
« Ответ #6 : 01 Марта 2012, 16:51:40 »
Покажите для начала набор данных, которые нужно сохранять

Оффлайн Olej

  • Забанен
  • Активист
  • *
  • Сообщений: 884
    • Просмотр профиля
Re: Web страница
« Ответ #7 : 01 Марта 2012, 16:53:12 »
Это всё очень упрощённо, ошибки не исключены.

спасибо
завтра поигрась со страницей
это вы мне незаслуженно присваивает чужую славу - это вам благодарить нужно: gva230 ;)

Оффлайн zu11u

  • Автор темы
  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: Web страница
« Ответ #8 : 01 Марта 2012, 17:00:27 »
Покажите для начала набор данных, которые нужно сохранять

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

Текст и цвет будут иметь только 2 значения, скажем: "красный" - "уехал в: " "зелёный" - "приехал в:"

Оффлайн arrecck

  • Старожил
  • *
  • Сообщений: 1725
    • Просмотр профиля
Re: Web страница
« Ответ #9 : 01 Марта 2012, 17:04:29 »
javascript можно использовать?

Оффлайн zu11u

  • Автор темы
  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: Web страница
« Ответ #10 : 01 Марта 2012, 17:09:50 »
javascript можно использовать?
не желательно, но если без него ни как...


Пользователь решил продолжить мысль 01 Марта 2012, 17:14:51:
думаю сделать что то вроде этого


только при нажатии на фото, меняется цвет фона и текс и время
« Последнее редактирование: 01 Марта 2012, 17:14:51 от zu11u »

Оффлайн gva230

  • Активист
  • *
  • Сообщений: 981
  • GUI-овый линуксоид
    • Просмотр профиля
    • Моя дикая страничка
Re: Web страница
« Ответ #11 : 01 Марта 2012, 19:19:44 »
О! Так енто меняет дело. :) Тот мой код теперь мало пригоден.
Kubuntu - наше фсё! :Ь

Оффлайн zu11u

  • Автор темы
  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: Web страница
« Ответ #12 : 02 Марта 2012, 14:08:14 »
как я понял вё же прийдётся использовать java

этим
Код: (javascript) [Выделить]
<script type="text/javascript">
function getData(t){
var cl=document.getElementById(t.id).innerHTML;
var el=document.getElementById(t.id);
var bc = el.getAttribute('style');
if (typeof bc == 'string') {
    } else if (typeof bc == 'object') {
    bc = bc.cssText;
}
}
</script>
буду вытаскивать от сюда цвет и содержимое ячейки
Код: (html5) [Выделить]
<td id="1" width="120px" height="130px" style="background-color:#41A317" onclick="getData(this)">
<img src="vb.jpg" "height=98" width="74" alt="Name">
Прибыл в: 14:00
</td>
« Последнее редактирование: 02 Марта 2012, 14:09:59 от zu11u »

Оффлайн Olej

  • Забанен
  • Активист
  • *
  • Сообщений: 884
    • Просмотр профиля
Re: Web страница
« Ответ #13 : 02 Марта 2012, 15:33:28 »
как я понял вё же прийдётся использовать java
javascript - чтоб совсем уже точно ;)

пользуясь случаем:

http://www.books.ru/books/javascript-podrobnoe-rukovodstvo-5-e-izdanie-555423/?show=1
Цитировать
Лучшая книга по программированию в целом, которая мне когда либо попадалась!
Цитировать
В ней букавально есть все что необходимо знать при программировании скриптов. Для тех кто занимается JS, что называется маст хэв!
Цитировать
Честно говоря не знаю как описать эту шикарную книгу.
« Последнее редактирование: 02 Марта 2012, 16:35:55 от Olej »

 

Страница сгенерирована за 0.064 секунд. Запросов: 25.