| Урок по созданию браузерной игры в стиле покемонов. Bonus! | 
|  | 
| 
| JumpZ(noob) | Дата: Воскресенье, 25 Ноября 2012, 19:26 | Сообщение # 1 |  |   почетный гость Сейчас нет на сайте | И так вот и мне Step мой хороший друг, разрешил вас порадовать. В этом уроке мы научимся писать Тренер-карту с различными функциями, такими как просмотре онлайн игрока, где он находится, и напишем минимальную функцию друзья. И так приступим. 
 1. Так Добавляем в нашу базу таблицу Friends - это будет основа для будущей функции Друзья.
 
 Code  CREATE TABLE `friends` (
 `id` int(255) NOT NULL AUTO_INCREMENT, /* Индификатор*/
 `user_id` int(255) NOT NULL, /* Ид игрока который добавил друга*/
 `friend` int(255) NOT NULL,  /* Ид Друга Которому пришла заявка*/
 PRIMARY KEY (`id`)
 )
 
 2. Приступим к написанию Тренер-Карты, для начала напишем минимальный дизайн.
 - Создаем файл page.php (здесь будет код)
 - Создаем папку css (для будущих стилей)
 - Пишем Html code
 
 Quote  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5 Transitional//EN">
 <html>
 <head>
 <title>Тренера карта</title>
 <link HREF="/css/page_style.css" REL="Stylesheet" TYPE="text/css">
 </head>
 <body>
 
 </body>
 </html>
 
вот тело html страницы так..
 
 - Создаем файл стиля в папке /css/page_style.css
 - Пишем css код
 
 Code  body{
 background-color: #333; /*Цвет Фона*/
 font-size: 13px; /*Розмер Шрифта*/
 color: #00ff00; /*Цвет Текста*/
 }
 
ваш цвет фона может быть любой и также цвет текста.
 
 3. Приступим к написанию php кода
 И так для начала напишем запросы, пишем код php выше html кода
 
 Code <?php // Вся процедура работает на сессиях.
 //Именно в ней хранятся данные пользователя, пока он находится на сайте. Очень важно запустить их в самом начале странички!!!
 session_start();
 include('cone.php'); //Подключаем соединение с базой;
 if (isset($_GET['id'])) {$id =$_GET['id']; } //id "хозяина" странички
 else
 {
 echo "<script>alert('Вы зашил на страницу без параметра!'); location.href='page.php?id=1';</script>";} //если не указали id, то выдаем ошибку
 if (!preg_match("|^[\d]+$|", $id))
 {
 echo "<script>alert('Вы зашил на страницу без параметра!'); location.href='page.php?id=1';</script>";//если id не число, то выдаем ошибку
 }
 
 if (!empty($_SESSION['login']) and !empty($_SESSION['password']))
 {
 //Если есть логин и пасс в сесияг то проверяем их
 $login = $_SESSION['login'];
 $password = $_SESSION['password'];
 $Myrow = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE login='".$login."' AND password='".$password."'"));
 if (empty($Myrow['id']))
 {
 
 echo "<script>location.href='index.php';</script>";
 }
 }
 else {
 //Проверяем, зарегистрирован ли вошедший
 echo "<script>location.href='index.php';</script>"; }
 $Myrow2 = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE id='".$id."'"));
 if (empty($Myrow2['login'])) {echo "<script>alert('Пользователя не существует! Возможно он был удален.'); location.href='page.php?id=1';</script>";}
 
 $NickName = $Myrow2['login'];
 ?>
 
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5 Transitional//EN">
 <html>
 <head>
 <title>Тренера карта <?php echo $NickName; ?></title>
 <link HREF="/css/page_style.css" REL="Stylesheet" TYPE="text/css">
 </head>
 <body>
 <br />
 <center><b><font style="FONT-SIZE: 19px; FONT-FAMILY: Tahoma; text-align:justify; color: #FFF;">Тренер: <?php echo $Myrow2['login']; ?></font></b></center>
 <br />
 </body>
 </html>
 
 вот и немного написали мы тренер карту
 
 Данная тема будет обновляться, просто на данный момент я имею только 2 урока с которых не многое можно взять но всё же есть что есть.
 
 Skype: a-x-i-t-o
 
   
 
 Сообщение отредактировал JumpZ(noob) - Среда, 28 Ноября 2012, 19:07 |  |  |  |  | 
