Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.01.2019, 19:10   #1
Ivan912
Пользователь
 
Регистрация: 26.01.2019
Сообщений: 32
По умолчанию Как синхронизировать пользователей?

Заходит первый пользователь ему присваивается id рандомный он записывается в базу данных,пользователь может нажимать на кнопку менять значение.Теперь когда заходит второй пользователь он нажимает изменить значение, он меняет своё значение допустим на 50 и меняет значение первого пользователя на 50.Но первому пользователю выходит строка ,что другой пользователь изменил его значение.На первом скриншоте показывается как должно выглядеть окно у первого пользователя.На остальных показано как всё выглядит сейчас.


Цитата:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<title></title>
</head>
<body>
<canvas id="canvas" width="700" height="300"></canvas> <!-- полотно где отображается код -->
<style>

#cmd4{
position: absolute; /* выводятся все изменённые значения */
top: 0px; /* вверх низ */
left: 0px;
}

</style>


<script type="text/javascript">






var id=Math.floor(Math.random() *100)+50; // id пользователя равняется рандомному целому числу




function funcBefore () { // функция пока загружается обычно это гифка загрузки
$("#information").text ("Ожидание данных...") // пока идёт выходить такое сообщение
}

function funcSuccess (data) { // ответ которые мы получили с php

}



$.ajax ({ // сам метод ajax
url: "chek.php", // куда отправлять данные
type: "POST", // метод отправки данных
data: ({number: id}), // отправляем id в базу данных
dataType: "html", // тип отправки сообщения
beforeSend: funcBefore, // пока документ загружается эта фун выполняется
success: function(data){
if(data=="00000"){


}
else {}


}
});

















var a=Math.floor(Math.random() *100)+50; // изменения которые производятся равны целому числу



function q9(){ // добавляет кнопки
btn5=document.createElement('BUTTON '); // создание кнопки
btn5.textContent='изменить значение'; // текст
btn5.id='cmd5'; // её id может пригодится
document.body.appendChild(btn5); // нужно чтобы добавилась кнопка
btn5.onclick=function(){ // функция когда кликаем по ней

q7(a); // отправка этой переменной в функцию
}
}

q9(); // вызов фун с кнопкой









btn4=document.createElement('getEle mentById'); // созадние шкалы
btn4.id='cmd4'; // id
document.body.appendChild(btn4); // нужно для добавления




var h=1000; // начальное значие
var z; // то что отнимаем

document.getElementById('cmd4').inn erHTML = 'по умолчанию ' + h; // вывод начального значения



function q7(z){ // отнимаем текущее здоровье
h=h+z; // прибавление переменной для изменения
elem=document.getElementById('cmd4' );
elem.innerHTML = '<div> id-пользователя' +" "+ id+" " +"изменил значение на "+" "+z +" "+ "текущее значение"+" "+ h+'</div>'+elem.innerHTML; //вывод всей информации
allAnswers=elem.getElementsByTagNam e('div');
if(allAnswers.length>6){// число - это лимит количества сообщений
elem.removeChild(allAnswers[20]); // когда больше 20 удаляем
}
}







</script>
</body>
</html>
Цитата:
<?php


$mysqli = new mysqli("localhost","root","","mybas e3");// подключение к базе данных
$mysqli->query ("SET NAMES 'utf8' "); // кодировка
$k=$_POST['number']; // получаем id

$mysqli->query ("INSERT INTO `qwe3` (`id`) VALUES ('$k')"); // записываем id пользователя в базу данных
$mysqli->close();// закрытие бд
?>
Изображения
Тип файла: png 3.png (29.8 Кб, 153 просмотров)
Тип файла: png 1.png (12.6 Кб, 124 просмотров)
Тип файла: png 2.png (12.1 Кб, 124 просмотров)
Тип файла: png 4.png (3.4 Кб, 58 просмотров)
Ivan912 вне форума Ответить с цитированием
Старый 27.01.2019, 09:35   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

ключевой вопрос - нахрена????
нахрена менять id пользователей??? это нонсенс
суть процесса непонятна зачем что-то менять одному пользователю у другого?
это неправильно
допустим все=же надо... введите доп параметр у каждого пользователя ...какой нить change_id

если вопрос в том - чтобы синхронизировать выдачу сообщений.. то есть при любом изменении в бд ВСЕМ пользователям(или по условию) выдавать сообщения - смотрите в сторону вебсокетов + сервер вебсокетов
ADSoft на форуме Ответить с цитированием
Старый 27.01.2019, 23:11   #3
Ivan912
Пользователь
 
Регистрация: 26.01.2019
Сообщений: 32
По умолчанию

у меня такая идея,записывать изменения в базу данных потом эти изменения выдавать другому пользователю
Ivan912 вне форума Ответить с цитированием
Старый 28.01.2019, 09:02   #4
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

идея не отвечает на вопрос - нахрена?

и вообще сформулируйте задачу - что вы хотите?
ADSoft на форуме Ответить с цитированием
Старый 28.01.2019, 10:05   #5
s88s
Форумчанин
 
Регистрация: 02.01.2014
Сообщений: 369
По умолчанию

Я согласен с ADSoft зачем менять id пользователя ... пользователь зарегился и получил он свой id и пускай он за ним будет а там уже можно сделать замену имени фамилии и других данных
"Я не волшебник, я только учусь"
s88s вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как синхронизировать свое приложение через аккаунт гугл Ooolya Помощь студентам 0 02.04.2014 20:17
Синхронизировать 2 БД Razyiller SQL, базы данных 13 06.04.2011 06:51
Как синхронизировать таблицу в excel с таблицей на сайте. ru3000 Microsoft Office Excel 4 21.07.2009 00:45
Как синхронизировать время с сервером времени Crazyman Работа с сетью в Delphi 1 02.07.2008 09:15
Как программно синхронизировать время с сервером времени ? Crazyman Общие вопросы Delphi 1 19.02.2008 01:37