[SpamIt] Не спамит на русском. Как быть?

Тема в разделе "SEO Скрипты", создана пользователем icemen7, 12 ноя 2008.

Статус темы:
Закрыта.
  1. icemen7

    icemen7 Создатель

    Регистр.:
    8 июн 2008
    Сообщения:
    17
    Симпатии:
    5
    Поставил Spam it! v.2 на VDS. Все отлично работает спасибо.
    Столкнулся с интересной проблемой, если поле comment на русском языке, то большинстово русскоязычных блогов его не принимает или принимает как пустое сообщение. Если поле на английском то все нормально. Как я понимаю это проблема с кодировками. Я в PHP не силен но думаю попробовать функцию htmlencode(). Кто что думает?
     
  2. vasya999

    vasya999

    Регистр.:
    14 дек 2006
    Сообщения:
    310
    Симпатии:
    45
    iconv()
    P.S. В 2.12 это поправили. 2.11 тоже не умеет.
     
    icemen7 нравится это.
  3. icemen7

    icemen7 Создатель

    Регистр.:
    8 июн 2008
    Сообщения:
    17
    Симпатии:
    5
    iconv() преобразует стринг в нужную кодировку это понятно. Извините не пойму в какую нужно. Мой сервер в utf-8. В исходном коде страницы куда мне нужно отправить пост тоже стоит utf-8. Уж разжуйте ньюбу пожалуйста.
     
  4. vasya999

    vasya999

    Регистр.:
    14 дек 2006
    Сообщения:
    310
    Симпатии:
    45
    Надо по коду смотреть, начиная с открытия файла с постом, как и куда там че преобразовывается.
    Может транслитом проще поспамить пока?
     
  5. icemen7

    icemen7 Создатель

    Регистр.:
    8 июн 2008
    Сообщения:
    17
    Симпатии:
    5
    Ясно что тут нужно у программеров помощи просить, но я пока думаю вот как - главная страница spamit открывается в cp-1251, пост хранится в файле savepost.txt тоже в cp-1251, значит при открытии страницы где используется cp-1251 нужно постить нормально, а если страница для постинга в кодировке utf-8 нужно делать преобразование.
    Так что все не так просто.
    Все пошел искать решение. Сделаю отпишу.
     
  6. icemen7

    icemen7 Создатель

    Регистр.:
    8 июн 2008
    Сообщения:
    17
    Симпатии:
    5
    Все получилось.:yahoo:

    файл spamitv.class.php
    функция getpoststring()
    строка 908
    меняем $params .= $k . '=' . urlencode($v) . '&';
    на $params .= $k . '=' . urlencode(iconv('windows-1251', 'UTF-8', $v)) . '&';
    Обратите внимание чтобы у вас на сервере была включена бибилотека iconv

    После этих изменений spamit начинает нормально постить на русском в кодировке utf.
    А как сделать чтобы он сам определял в какой кодировке ему постить сами думайте, у меня успешно получилось.
     
    deling2 нравится это.
  7. SashaBriskavod

    SashaBriskavod Создатель

    Регистр.:
    30 окт 2008
    Сообщения:
    20
    Симпатии:
    1
    попробуй iconv() :)
     
  8. quickmouse

    quickmouse Создатель

    Регистр.:
    23 окт 2008
    Сообщения:
    22
    Симпатии:
    0
    ЧТо за iconv() ? Можно поподробнее?
     
Статус темы:
Закрыта.