| 
| igrodel500 | Дата: Понедельник, 26 Ноября 2012, 11:46 | Сообщение # 2 |  |   участник Сейчас нет на сайте | Не знаю обновлял ли ты тему, но в коде 2 ошибки. Добавлено (26.11.2012, 11:46)---------------------------------------------
 P.S ошибки в основном у тебя в сессиях по край немере у меня не работало(на денвере).
 Я исправил
  . Рассказывать не буду так как уроки Step и JumpZ(noob)(ну у него тока бонусный урок).
 
 
 
   |  |  |  |  | 
| 
| JumpZ(noob) | Дата: Понедельник, 26 Ноября 2012, 14:49 | Сообщение # 3 |  |   почетный гость Сейчас нет на сайте | igrodel500, пожалуйста опиши и напиши что за ошибка и где ! 
 Skype: a-x-i-t-o
 
   |  |  |  |  | 
| 
| igrodel500 | Дата: Понедельник, 26 Ноября 2012, 14:58 | Сообщение # 4 |  |   участник Сейчас нет на сайте | JumpZ(noob), я же только что писал у тебя ошибка в session_start(); По край немере у меня на denver писал такое.
 Но потом исправил.
 Теперь тебе нужно исправить, а то новички от тебя не отстанут пока ты им не исправишь.
 
 
   |  |  |  |  | 
| 
| JumpZ(noob) | Дата: Понедельник, 26 Ноября 2012, 15:17 | Сообщение # 5 |  |   почетный гость Сейчас нет на сайте | igrodel500, что-то я не могу понять где ты там ошибку нашол 
 Skype: a-x-i-t-o
 
   |  |  |  |  | 
| 
| Step | Дата: Понедельник, 26 Ноября 2012, 20:22 | Сообщение # 6 |  |   почетный гость Сейчас нет на сайте | <?php - Вот это должно стоять нааа саааааааамой первой строке!! 
 Code <?php // Вся процедура работает на сессиях.
 //Именно в ней хранятся данные пользователя, пока он находится на сайте. Очень важно запустить их в самом начале странички!!!
 session_start();
 Вот как сдесь
 
 Добавлено (26.11.2012, 20:22)
 ---------------------------------------------
 JumpZ(noob), Это не у тебя ошибка а у юзеров которые ставят её на 2 или 3 и.т.п. строку
 
 
   
 
 Сообщение отредактировал Step - Понедельник, 26 Ноября 2012, 20:23 |  |  |  |  | 
| 
| JumpZ(noob) | Дата: Понедельник, 26 Ноября 2012, 20:27 | Сообщение # 7 |  |   почетный гость Сейчас нет на сайте | Step, спс что проверил ) 
 Skype: a-x-i-t-o
 
   |  |  |  |  | 
| 
| Step | Дата: Понедельник, 26 Ноября 2012, 20:36 | Сообщение # 8 |  |   почетный гость Сейчас нет на сайте | JumpZ(noob), Да незачто =) 
 
   |  |  |  |  | 
| 
| JumpZ(noob) | Дата: Понедельник, 26 Ноября 2012, 21:10 | Сообщение # 9 |  |   почетный гость Сейчас нет на сайте | Step,   
 Skype: a-x-i-t-o
 
   |  |  |  |  | 
| 
| PROstak | Дата: Вторник, 27 Ноября 2012, 00:12 | Сообщение # 10 |  |   частый гость Сейчас нет на сайте | У меня выдаёт вот такую ошибку:Fatal error: Call to undefined function first() in X:\home\pokegold\www\page.php on line 17; то есть ошибка вот здесь: Code $Myrow = first('SELECT * FROM users WHERE login="%s" AND password="%s" ',$login,Добавлено (27.11.2012, 00:12)---------------------------------------------
 Что делать?
  
 
   |  |  |  |  | 
| 
| JumpZ(noob) | Дата: Вторник, 27 Ноября 2012, 00:44 | Сообщение # 11 |  |   почетный гость Сейчас нет на сайте | PROstak, у тебя хоть точно так 
 Quote $Myrow = first('SELECT * FROM users WHERE login="%s" AND password="%s" ',$login,$password); if (empty($Myrow['id']))
?
 Добавлено (27.11.2012, 00:44)---------------------------------------------
 PROstak, попробуй так
 
 Quote  $Myrow = mysql_fetch_array(mysql_query('SELECT * FROM users WHERE login="%s" AND password="%s" ',$login,$password));
 Skype: a-x-i-t-o
 
   |  |  |  |  | 
