Важная информация
Показано с 1 по 4 из 4

Тема: не работает ЧАТ

  1. #1 не работает ЧАТ 
    Новичок
    Регистрация
    10.10.2016
    Сообщений
    1
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз(а) в 0 сообщениях
    [Ссылки могут видеть только зарегистрированные пользователи. ] вот ссылка на сам чат
    почему не работает? где ошибка???

    PHP Code:
    1. function.php
    2. <?php
    3.    if([Ссылки могут видеть только зарегистрированные пользователи. ]($_POST["name"])) {
    4.    $name = $_POST["name"];
    5.    $message = $_POST["message"];
    6.    echo $name;
    7.    [Ссылки могут видеть только зарегистрированные пользователи. ]("messages.txt", [Ссылки могут видеть только зарегистрированные пользователи. ]("messages.txt")."\n$name;$message");  
    8.    }
    9.     elseif([Ссылки могут видеть только зарегистрированные пользователи. ]($_POST["update"])) {
    10. $string = [Ссылки могут видеть только зарегистрированные пользователи. ]("messages.txt");
    11. $array = [Ссылки могут видеть только зарегистрированные пользователи. ]("\n", $string);
    12. $result = [Ссылки могут видеть только зарегистрированные пользователи. ]();
    13. for ($i = 0; $i < [Ссылки могут видеть только зарегистрированные пользователи. ]($array); $i++) {
    14. $temp = [Ссылки могут видеть только зарегистрированные пользователи. ](";", $array[$i]);
    15. $result[$i]["name"] = $temp [0];
    16. $result[$i]["message"] = $temp [1];
    17. }
    18. echo [Ссылки могут видеть только зарегистрированные пользователи. ]($result);
    19. }
    20.  
    21. index.php
    22. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    23. <html xmlns="http://www.w3.org/1999/xhtml">
    24. <head>
    25. <title>Форум</title>
    26. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    27. <style>
    28.              h2{
    29.    text-align:center;
    30.   
    31.    }
    32.              #chat, table {
    33. margin: 0 auto;
    34.  
    35. }
    36. #chat{
    37. border: 3px solid #0ff;
    38. height: 400px;
    39. margin: 0 auto;
    40. overflow-x: none;
    41. overflow-y: auto;
    42. width: 700px;
    43. }
    44. p{
    45. margin: 0;
    46. }
    47.  
    48. </style>
    49.  
    50.         <script type="text/javascript">
    51. var [Ссылки могут видеть только зарегистрированные пользователи. ] = new Array();
    52.      function getXmlHttp() {
    53. var xmlhttp;
    54. try {
    55. xmlhttp = new ActiveXObject ("Msxml2.XMLHTTP");
    56.  
    57. }catch (e) {
    58. try{
    59. xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    60. } catch (E) {
    61. xmlhttp = false;
    62. }
    63. }
    64. if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    65. xmlhttp = new XMLHttpRequest();
    66. }
    67. return xmlhttp;
    68. }
    69.  
    70.      function chat() {
    71. var xmlhttp = getXmlHttp();
    72. xmlhttp.open("POST", "functions.php", true);
    73. xmlhttp.setRequestHeader("Content-Type", "appliacation/x-www-form-urlencoded");
    74. xmlhttp.send("update=1");
    75. xmlhttp.onreadystatechange = function() {
    76. if (xmlhttp.readyState == 4) {
    77. if (xmlhttp.status == 200) {
    78. var response = xmlhttp.responseText;
    79. response = JSON.parse(response);
    80. if ([Ссылки могут видеть только зарегистрированные пользователи. ].length == response.length) return;
    81. var start = [Ссылки могут видеть только зарегистрированные пользователи. ].length;
    82. [Ссылки могут видеть только зарегистрированные пользователи. ] = response;
    83. var messages = document.getElementByID("chat").innerHTML;
    84. for (i = start; i < [Ссылки могут видеть только зарегистрированные пользователи. ].length; i++) {
    85. messages = messages + "<p><b>" + [Ссылки могут видеть только зарегистрированные пользователи. ][i].name + ":</b>" + [Ссылки могут видеть только зарегистрированные пользователи. ][i].message +"</p>";
    86. }
    87. document.getElementByID("chat").innerHTML = messages;
    88. document.getElementByID("chat").scrollTop = 1000000;
    89.  
    90. }
    91. }
    92. }
    93. setTimeout("chat()", 1000);
    94. }
    95. function addMessage() {
    96. var name = document.getElementByID("name").value;
    97. var message = document.getElementByID("message").value;
    98. var xmlhttp = getXmlHttp();
    99. xmlhttp.open("POST", "functions.php", true);
    100. xmlhttp.setRequestHeader("Content-Type", "appliacation/x-www-form-urlencoded");
    101. xmlhttp.send("name=" + encodeURIComponent(name) + "&message=" + encodeURIComponent(message));
    102. }
    103.   </script>
    104. </head>
    105. <body onload="chat()">
    106.        <h2>Чат</h2>
    107.        <div id="chat">
    108.             
    109.    </div>
    110.    <br />
    111.    <table>
    112.         <tr>
    113.      <td>Имя:</td>
    114.   <td>
    115.       <input type="text" id="name" />
    116. </td>
    117. </tr>
    118. <tr>
    119.      <td>Сообщение:</td>
    120.   <td>
    121.       <input type="text" id="message" />
    122. </td>
    123. </tr>
    124. <tr>
    125.          <td colspan="2">
    126.     <input type="button" value="Отправть" onclick="addMessage()" />
    127. </td>
    128. </tr>
    129. </table>
    130. </body>
    131. </html>
    Ответить с цитированием  
     

  2. #2  
    Администратор Аватар для rovico
    Регистрация
    17.04.2014
    Адрес
    Ярославль
    Сообщений
    245
    Сказал(а) спасибо
    17
    Поблагодарили 287 раз(а) в 162 сообщениях
    Записей в блоге
    2
    Во-первых у вас ошибка в JS - пользуйтесь дебаггером (F12), смотрите скриншот: https://snag.gy/i95eZk.jpg (Метод document.getElementByID не существует в языке JavaScript у объекта document. См. документацию http://javascript.ru/tutorial/dom/search)
    Во-вторых ваш код на 18 строке в php файле тоже ошибочен. Производится попытка превратить в JSON некоторый результат парсинга текстового файла. С самого начала файл пустой и результат тоже пуст. json_encode не форматирует пустой результат и вам надо делать проверку: если результат пустой - возвращать скобки {}
    Ответить с цитированием  
     

  3. Пользователь сказал cпасибо:

    >Quiet Snow< (12.10.2016)

  4. #3  
    Администратор Аватар для rovico
    Регистрация
    17.04.2014
    Адрес
    Ярославль
    Сообщений
    245
    Сказал(а) спасибо
    17
    Поблагодарили 287 раз(а) в 162 сообщениях
    Записей в блоге
    2
    Ещё один совет: Можно создать long-poll (long held), чтобы не отправлять огромное количество JSON запросов на сервер и моментально получать ответы, независимо от интервала JS. Я тут ссылку кидал http://iforum.pro/obshie-voprosy-pro...stem-6085.html
    Ответить с цитированием  
     

  5. Пользователь сказал cпасибо:

    >Quiet Snow< (12.10.2016)

  6. #4  
    Администратор Аватар для rovico
    Регистрация
    17.04.2014
    Адрес
    Ярославль
    Сообщений
    245
    Сказал(а) спасибо
    17
    Поблагодарили 287 раз(а) в 162 сообщениях
    Записей в блоге
    2
    Плюс, вместо текстового файла можно использовать SQLite или MongoDb
    Ответить с цитированием  
     

  7. Пользователь сказал cпасибо:

    >Quiet Snow< (12.10.2016)

Информация о теме
Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. не работает код
    от Діма Стасюк в разделе PHP
    Ответов: 3
    Последнее сообщение: 04.03.2016, 16:04
  2. Не работает тег SQL
    от The trick в разделе Архив
    Ответов: 6
    Последнее сообщение: 24.12.2014, 18:45
  3. не работает поиск по сайту
    от autoscan в разделе HTML, CSS
    Ответов: 0
    Последнее сообщение: 10.12.2013, 12:20
  4. Программа не верно работает
    от Smoke Veka в разделе C/C++
    Ответов: 0
    Последнее сообщение: 23.03.2013, 14:03
  5. Контент для людей, работает ли он для SEO?
    от Sirius в разделе Продвижение сайта
    Ответов: 4
    Последнее сообщение: 06.10.2012, 15:34
Ваши права
  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •