ФорумПрограммированиеPHP для идиотов → Вывод списка (php + ajax)

Вывод списка (php + ajax)

  • Trej Gun

    Сообщения: 5305 Репутация: N Группа: в ухо

    Spritz 11 июля 2008 г. 13:59, спустя 6 часов 4 минуты 39 секунд


    function cp1251_to_utf8($s){
    $c209 = chr(209);
    $c208 = chr(208);
    $c129 = chr(129);
    for($i=0; $i<strlen($s); $i++){
    $c=ord($s[$i]);
    if ($c>=192 and $c<=239)
    $t.=$c208.chr($c-48);
    elseif ($c>239)
    $t.=$c209.chr($c-112);
    elseif ($c==184)
    $t.=$c209.$c209;
    elseif ($c==168)
    $t.=$c208.$c129;
    else
    $t.=$s[$i];
    }
    return $t;
    }

    function utf8_to_cp1251($s){
    for ($c=0;$c<strlen($s);$c++){
    $i=ord($s[$c]);
    if ($i<=127)
    $out.=$s[$c];
    if ($byte2){
    $new_c2=($c1&3)*64+($i&63);
    $new_c1=($c1>>2)&5;
    $new_i=$new_c1*256+$new_c2;
    if ($new_i==1025)
    $out_i=168;
    elseif ($new_i==1105)
    $out_i=184;
    else
    $out_i = $new_i-848;
    $out.=chr($out_i);
    $byte2=false;
    }
    if (($i>>5)==6) {
    $c1=$i;
    $byte2=true;
    }
    }
    return $out;
    }



    сначала utf8_to_cp1251 и спрашиваешь базу потом ответ cp1251_to_utf8 и отдаешь яваскрипту
  • TRIAL

    Сообщения: 988 Репутация: N Группа: Джедаи

    Spritz 12 июля 2008 г. 0:19, спустя 10 часов 19 минут 56 секунд

    Ок, попробую.
    from TRIAL with LOVE
  • TRIAL

    Сообщения: 988 Репутация: N Группа: Джедаи

    Spritz 14 июля 2008 г. 3:33, спустя 2 дня 3 часа 13 минут

    Ничерта у меня не получается. Не видит он русскую кодировку ни в какую. Уже и с БД пробыал и просто массив создавал с русскими индексами. Всё в пустую.
    Помогите плиз.
    from TRIAL with LOVE
  • Trej Gun

    Сообщения: 5305 Репутация: N Группа: в ухо

    Spritz 14 июля 2008 г. 3:49, спустя 16 минут 27 секунд

    в чем проблема?!



    $key = utf8_to_cp1251($_POST['request']);
    $rs = $db->Execute("Select column from table where column like '$key%'");

    $respons = "<select>";

    while(!$rs->EOF){
    $respons .= "<option>".cp1251_to_utf8($rs->fields['column'])."</option>";
    $rs->next();
    }

    $respons .= "</select>";

    echo $respons;

Пожалуйста, авторизуйтесь, чтобы написать комментарий!