|  | 
| 
| Talco | Дата: Вторник, 27 Ноября 2012, 20:18 | Сообщение # 13 |  |   почетный гость Сейчас нет на сайте | Quote (PROstak) Что делать? Искать где описывается функция first, и проверять подключается ли файл в котором она находится.
 
 xNova: Революция
 |  |  |  |  | 
| 
| PROstak | Дата: Среда, 28 Ноября 2012, 00:13 | Сообщение # 14 |  |   частый гость Сейчас нет на сайте | Quote (JumpZ(noob)) PROstak, попробуй так Quote
 $Myrow = mysql_fetch_array(mysql_query('SELECT * FROM users WHERE login="%s" AND password="%s" ',$login,$password));
 
 
Теперь просто каждый раз выкидывает назад на авторизацию...
 
 
   |  |  |  |  | 
| 
| Assasin | Дата: Среда, 28 Ноября 2012, 01:55 | Сообщение # 15 |  |   web-coder Сейчас нет на сайте | Quote (PROstak) Теперь просто каждый раз выкидывает назад на авторизацию... $Myrow = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE login='".$login."' AND password='".$password."'"));
 |  |  |  |  | 
| 
| PROstak | Дата: Среда, 28 Ноября 2012, 16:51 | Сообщение # 16 |  |   частый гость Сейчас нет на сайте | Блин теперь пишет "Пользователя не существует!Возможно он был удален. Вот полный код: 
 Code <?php session_start();
 include('cone.php'); //Подключаем соединение с базой;
 if (isset($_GET['id'])) {$id =$_GET['id']; } //id "хозяина" странички
 else
 {
 echo "<script>alert('Вы зашил на страницу без параметра!'); location.href='page.php?id=1';</script>";} //если не указали id, то выдаем ошибку
 if (!preg_match("|^[\d]+$|", $id))
 {
 echo "<script>alert('Вы зашил на страницу без параметра!'); location.href='page.php?id=1';</script>";//если id не число, то выдаем ошибку
 }
 
 if (!empty($_SESSION['login']) and !empty($_SESSION['password']))
 {
 $login = $_SESSION['login'];
 $password = $_SESSION['password'];
 $Myrow = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE login='".$login."' AND password='".$password."'"));
 if (empty($Myrow['id']))
 {
 
 echo "<script>location.href='index.php';</script>";
 }
 }
 else {
 echo "<script>location.href='index.php';</script>"; }
 $Myrow2 = mysql_fetch_array(mysql_query('SELECT * FROM users WHERE id=%d',$id));
 if (empty($Myrow2['login'])) {echo "<script>alert('Пользователя не существует! Возможно он был удален.'); location.href='page.php?id=1';</script>";}
 
 $NickName = $Myrow2['login'];
 ?>
 
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5 Transitional//EN">
 <html>
 <head>
 <title>Тренер карта <?php echo $NickName; ?></title>
 <link HREF="/css/page_style.css" REL="Stylesheet" TYPE="text/css">
 </head>
 <body>
 <center><b><font style="FONT-SIZE: 19px; FONT-FAMILY: Tahoma; text-align:justify; color: #FFF;">Тренер: <?php echo $myrow3['login']; ?></font></b></center>
 <br />
 </body>
 </html>
 
Добавлено (28.11.2012, 16:51)---------------------------------------------
 Где ошибка? Пользователь существует...
 
 
   |  |  |  |  | 
| 
| JumpZ(noob) | Дата: Среда, 28 Ноября 2012, 16:55 | Сообщение # 17 |  |   почетный гость Сейчас нет на сайте | PROstak, пробувал так http://сайт/page.php?id=1 
 Skype: a-x-i-t-o
 
   |  |  |  |  | 
| 
| PROstak | Дата: Среда, 28 Ноября 2012, 16:59 | Сообщение # 18 |  |   частый гость Сейчас нет на сайте | JumpZ(noob), Пробовал, не помогает. 
 
   |  |  |  |  | 
| 
| JumpZ(noob) | Дата: Среда, 28 Ноября 2012, 17:02 | Сообщение # 19 |  |   почетный гость Сейчас нет на сайте | замени это: 
 Code $Myrow2 = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE id=%d',$id)); 
на это:
 
 Code $Myrow2 = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE id='".$id."'"));
 Skype: a-x-i-t-o
 
   |  |  |  |  | 
| 
| PROstak | Дата: Среда, 28 Ноября 2012, 17:06 | Сообщение # 20 |  |   частый гость Сейчас нет на сайте | JumpZ(noob), Всё спс работает) Правда единственная надпись "Тренер" Вверху но всё же) 
 
   |  |  |  |  |