в скрипте надо бы делать set names utf8; и соответственно set names cp1251;
Вот содержание скрипта, надо было раньше выложить.
@header('Content-type: text/html; charset=utf-8');
function convert_data($array, $from, $to){
foreach($array as $key=>$value){
if(is_array($value)) {
$result[$key] = htmlspecialchars(iconv($from, $to, $value));
continue;
}
$result[$key] = htmlspecialchars(iconv($from, $to, $value));
}
return $result;
}
if (!empty($_GET['time'])) $time = (int)$_GET['time']; else $time = 5;
echo date("Y-m-d H:i:s");
$conn = @mssql_connect(....);
@mssql_select_db(......, $conn);
$conn2 = @mysql_connect(.........);
@mysql_select_db(......., $conn2);
@mysql_query("SET NAMES UTF-8");
$all_e_tickers = @mssql_query("SELECT ........ WHERE ....... LIKE 'E%' AND ........");
if (!empty($all_e_tickers)) {
while ($data = mssql_fetch_assoc($all_e_tickers)) {
$e_tickers[$data['...']] = convert_data($data, "CP1251", "UTF-8");
}
$date = mysql_fetch_assoc(mysql_query("SELECT ..... FROM .... WHERE ....='E'"));
$date_add = $date['.....'];
if (!empty($e_tickers) && (mktime() > ($date_add + $time))) {
mysql_query("UPDATE ...... SET `value`='".serialize($e_tickers)."', `date`='".mktime()."' WHERE `type`='E'");
file_put_contents("/home/life/123.txt", serialize($e_tickers));
}
}
@mssql_close($conn);
@mysql_close($conn2);
так вот... в mysql криво записывается. а в файл правильно