Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: кодирование
 
 автор: jonnik   (04.03.2007 в 15:00)   письмо автору
 
 

Получаю данные из excel файла. Данные добавляются в БД. Все строчки которые содержат кирилицу в БД выглядят примерно так:

$str = "&#67&#72&#82&#79&#78&#79&#32&#87&#105&#110&#116&#101&#114&#32&#67&#32&#1096&#1080&#1087&#46";

При выводе все ОК. Надо реализовать поиск по БД. Думаю для этого кодировать строчку в этот код (кстати как он называется ?), а потом уже искать в БД. Кто подскажет как из кирилической строчки получить подобное ?

   
 
 автор: JonNik   (04.03.2007 в 16:29)   письмо автору
 
   для: jonnik   (04.03.2007 в 15:00)
 

Функция на выходе которой получается такая строка:

<?
function uc2html($str)
  {
    
$ret '';
    for( 
$i=0$i<strlen($str)/2$i++ )
    {
      
$charcode ord($str[$i*2])+256*ord($str[$i*2+1]);
      
$ret .= '&#'.$charcode;
    }
    return 
$ret;
}
?>

Чтобы добавить в БД нормальные данные приходится делать так:

<?
 
function uc2html($str)
  {
    
$ret '';
    for( 
$i=0$i<strlen($str)/2$i++ )
    {
      
$charcode ord($str[$i*2])+256*ord($str[$i*2+1]);
      
$ret .= '&#'.$charcode;
    }    
    return 
preg_replace_callback('/&#(\d+)/s''entities2windows_callback'$ret);
  }

  function 
entities2windows_callback($p)
  {
    
$c $p[1];
    if (
$c 256) return chr($c);
    
$u pack('n'$c);
    return @
iconv('UCS-2BE'"windows-1251"$u);
  }
?>

Может как-нибудь можно без двойного кодирования ?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования