2011-05-08 6 views
1

У нас есть сотни тысяч значений поиска, и поскольку продукт все еще находится в dev, идентификаторы не фиксируются. Поэтому в любое время, когда идентификатор обновляется, мы должны вернуться и обновить тысячи идентификаторов по всему коду, чтобы он работал правильно. Он съедает вовремя.Хранение базы данных pk IDs в альтернативе php-кода?

Есть ли еще один способ сохранить идентификаторы как динамические в коде, так что: они автоматически обновляются, когда идентификаторы меняются в таблицах, или все они хранятся в 1 файле для всех таблиц базы данных, поэтому он делает обновления намного проще и быстрее от перспективы развития и тестирования?

Платформа - Mysq + codeignitor php.

+1

Почему вы ввели код жесткого кодирования? –

+1

Вы не должны полагаться на идентификаторы для тестирования и разработки –

+0

Что еще есть альтернатива? Пример: состояние пользователя. Когда они регистрируются, они являются «Ожидающая активация», которая равна ID 1208 в моей таблице поиска. После подтверждения они переключаются на «Active», который равен ID 1209 и т. Д. Таким образом, моя команда жестко кодирует эти идентификаторы 1208, 1209 и т. Д. В коде. Для тестирования, кто еще может проверить правильный статус, меняются, если я не использую правильные идентификаторы? – Uri

ответ

2

Определите константы в вашем коде для идентификаторов вместо значений идентификатора жесткого кодирования. Вот пример:

<?php 

$result = mysql_query("SELECT Id, Name FROM Product"); 
while($row = mysql_fetch_assoc($result)){ 
    define('ID_'.$row['Name'],$row['Id']); 
} 
?>