При изменении поля в Типе материала поле перестает работать

Главные вкладки

Аватар пользователя hontein hontein 19 декабря 2011 в 14:56

Добрый день! На сайте с которым я работаю чудеса. Попытаюсь коротко.Drupal 6.22
Есть Тип данных "конкурсная работа" в нем есть поля. Берем и редактируем одно из полей(такая ситуация со всеми полями, как работало раньше до меня не знаю.), например field_contest2011_vk
вот его код

<p>$count = db_result(db_query(&quot;select count(nid) from {content_type_contest_2011}&quot;)); if (!empty($node -&gt;field_contest2011_email [ 0 ][&#39;value&#39;])) { $to = $node -&gt;field_contest2011_email [ 0 ][&#39;value&#39;]; } else { $to = db_result(db_query(&quot;SELECT mail FROM {users} WHERE uid = $node-&gt;uid&quot; )); } drupal_set_message(t(&#39;</p>
<div style="width: 50px;">
<script type="text/javascript">document.write(VK.Share.button(false,{type: "button", text:"Рассказать"}));</script></div>
<p>Кад работы <strong>%count</strong> так же был выслан на <strong>%email</strong>&#39;, array(&#39;%count&#39; =&gt; $count,&#39;%email&#39;=&gt;$to)));</p>

или

$count = db_result(db_query("select count(nid) from {content_type_contest_2011}"));
if (!empty($node ->field_contest2011_email [ 0 ]['value'])) {
$to = $node ->field_contest2011_email [ 0 ]['value'];
}
else {
$to = db_result(db_query("SELECT mail FROM {users} WHERE uid = $node->uid" ));
} drupal_set_message(t('

Кад работы %count так же был выслан на %email'

, array('%count' => $count,'%email'=>$to)));

В чем собственно говоря Соль. Изменяю поле и поле больше не работает. Вот поменл "код работы" на "кад работы" и привет....
Я залез в базу и посмотрел что изменяется в таблице content_node_field.
Поля global_settings и db_colmnus имели следующие значения

global_settings

a:8:{s:4:"code";s:631:"$count = db_result(db_query("select count(nid) from {content_type_contest_2011}"));
if (!empty($node ->field_contest2011_email [ 0 ]['value'])) {
        $to = $node ->field_contest2011_email [ 0 ]['value'];
} else {
        $to = db_result(db_query("
SELECT mail FROM {users} WHERE uid = $node->uid" ));
}
drupal_set_message(t('<div style="
width: 50px;"><script type="text/javascript">document.write(VK.Share.button(false,{type: "button", text:"Рассказать"}));</script></div>Код работы <strong>%count</strong> так же был выслан на <strong>%email</strong>', array('%count' => $count,'%email'=>$to)));
"
;s:14:"display_format";s:39:"$display = $node_field_item['value'];
"
;s:5:"store";i:1;s:9:"data_type";s:3:"int";s:11:"data_length";s:3:"256";s:13:"data_not_NULL";i:0;s:12:"data_default";s:0:"";s:13:"data_sortable";i:1;}

db_colmnus
a:1:{s:5:"value";a:4:{s:4:"type";s:3:"int";s:6:"length";s:3:"256";s:8:"not NULL";i:0;s:8:"sortable";i:1;}}

Стало
global_settings

a:8:{s:4:"code";s:715:"<p>$count = db_result(db_query(&quot;select count(nid) from {content_type_contest_2011}&quot;)); if (!empty($node -&gt;field_contest2011_email [ 0 ][;value&#39;])) { $to = $node -&gt;field_contest2011_email [ 0 ][&#39;value&#39;]; } else { $to = db_result(db_query(&quot;SELECT mail FROM {users} WHERE uid = $node-&gt;uid&quot; )); } drupal_set_message(t(&#39;</p>
<div style="
width: 50px;">
<script type="
text/javascript">document.write(VK.Share.button(false,{type: "button", text:"Рассказать"}));</script></div>
<p>Кад работы <strong>%count</strong> так же был выслан на <strong>%email</strong>&#39;, array(&#39;%count&#39; =&gt; $count,&#39;%email&#39;=&gt;$to)));</p>
"
;s:14:"display_format";s:54:"<p>$display = $node_field_item[&#39;value&#39;];</p>
"
;s:5:"store";i:1;s:9:"data_type";s:3:"int";s:11:"data_length";s:3:"256";s:13:"data_not_NULL";i:0;s:12:"data_default";s:0:"";s:13:"data_sortable";i:1;}

db_colmnus
a:1:{s:5:"value";a:4:{s:4:"type";s:3:"int";s:6:"length";s:3:"256";s:8:"not NULL";i:0;s:8:"sortable";i:1;}}

Естественно они отличаются нехило. Помогите, в чем проблема? Извиняюсь если не предоставил какие то сведения или данные. Я всегда тут и напишу что нужно\заскриню.
И ещё вопрос, что это за s:5: i:0;s:8: где про это почитать?

п.с. Чуть не забыл, я обновил drupal с 6.15 до 6.22, возможно и тут подвох?
п.с.2 А ну ещё на сайте вирус, может из-за этого? 73318">http://www.drupal.ru/node/73318]73318[/theme]

Комментарии

Аватар пользователя MY MY 20 декабря 2011 в 7:52

Про проблему незнаю, надо БД смотреть,
про: s:5: i:0;s:8:

s:5 - значит сторка (string) из 5 символов
i:0 - занчение (boolean) TRUE/FALSE или 1/0
s:8 - соответственно строка из 8 символов.

ну и a:1 - это массив (array) из одного элемента

Читай тут:
1. http://php.net/manual/en/function.serialize.php
2. http://php.net/manual/en/function.unserialize.php