За последние 24 часа нас посетили 17584 программиста и 1651 робот. Сейчас ищут 880 программистов ...

Как принудительно установить кодировку?

Тема в разделе "Вопросы от блондинок", создана пользователем EvelRus, 23 дек 2007.

  1. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    В начало файла.
     
  2. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    не помогло :(((
     
  3. dark-demon

    dark-demon Активный пользователь

    С нами с:
    16 фев 2007
    Сообщения:
    1.920
    Симпатии:
    1
    Адрес:
    леноград
    откуда ты надыбал текст в макокодировке?
     
  4. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    скрипт в ней сохраняет сам :(((
     
  5. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Поменяй метатег у страницы с формой и поставь кириллическую локаль в файлах с обработчиком. Должно работать.
     
  6. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    Это один и тот же файл..
    HTML:
    1. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
     
  7. dark-demon

    dark-demon Активный пользователь

    С нами с:
    16 фев 2007
    Сообщения:
    1.920
    Симпатии:
    1
    Адрес:
    леноград
    показывай скрипт :)
     
  8. Anonymous

    Anonymous Guest

    Блин. Сходи в соседнюю тему, почитай что такое кодировки и почему ее нельзя определять скриптом.
     
  9. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    PHP:
    1.  
    2. <?
    3. setlocale(LC_ALL, "ru_RU.cp1251");
    4. $title = "Гостевая книга / Факультет Начальных Классов";
    5. if ($sent == '1' && $bot == '')
    6. {
    7.  if (($_POST['name'] == '') || ($_POST['message'] == ''))
    8.   {
    9.    $content = 'Заполнены не все поля отмеченеые знаком "*" !!!';
    10.   }
    11. else
    12. {
    13.  if(isset($_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] ==  $_POST['keystring'])
    14.  {
    15. $_POST['name'] = str_replace('~','',htmlentities(trim($_POST['name'])));
    16. $_POST['e_mail'] = str_replace('~','',htmlentities(trim($_POST['e_mail'])));
    17. $_POST['message'] = str_replace('~','',htmlentities(trim($_POST['message'])));
    18. /*
    19. $_POST['name'] = convert_cyr_string ($_POST['name'], 'm', 'w');
    20. $_POST['e_mail']  = convert_cyr_string ($_POST['e_mail'], 'm', 'w');
    21. $_POST['message'] = convert_cyr_string ($_POST['message'], 'm', 'w');
    22. */
    23. $t1=chr(10);
    24. $t2=chr(13);
    25. $_POST['message'] = str_replace($t1,'<br>',$_POST['message']);
    26. $_POST['message'] = str_replace($t2,'<br>',$_POST['message']);
    27.  
    28. if (file_exists('./service/guestbook/guest_base.txt'))
    29. {
    30. $output = "\n\r";
    31. }
    32. $comment = fopen('./service/guestbook/guest_base.txt','a');
    33. $output .= $_POST['name']."~".$_POST['e_mail']."~".$_POST['message'];
    34. fputs($comment,$output);
    35. fclose($comment);
    36. $content = 'Сообщение добавлено.<meta http-equiv="refresh" content="3; url=index.php?style={style}&page={page}"><br>Если Ваш браузер не поддерживает переадресацию, намите <a href="index.php?style={style}&page={page}">здесь</a>';
    37. }
    38.  else
    39.  {
    40. $content = 'Не верный код подтверждения!!!';
    41.  }
    42. }
    43. unset($_SESSION['captcha_keystring']);
    44. }
    45. elseif ($_POST['sent'] == '1' && $_POST['bot'] != '')
    46. {
    47. $content = 'Ботам вход запрещен :)';
    48. }
    49. else
    50. {
    51. $content .= '
    52. <script language="JavaScript">
    53. function makevisible(id)
    54.    {
    55.        id.style.position = \'\';
    56.        id.style.visibility = \'\';
    57.    }
    58.  
    59. function makeinvisible(id)
    60.    {
    61.        id.style.position = \'absolute\';
    62.        id.style.visibility = \'hidden\';
    63.    }
    64.    
    65. function change(id,id_img)
    66.    {
    67.        if (id.style.position == \'absolute\') {
    68.            makevisible(id,id_img);
    69.        } else {
    70.            makeinvisible(id,id_img);
    71.        }
    72.    }
    73.  
    74. if (self.screen) {
    75. width = screen.width
    76. height = screen.height
    77. }
    78. else if (self.java) {
    79. var jkit = java.awt.Toolkit.getDefaultToolkit();
    80. var scrsize = jkit.getScreenSize();
    81. width = scrsize.width;
    82. height = scrsize.height;
    83. }else{
    84. width = height = \'100%\'
    85. }
    86. </script>
    87.  
    88. <p align="center"><a onclick=javascript:change(guest); href="javascript:void(0)">Добавить запись</a>
    89. <p>
    90. <DIV id="guest" style="VISIBILITY: hidden; POSITION: absolute">
    91. <form method="POST" acion="index.php?style={style}&amp;ln={ln}&amp;page=guestbook">
    92.    <table border="0">
    93.        <tr>
    94.            <td>Введите Ваше имя*:</td>
    95.            <td><input type="text" size="20" name="name"></td>
    96.        </tr>
    97.        <tr>
    98.            <td>Введите Ваш E-Mail:</td>
    99.            <td><input type="text" size="20" name="e_mail"></td>
    100.       </tr>
    101.       <tr>
    102.            <td>Введите Ваше сообщение*:</td>
    103.            <td><textarea name="message" rows="5" cols="20"></textarea></td>
    104.        </tr>
    105.         <tr>
    106.            <td>Введите код подтверждения:*<p align="center"><img src="./service/captcha/?<?php echo session_name()?>=<?php echo session_id()?>"></td>
    107.            <td><input type="text" name="keystring" size="15"></td>
    108.        </tr>
    109.  
    110.        <tr>
    111.            <td colspan="2">
    112.         <input type="hidden" size="1" name="bot" value="">
    113.         <input type="hidden" size="1" name="sent" value="1">
    114.         <input type="submit" name="sunmit" value="Отправить">
    115.         <input type="reset" name="reset" value="Сброс">
    116.         </td>
    117.        </tr>
    118.    </table>
    119. </form>
    120. </div>';
    121. $read_file = @file('./service/guestbook/guest_base.txt');
    122. //$read_file = iconv("MAC", "WINDOWS-1251", "$read_file");
    123. //$read_file = charset_x_win ($read_file);
    124. $temp = count($read_file)-1;
    125. for ($i = $temp; $i>=0; $i--)
    126. {
    127.  $element = explode('~',$read_file[$i]);
    128.  $element[2] = str_replace (':)','<img src="./service/guestbook/img/01.gif">', $element[2]);
    129.  $element[2] = str_replace (':-)','<img src="./service/guestbook/img/01.gif">', $element[2]);
    130.  $element[2] = str_replace (':(','<img src="./service/guestbook/img/02.gif">', $element[2]);
    131.  $element[2] = str_replace (':-(','<img src="./service/guestbook/img/02.gif">', $element[2]);
    132.  $element[2] = str_replace (';)','<img src="./service/guestbook/img/03.gif">', $element[2]);
    133.  $element[2] = str_replace (';-)','<img src="./service/guestbook/img/03.gif">', $element[2]);
    134.  $content .= '
    135. <table border="1" width="100%" cellspacing="1" style="border-collapse: collapse" bordercolor="#000000">
    136.     <tr>
    137.         <td align="center"><b><font size="4">'.$element[0].'</font></b></td>
    138.         <td align="center"><b><font size="4">'.$element[1].'</font></b></td>
    139.     </tr>
    140.     <tr>
    141.         <td colspan="2" align="justify">'.$element[2].'</td>
    142.     </tr>
    143. </table><hr>';
    144. }
    145. }
    146. ?>
    147.  
     
  10. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    Ti думаед чо MAC это не кодирофка а формат перевода строки в текстовых файлах.
     
  11. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Код (Text):
    1. $output = "\n\r";
    Сам придумал? =)
     
  12. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    +1. Правда я стер свой месаг после написания.
     
  13. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    А чем ненравится?? ))))

    как иначе сделать переход на новую строку?:)
     
  14. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Просто \n делай.
     
  15. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    ок... Но скодировкой-то что, все таки?
     
  16. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    Она не совпадает. Узнайте исходную в файле и перекодируйте в рабочую.

    Посоветовался с Ti. Ti кретикует афтора:
    какова куя афтор в iconv и иже с ними пихает массиф, когда нада строку? $read_file ведь массиф!
     
  17. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    Ti, афтор непонял Ti. Афтор просит Великого Ti научить глупаГо афтора как пральНО
     
  18. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    PHP:
    1. <?
    2. for ($i = $temp; $i>=0; $i--)
    3.  {
    4. $read_file[$i] = convert_cyr_string ($read_file[$i], 'm', 'w');
    5.  //$read_file[$i] = iconv("MAC", "WINDOWS-1251", $read_file[$i]);
    6.  //$read_file[$i] = charset_x_win ($read_file[$i]);
     
  19. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    эээм... Не катит... ибо $read_file оределяется ДО массива, а не в массиве...
     
  20. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    вернее это и есть массив :)))) который обрабатывается.. А ты его пытаешь обрботать в обработке :)))))))
     
  21. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    понял ничего
     
  22. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    в общем не работает так :(
     
  23. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    поиграца с кодировками.

    $read_file[$i] = convert_cyr_string ($read_file[$i], 'k', 'w');
    $read_file[$i] = convert_cyr_string ($read_file[$i], 'i', 'w');
    $read_file[$i] = convert_cyr_string ($read_file[$i], 'a', 'w');

    одна из строк может быть Вашей ;)