Воскресенье, 05 Мая 2024, 01:26

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Форум игроделов » Движки для разработки игр и сложные системы разработки » Движки для браузерных игр » аккаунт ...
аккаунт ...
DizelistДата: Пятница, 21 Января 2011, 23:36 | Сообщение # 1
частый гость
Сейчас нет на сайте
подскажите как реализовать систему аккаунт,чтоб на акке можно было создавать несколько игроков! если можно примерчик какойнебуть... плиз
webstrict666Дата: Суббота, 22 Января 2011, 00:24 | Сообщение # 2
постоянный участник
Сейчас нет на сайте
Смотри есть таблица users (пользователи) ID Name Password
И допустим есть игра и в ней таблица чаров Char_id Char_uid Char_Name Char_race

Далее на сайте делаеш регистрацию если аккаут есть то заходим на сайт выбираем игру и выводим чаров smile
user => char сравнение идет ID == uid


http://GAMESKROL.RU
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально !
DizelistДата: Суббота, 22 Января 2011, 05:24 | Сообщение # 3
частый гость
Сейчас нет на сайте
не могли бы вы показать как при создании нового чара присваивать Char_id к users_id...
если не трудно покажи пример запроса к базе cry


Сообщение отредактировал Dizelist - Суббота, 22 Января 2011, 06:05
webstrict666Дата: Суббота, 22 Января 2011, 06:25 | Сообщение # 4
постоянный участник
Сейчас нет на сайте
У нас есть примерная база :
Code

