Сделать столбец таким же значением, как и аналогичный столбец - PullRequest
1 голос
/ 22 февраля 2012

Я использую phpMyAdmin, и мне было интересно, есть ли способ, которым столбец по умолчанию может иметь то же значение, что и другой столбец?

Сценарий

Итак, я использую WordPress и хочу предоставить пользователям доступ к странице на определенное время, поэтому я создал столбец trialTime. Я хочу установить значение trailTime по умолчанию для регистрационной даты пользователей (которая также является столбцом). Таким образом, я могу начать обратный отсчет с момента их регистрации, но администратор сможет сбросить значение trialTime внутри панели администратора, если они этого захотят.

Ответы [ 4 ]

2 голосов
/ 22 февраля 2012

Если вы используете WordPress и хотите установить определенное поле пользователя во время регистрации, просто используйте * user_register * action hook.

function set_that_additional_thing ($user_id) {
     global $wpdb;
     $wpdb->query("UPDATE `" . $wpdb->prefix . "users` 
                   SET `copy_field` = `field` 
                   WHERE `user_id` = " . $user_id);
}

add_action('user_register', 'set_that_additional_thing ');
0 голосов
/ 22 февраля 2012

A значение столбца по умолчанию в MySQL должно быть константой, за исключением того, что вы можете использовать CURRENT_TIMESTAMP для столбца TIMESTAMP.

Если запись создается во время регистрации, то может быть достаточно использования столбца TIMESTAMP с CURRENT_TIMESTAMP.

В качестве альтернативы, вы можете обработать это при чтении значения из базы данных, что-то вроде этого:

SELECT IFNULL(trialTime, registrationDate) AS trialTime

Я предполагаю, что значения могут отличаться, иначе вам вообще не понадобится столбец trialTime.

0 голосов
/ 22 февраля 2012

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

0 голосов
/ 22 февраля 2012

Я не одаренный WordPress, но мне интересно, не могли бы вы вручную написать код, используя класс WPDB.Это позволяет полный контроль над базой данных.

http://codex.wordpress.org/Class_Reference/wpdb

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...