Перейти к содержимому


Смена статуса при открытии карточки


Сообщений в теме: 9

#1 Dinara

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

  • Пользователи
  • PipPipPip
  • 527 сообщений
  • Пол:Женщина
  • Город:Уфа

Отправлено 08 Апрель 2014 - 10:11

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

#2 CbCoder

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

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 08 Апрель 2014 - 11:53

Сами же написали: "там уже проверка, если статус=первый этап, тогда статус не меняется". Добавляете вычисление на отображение поля и там это самое условие.

#3 Dinara

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

  • Пользователи
  • PipPipPip
  • 527 сообщений
  • Пол:Женщина
  • Город:Уфа

Отправлено 08 Апрель 2014 - 12:07

а если отображение поля будет в таблице, а не при открытой карточке? То есть поле "Статус" мы видим когда просматриваем строки таблицы. Это же тоже считается "При отображении", а нужно именно при открытии карточки

#4 CbCoder

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

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 08 Апрель 2014 - 12:24

1. Можно отключить отображение поля в таблице. Самый простой вариант, но не совсем удобный - вам это поле может быть нужно в таблице.
2. Можно проверять, где именно выполняется вычисление, через переменную $script_name. В карточке $script_name=="view_line2.php".

#5 Dinara

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

  • Пользователи
  • PipPipPip
  • 527 сообщений
  • Пол:Женщина
  • Город:Уфа

Отправлено 09 Апрель 2014 - 09:15

не получился первый способ..скрыла это поле, а дата проставляется http://take.ms/I9EGq на скрине видно второе поле,которое дублирует значение первого "Открытие карточки" если оно не пустое..а значит дата проставляется(
Можете второй способ описать,если не сложно?

#6 Dinara

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

  • Пользователи
  • PipPipPip
  • 527 сообщений
  • Пол:Женщина
  • Город:Уфа

Отправлено 09 Апрель 2014 - 09:25

например эта строка
http://cb.goszacaz.su/view_line2.php?table=42&filter=48&line=482598
Получается я также пишу на отображение поля "открытие карточки" и что-то типа
 if
http://cb.goszacaz.su/$script_name.php?table=42&filter=48&line=ID

Сообщение отредактировал Dinara: 09 Апрель 2014 - 09:25


#7 CbCoder

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

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 09 Апрель 2014 - 09:52

Я же написал уже как:

if ($script_name=="view_line2.php") {
   // тут ваш код
}


#8 Dinara

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

  • Пользователи
  • PipPipPip
  • 527 сообщений
  • Пол:Женщина
  • Город:Уфа

Отправлено 09 Апрель 2014 - 12:18

if ( ($line['Открытие карточки']=="0000-00-00 00:00:00") and  ($script_name=="view_line2.php") )
{
$line['Открытие карточки']=date("Y-m-d H:i:s");
}
Не помогло, открыла карточку и поле пустое все равно
http://take.ms/JaZZP

#9 Dinara

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

  • Пользователи
  • PipPipPip
  • 527 сообщений
  • Пол:Женщина
  • Город:Уфа

Отправлено 09 Апрель 2014 - 18:22

что я не так сделала?

#10 Dinara

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

  • Пользователи
  • PipPipPip
  • 527 сообщений
  • Пол:Женщина
  • Город:Уфа

Отправлено 09 Апрель 2014 - 19:43

оказывается нужно было добавить в начале кода
global $script_name;
=))





Количество пользователей, читающих эту тему: 4

0 пользователей, 4 гостей, 0 анонимных