CREATE TABLE IF NOT EXISTS `chars` (
   `uid` int(11) NOT NULL,
   `char_name` varchar(20) NOT NULL,
   `char_race` varchar(20) NOT NULL,
   `char_level` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

CREATE TABLE IF NOT EXISTS `users` (
   `id` int(11) NOT NULL,
   `name` varchar(12) NOT NULL,
   `password` varchar(20) NOT NULL,
   PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

Подразумеваем что человек совершил авторизацию в игру
Записываем его сессию_ид в переменную

Code

$ID=$_SESSION['id'];
//записываешь все данные из формы в переменную.
//Подключение к базе
if ($_post['create_char']) {

  $query = "INSERT INTO char (uid,char_name,char_race,char_level)
  VALUES('$ID','$name','$race','1')";
  $result = mysql_query($query);

}

Обрати внимания что в базе чаров uid не авто инкрумент. Туда записываем ID пользователя по таблице USER


http://GAMESKROL.RU
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально !
DizelistДата: Суббота, 22 Января 2011, 14:00 | Сообщение # 5
частый гость
Сейчас нет на сайте
и еще такой вопрос, допустим создано 3 чара как реалезовать выбор и вход в игру... wink
cougraAccДата: Суббота, 22 Января 2011, 14:19 | Сообщение # 6
Яркая личность GD
Сейчас нет на сайте
для начала вникни в алгоритм:
таблица users авторизация на сайте
далее если авторизовано тогда... запрос по uid в таблицу chars
если есть через while выводим все строки где присутствует uid не путать с id он тоже должен быть....
chars выглядет примерно так:
id - ид строки
uid - ид пользователя сайт, не чара!!!!
nickname - ник чара
после вывода организуем скрипт который будет записывать в сессию какой чар активен, и делаем проверку на существование сессии и какой чар там находится... и все:)
DizelistДата: Суббота, 22 Января 2011, 14:34 | Сообщение # 7
частый гость
Сейчас нет на сайте
cougraAcc, может для вас это и просто, если бы я это понимал то не просил бы помощи...
Ребята если вам не трудно,прошу пример даной операции!
cougraAccДата: Суббота, 22 Января 2011, 14:35 | Сообщение # 8
Яркая личность GD
Сейчас нет на сайте
Code

<?php
session_start();
echo <<<HERE
Авторизация:
<form method="post" action="index.php?action=login">
login: <input type="text" name="login"><br \>
passwd: <input type="password" name="passwd"><br \>
<input type="submit" value="login"
HERE;
if ($_GET['action'] == "login") { loginuser(); }  
elseif ($_GET['action'] == "logchar") { logchar(); }  
elseif ($_GET['action'] == "game") { game(); }  
function loginuser() {
$login=$_POST['login'];
$password=$_POST['passwd'];
$result = mysql_query("SELECT * FROM users WHERE login='$login'");
$myrow = mysql_fetch_array($result);
if (empty($myrow['password']))
{
#login or passwd error reading
}
else {
if ($myrow['password']==$password) {  
$myid=$myrow['id'];
#valid
$chars=mysql_query("SELECT * FROM `chars` WHERE uid='$myid'");

     while($row=mysql_fetch_array($chars))
     {
  $id=$row['id'];
  $nickname=$row['nickname'];
  echo "<a href='index.php?action=logchar&id=$id'>$nickname</a>";
}
}
}
}
function logchar() {
$cid=$_GET['id'];
$rrrow=mysql_fetch_array(mysql_query("SELECT * FROM `chars` WHERE id='$cid'"));
$nickname=$rrrow['nickname'];
$_SESSION['CHAR']=$nickname;
#redirecting index.php?action=game
}
function game() {
  if (empty($_SESSION['CHAR']) {
  #redirecting index.php
  }
   else {
   #game
   }
}

вот набросал, думаю идею поймешь:)
DizelistДата: Суббота, 22 Января 2011, 14:36 | Сообщение # 9
частый гость
Сейчас нет на сайте
cougraAcc, спасибо огромное,пойду разбираться)
cougraAccДата: Суббота, 22 Января 2011, 14:38 | Сообщение # 10
Яркая личность GD
Сейчас нет на сайте
за спасибо не отделаешься:) помог : +
DizelistДата: Суббота, 22 Января 2011, 14:42 | Сообщение # 11
частый гость
Сейчас нет на сайте
smile согласен,буду надеятся на дальнейшую вашу помощь!
cougraAccДата: Суббота, 22 Января 2011, 14:44 | Сообщение # 12
Яркая личность GD
Сейчас нет на сайте
Dizelist, не тебе сегодня повезло:))) я пересмотрел властелин колец... и тронутый храбростью войнов которые умирают за короля и королевство... решил помочь людям:)))
DizelistДата: Суббота, 22 Января 2011, 17:03 | Сообщение # 13
частый гость
Сейчас нет на сайте
webstrict666, не могли бы вы подсказать как зделать ограничение по чарам,допустим чтоб один юзер мог создать максимум 3 чара? dry
cougraAccДата: Суббота, 22 Января 2011, 17:24 | Сообщение # 14
Яркая личность GD
Сейчас нет на сайте
Ладно спросил не меня, значит мои советы не актуальны.. буду молчать:)
webstrict666Дата: Суббота, 22 Января 2011, 17:41 | Сообщение # 15
постоянный участник
Сейчас нет на сайте
ну сделай в таблицу авторизации еще 3 столбца Slot1 Slot2 Slot3 и записывай в них char_id (далее мути проверку )
а так мути как говорит cougraAcc я пишу по старинке (: алгоритмы не ахти


http://GAMESKROL.RU
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально !
DizelistДата: Суббота, 22 Января 2011, 17:41 | Сообщение # 16
частый гость
Сейчас нет на сайте
cougraAcc, ну почему? его пример на создание чара! поэтому я и подумал что ему не сложно будет дописать...
smile а к вашему примеру у меня еше будет вопросик) и от помощи я некогда не откажусь)
webstrict666Дата: Суббота, 22 Января 2011, 17:44 | Сообщение # 17
постоянный участник
Сейчас нет на сайте
просто почитай логику)

http://GAMESKROL.RU
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально !


Сообщение отредактировал webstrict666 - Суббота, 22 Января 2011, 17:45
DizelistДата: Суббота, 22 Января 2011, 17:44 | Сообщение # 18
частый гость
Сейчас нет на сайте
webstrict666, может для когото ваши примеры и не ахи,но для тех кто ток изучает пхп это золото))) а про сюл я вобше молчу wacko
webstrict666Дата: Суббота, 22 Января 2011, 17:48 | Сообщение # 19
постоянный участник
Сейчас нет на сайте
я очень жалею что не начал учить сначала ооп , советую тебе пройти какинить курсы по PHP ООП

http://GAMESKROL.RU
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально !
DizelistДата: Суббота, 22 Января 2011, 18:17 | Сообщение # 20
частый гость
Сейчас нет на сайте
что то я совсем запутался... cry может обясните на примере!
Форум игроделов » Движки для разработки игр и сложные системы разработки » Движки для браузерных игр » аккаунт ...
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг