Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / -1 / 0
Регистрация: 08.03.2017
Сообщений: 159

Что не так с чатом?

31.03.2017, 19:24. Показов 683. Ответов 1
Метки html (Все метки)

Студворк — интернет-сервис помощи студентам
Почему у меня не отображаются и не отправляются message?????
Chat.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<!DOCTYPE html>
<html lang="en">
<head>
<title>Чат</title>
<meta http-equiv="Content-type" content="text/html"; charset="utf-8" />
<script type="text/javascript">
var Array = new Array();
     function getXmlHttp(){
         var xmlhttp;
         try{
            xmlhttp = new ActiveXObject ("Msxm12.XMLHTTP");
         } echo (e){
            try{
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP")
            } echo (E){
                xmlhttp = false;
            }
         }
         if (!xmlhttp && typeof XMLHttpRequest != 'undefined'){
            xmlhttp = new XMLHttpRequest();
         }
         return xmlhttp;
     }
 
     function chat() {
        var xmlhttp = getXmlHttp();
        xmlhttp.open("POST", "http://sirexelite.ru/chat/functions.php", true);
        xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        xmlhttp.send("updat=1");
        xmlhttp.onreadstatechange = function() {
            id (xmlhttp.readyState == 4) {
                if (xmlhttp.status == 200) {
                    var response = xmlhttp.responseText;
                    response = JSON.parse(response);
                    if (array.length == response.length) retirn;
                    var start = array.length;
                    array = response;
                    var message = document.getElementById("chat").innerHTML;
                    for (i = start; i < array.length; i++){
                        message = message + "<p><b>" + array[i].name + ":</b>" = array[i].message + "</p>";
                    }
                    document.getElementById("chat").innerHTML = message;
                }
            }
        }
        setTimeout("chat()", 1000);
     }
 
     function addMessage() {
        var name = document.getElementById("name").value;
        var message = document.getElementById("message").value;
        var xmlhttp = getXmlHttp();
        xmlhttp.open("POST", "http://sirexelite.ru/chat/functions.php", true);
        xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        xmlhttp.send("name=" + encodeURIComponent (name) + "&message=" + encodeURIComponent(message));
 
     }
</script>
<style type="text/css">
h2 {
    text-align: center;
 
 }
 #chat, table {
    margin: 0 auto;
 }
 #chat {
   border:3px solid silver;
   height: 300px;
   margin: 0 auto;
   overflow-x: none;
   overflow-y: auto;
   width 200px; 
 }
 #textt{
    margin: 0;
 }
 </style>
</head>
<body onload="chat()">
    <h2>Чат</h2>
    <div id="chat"></div>
    <br />
    <table>
        <tr>
           <td>Имя:</td>
             <td>
                  <input type="text" id="name" />
             </td>
           </tr>
        <tr>
           <td>Сообщение:</td>
             <td>
                  <input type="text" id="message" />
             </td>
        </tr>
        <tr>
         <td colspan="2">
           <input type="button" value="Отправить" onclick="addMessage()" />
         </td>
         </tr>
    </table>
</body>
</html>
functions.php

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
  if(isset($_POST["name"])) {
        $name = $_POST["name"];
        $message = $_POST["message"];
        file_put_contents("http://sirexelite.ru/chat/message.txt", file_get_contents("http://sirexelite.ru/chat/message.txt")."\n$name;$message");
      }
  elseif (isset($_POST["update"])) {
    $string = file_get_contents("message.txt");
    $array = explode("\n", $string);
    $result = array();
 for ($i = 0; $i < count($array); $i++) {
    $temp = explode(";", $array[$i]);
    $result[$i]["name"] = $temp[0];
    $result[$i]["message"] = $temp[1];
  }
  echo json_encode($result);
}
?>
В message.txt можете вписать что угодно. Например: Вася:Привет! (Через ";" без пробелов)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
31.03.2017, 19:24
Ответы с готовыми решениями:

Что не так с кодом? ( пытаюсь понять, что не так? )
Есть исходный код. Hook, работает хорошо, но есть минус огромный - перестаёт писать в лог, при открытии программы\игры Фуллскрином. т.е...

И так, что не так с моим запросом на добавление записи в таблицу?
$sql = 'INSERT INTO product ' . '(name, code, price, category_id, brand, availability,' . 'description,...

Как сделать так что я мог умножать не на два числа а на 3,4,5 и так далее?
Вот код: #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main(){ float a,c; char b; skip: ...

1
321 / 189 / 78
Регистрация: 04.10.2016
Сообщений: 809
01.04.2017, 17:39
клиентская сторона: куча ошибок в js коде. на скорую руку накидал простенький вариант клиентской части.

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<!DOCTYPE html>
<html>
<head>
<title>Чат</title>
<meta http-equiv="Content-type" content="text/html"; charset="utf-8" />
<script type="text/javascript">
var chat = {
    post: function(l, q, sync){
        var result = "";
        var xhr = window.XDomainRequest || window.XMLHttpRequest;
        var xhr = new xhr();
        
        if(!xhr){
            xhr = new ActiveXObject("Microsoft.XMLHTTP");
        }
        
        xhr.open('POST', l, sync);
        xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        
        xhr.onreadystatechange = function() {
            if (this.readyState == 4 && this.status == 200) {
                result = this.responseText;
            }
        }
        xhr.send(q);
        
        //для проверки поступающих данных
        console.log("[chat]: "+result);
        return result;      
    },
    
    addMessage: function(){
                // http://192.168.1.48/c.php - заменяешь на свой
        var result = chat.post("http://192.168.1.48/c.php", "name=" + encodeURIComponent(document.getElementById("name").value) + "&message=" + encodeURIComponent(document.getElementById("message").value), false);
        document.getElementById("chat").innerHTML = result;
    }
};
</script>
<style type="text/css">
h2 {
    text-align: center;
 
 }
 #chat, table {
    margin: 0 auto;
 }
 #chat {
   border:3px solid silver;
   height: 300px;
   margin: 0 auto;
   overflow-x: none;
   overflow-y: auto;
   width 200px; 
 }
 #textt{
    margin: 0;
 }
 </style>
</head>
<body>
    <h2>Чат</h2>
    <div id="chat"></div>
    <br />
    <table>
        <tr>
           <td>Имя:</td>
             <td>
                  <input type="text" id="name" />
             </td>
           </tr>
        <tr>
           <td>Сообщение:</td>
             <td>
                  <input type="text" id="message" />
             </td>
        </tr>
        <tr>
         <td colspan="2">
           <input type="button" value="Отправить" onclick="chat.addMessage();" />
         </td>
         </tr>
    </table>
</body>
</html>
имхо: твой php код вообще страшно смотреть. его также переделай и учитывай момент касательно безопасности.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.04.2017, 17:39
Помогаю со студенческими работами здесь

сегодня так можно сказать праздник так что...
простите меня за все пожалуйста!!!

Что в коде ни так? while не работает так, как ожидаю
Написанный код, как я думаю, должен выдавать цифры от 0 до 1000, столбиком. Но выдает начиная от 702 до 1000. Что ни так понимаю, где...

Подскажите с чатом.
Есть исходники клиента и сервера. Помогите, пожалуйста, запустить их на компе, пошагово. Пытаюсь сделать это на еклипсе. public...

Проблемы с чатом
Есть чат, Клиент и Сервер. Клиент отправляет сообщение серверу. помогите что надо написать что бы сервер уже это сообщение...

Проблема с чатом!
Привет всем, извините за может быть глупый вопрос, но я только недавно начал учить c# Вот код кнопки отправки: byte buffer =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru