Четверг, 25 Апреля 2024, 16:22

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
Форум игроделов » Записи участника » cougraAcc [1424]
Результаты поиска
cougraAccДата: Воскресенье, 14 Февраля 2010, 20:03 | Сообщение # 1381 | Тема: 3й урок PHP
Яркая личность GD
Сейчас нет на сайте
logof, Ну смотри получается я просто с каждым уроком дополняю написаное....
cougraAccДата: Воскресенье, 14 Февраля 2010, 14:03 | Сообщение # 1382 | Тема: 2й урок php
Яркая личность GD
Сейчас нет на сайте
logof, Вобще то по почти на всех серваках будь то денвер, топсервер и т.д. она подключена

Добавлено (14.02.2010, 14:03)
---------------------------------------------
logof, Или советуешь дописать в уроке что нужно скачать php_gd2.dll потом закинуть его в windows потом открыть php.ini убрать комментарий, перезагрузить апач? и все это ради капчи..... это еще загруженее будет чем написанное мною выше...

cougraAccДата: Воскресенье, 14 Февраля 2010, 13:56 | Сообщение # 1383 | Тема: 3й урок PHP
Яркая личность GD
Сейчас нет на сайте
logof, непонял

Добавлено (14.02.2010, 13:56)
---------------------------------------------
logof, Так же... методом втыка.....- с учетом что даже таких тем я не видел... брал книгу, брал блокнот и пробовал.....

cougraAccДата: Воскресенье, 14 Февраля 2010, 12:50 | Сообщение # 1384 | Тема: Первый урок php переменые и echo
Яркая личность GD
Сейчас нет на сайте
Dinoiera, У echo() скорость работы быстрее... так раз и все))) все программисты которые используют print() идите от сюда
cougraAccДата: Воскресенье, 14 Февраля 2010, 12:44 | Сообщение # 1385 | Тема: Первый урок php переменые и echo
Яркая личность GD
Сейчас нет на сайте
Dinoiera, эм... это мне известно.... я просто не в тему попросил автора написать о print(), вот например тут:
<?php
echo "привет это мой первый урок по пхп";
?>
можно было написать так:
<?php
print <<<HERE
привет это мой первый урок по пхп
HERE;
?>
И это было бы не ошибкой ведь выводится просто один текст
cougraAccДата: Воскресенье, 14 Февраля 2010, 12:38 | Сообщение # 1386 | Тема: 2й урок php
Яркая личность GD
Сейчас нет на сайте
Dinoiera, поправил....
cougraAccДата: Воскресенье, 14 Февраля 2010, 12:37 | Сообщение # 1387 | Тема: Создадим Браузерную игру? Жанра: ММОRPG
Яркая личность GD
Сейчас нет на сайте
Dinoiera, А в чем суть то того как расшифровывается???

Добавлено (14.02.2010, 12:37)
---------------------------------------------
Dinoiera, а как MMO расшифровывается??

cougraAccДата: Воскресенье, 14 Февраля 2010, 12:32 | Сообщение # 1388 | Тема: 2й урок php
Яркая личность GD
Сейчас нет на сайте
Dinoiera, +)
cougraAccДата: Воскресенье, 14 Февраля 2010, 12:11 | Сообщение # 1389 | Тема: Первый урок php переменые и echo
Яркая личность GD
Сейчас нет на сайте
Dinoiera, блин чет я немного непонял пост...)) да print() эт вывод также как echo() но они различаются между собой
cougraAccДата: Суббота, 13 Февраля 2010, 19:43 | Сообщение # 1390 | Тема: 3й урок PHP
Яркая личность GD
Сейчас нет на сайте
nilrem, неповзволяет....

Добавлено (13.02.2010, 19:36)
---------------------------------------------
Вот собрана из всех 3х уроков, точнее уроки из неё сделаны, по ходу выкладывания уроков буду дополнять архив скачать
пароль gcup.ru

Добавлено (13.02.2010, 19:43)
---------------------------------------------
nilrem, так пойдет?

Сообщение отредактировал cougraAcc - Суббота, 13 Февраля 2010, 19:41
cougraAccДата: Суббота, 13 Февраля 2010, 17:30 | Сообщение # 1391 | Тема: 3й урок PHP
Яркая личность GD
Сейчас нет на сайте
ПрофЭссор, biggrin Завтра 4й урок
cougraAccДата: Суббота, 13 Февраля 2010, 17:26 | Сообщение # 1392 | Тема: 3й урок PHP
Яркая личность GD
Сейчас нет на сайте
Вот мой 3й урок Здесь мы рассмотрим вывод новостей... ну и может быть комментарии если хватит терпения написать:))
И так, у нас есть файл index.php
Сделаем вывод новостей и для зарегистрированных и для незарегистрированных пользователей

Создаем файл news.php
Там пишем

Code

<?
include("connect.php");

$query = mysql_query("SELECT * FROM news");

while($row = mysql_fetch_array($query))
{
$id = $row["id"];
$title = $row["title"];
$text = $row["text"];
$autor = $row["autor"];
print <<<HERE
<hr>
<a href="post.php?id=$id">
<h1>$title</h1>
</a>
Название материала $title<br>Текст:<br> $text<br> Автор: $autor
<hr>
HERE;
}
?>

Сохраняем(ток обязательно), закрываем
теперь создаем таблицу в нашей базе
Code

CREATE TABLE `news` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(15) NOT NULL default '',
`text` text(255) NOT NULL default '',
`autor` varchar(15) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=3 ;

м.... Создаем файл который будет отвечать за вывод одной новости, а в последующем и комментариев
Назовем его post.php
Code

<?
include ("connect.php");

if (isset($_GET["id"])) {$id = $_GET["id"];}

$query = mysql_query ("SELECT * FROM news WHERE id='$id'");
$row = mysql_fetch_array ($query);
$id = $row["id"];
$title = $row["title"];
$text = $row["text"];
$autor = $row["autor"];
print <<<HERE
<hr>
<a href="post.php?id=$id">
<h1>$title</h1>
</a>
Название материала $title<br>Текст:<br> $text<br> Автор: $autor
<hr>
HERE;
?>

Теперь в index.php вписываем
под куском
Привет, $login ты авторизован <a href='index.php?act=logout'>Выход</a>
";

// работает)) знач не надо регится
}
эту строку:
include("news.php");

Теперь делаем возможность добавлять новости
Создаем addnews.php
пишем

Code

<?php
session_start();
include("connect.php");
$login = $_SESSION['login'];

print "
<form action='add.php' method='post'>
Имя автора:<br>
<input name='autor' type='text' size='15' maxlength='15'><br>
Название статьи:<br>
<input name='title' type='text' size='15' maxlength='15'><br>
Текст новости:<br>
<textarea cols='80' rows='10' name='text'></textarea><br>
<input type=submit value='Добавить'>
</form>
";

?>

Создаем add.php

Вот и все))) 3й урок подошел к концу

Знач коменты в 4м уроке

Сообщение отредактировал cougraAcc - Суббота, 13 Февраля 2010, 19:43
cougraAccДата: Суббота, 13 Февраля 2010, 15:26 | Сообщение # 1393 | Тема: 2й урок php
Яркая личность GD
Сейчас нет на сайте
Мой 2й урок, пусть нубы возмущаются сколько хотят, пишу я все сам)))
И так в этом уроке использование капчи, завершение сессии, загрузка аватара, поиск пользователя по логину...
Начнем с использования капчи
Создадим captcha.php
Code

<?php
/*
Simple captcha
      @author: Failure
      @version: 1.0 beta
      @date: 08.01.2010
*/
#Сразу задаем хедеры для картинки
header('Content-Type: image/png');
#Создаем сессию
session_start();
#Создаем изображение шириной 200 и высотой 40
$im  = imagecreatetruecolor(200, 40);
#Меняем бекграунд (задается в формате RGB) R=25, G=25, B=25
$bgc = imagecolorallocate($im, 25, 25, 25);
#Применяем бекграунд на картинку, думаю с названия и так ясно как
imagefilledrectangle($im, 0, 0, 200, 40, $bgc);
#Сама картинка создана
#осталось запихать туда циферки, и записать их в сессию

#переменная i у нас играет роль сдвига чисел по оси Х
for($i=5;$i<200;$i=$i+20) {     
# генерируем случайное число от 0 до 9
$tmp = mt_rand(0, 9);     
#Дописываем к концу переменной сесии это число
$_SESSION['key'] .= $tmp;     
#Задаем случайный цвет цифры, опять таки в RGB, что бы он не слился с цветом фона
#минимальное его значение может быть 15, максимальное 255
$tc  = imagecolorallocate($im, mt_rand(15, 255), mt_rand(15, 255), mt_rand(15, 255));
#теперь когда всё готово, осталось записать это число
#размер шрифта не должен быть одинаковым, по этому сделали его рандомным, либо 5 #либо 6, $i это X, по игрику будет рандомное число от 0 до 25, не до 40 что бы цифра не #сползла вниз и её было хорошо видно
imagestring($im, mt_rand(5, 6), $i, mt_rand(0, 25), $tmp, $tc);
}
#Выводим картинку
imagepng($im);
imagedestroy($im);
?>     

Все сохраняем.... и закрываем
Теперь идем в файл reg.php
И дописываем
Под строкой:
Code

<p>
Ваш пароль:<br>
<input name="password" type="password" size="15" maxlength="15">
</p>

Этот код
Code

<img src="captcha.php"><br>
<input type="text" name="captcha">

Теперь в самом низу допишем
Code

<?php
unset($_SESSION['key']);
?>

Делаем проверку на правильность:

под строкой

Code

if (isset($_POST['password'])) { $password=$_POST['password']; if ($password =='') { unset($password);} }

пишем
Code

if($_REQUEST[session_name()]) session_start();
if(isset($_POST['captcha'])) {
if($_POST['captcha'] == $_SESSION['key'])

внизу
под строкой
Code

echo "Ошибка! регистрация не прошла";

должно быть так:
Code

}
}
else print "Капча введена не верно";
?>

------
Вот вроде бы с капчей все:)

Теперь по порядку завершение сессии
Идем в файл index.php
Ищем кусок кода:

Code

print <<<HERE
Привет, ".$_SESSION['login']." ты авторизован
HERE;

--------
И дописываем после слова авторизован <a href="index.php?act=logout>Выход</a>"
Теперь ниже этого куска кода
Code

print <<<HERE
Привет, ".$_SESSION['login']." ты авторизован
HERE;
// работает)) знач не надо регится
}

Пишем
Code

if ($act==logout);
{
include ("exit.php");
}

Создадим файл exit.php и впишем в него:
Code

<?
session_start();
session_destroy();
Header("Location: index.php");
?>

Все выход настроен, могут быть ошибки, пишите исправлю
Теперь загрузка аватара
Для начала в корне сайта создадим папку upload, если сайт находится на сервере выставим права 755
Теперь открываем reg.php
ищем этот фрагмент:
Code

<tr>
<td><img src="rgd.php" border="0" alt="Введите этот защитный код"></td>
<td><input type="text" name="securityCode" title="Введите код, который изображен на картинке"></td>
</tr>

И под ним пишем
Code

<td colspan="2">Загрузите ваш аватар: <font color="#FF0000">*</font> </td>

<input type="file" name="filename"><br>
<input type="submit" value="Загрузить"><br>

Теперь открываем файл reg2.php
Ищем там

Code

include ("connect.php");

Ниже прописываем:
Code

if($_FILES["filename"]["size"] > 1024*3*1024)
{
echo ("Размер файла превышает три мегабайта");
exit;
}
if(copy($_FILES["filename"]["tmp_name"],
"upload".$_FILES["filename"]["name"]))
{
echo("Файл успешно загружен <br>");
echo("Характеристики файла: <br>");
echo("Имя файла: ");
echo($_FILES["filename"]["name"]);
echo("<br>Размер файла: ");
echo($_FILES["filename"]["size"]);
echo("<br>Каталог для загрузки: ");
echo($_FILES["filename"]["tmp_name"]);
echo("<br>Тип файла: ");
echo($_FILES["filename"]["type"]);
} else {
echo("Ошибка загрузки файла");
}

$ava = $_FILES["filename"];

потом ищем строчку:
Code

$result2 = mysql_query ("INSERT INTO users (login,password) VALUES('$login','$password')");

И меняем её на:
Code

$result2 = mysql_query ("INSERT INTO users (login,password,ava) VALUES('$login','$password','$ava')");

Тут все.....
Теперь в базе данных в таблице users создадим строку ava
И готово))

Теперь поиск пользователя по нику
Для начала создадим файл profiles.php
И пишем

Code

<form action="info.php">
Введите логин: <input type=text name="login"><br>
<input type=submit value="найти">

Не стал усложнять и делать все в одном скрипте, поэтому создадим info.php
И пишем:
Code

<?php
$login = $_GET['login'];
include ("connect.php");
$result = mysql_query("SELECT id FROM users WHERE login='$login'",$db);
$myrow = mysql_fetch_array($result);
if (!empty($myrow['id'])) {
print <<<HERE
$login
<img src="upload/$ava">
HERE;
}
?>

Примерно так, будут ошибки, пишите, не проверял, помогу исправить и исправлю сразу урок))
Вот и все урок подготовил cougraAcc, обо всех ошибках, недоточетах пишите, дополним, исправим))))
В следующем уроке, создание и вывод новостей, и прикрутка чата
Исправленный info.php!!!


Сообщение отредактировал cougraAcc - Воскресенье, 14 Февраля 2010, 12:37
cougraAccДата: Суббота, 13 Февраля 2010, 14:54 | Сообщение # 1394 | Тема: Первый урок php переменые и echo
Яркая личность GD
Сейчас нет на сайте
Автор расскажешь про print()?
И кстати прост совет поправь вместо echo можно написать echo() будет красивее и правильнее, хотя особой разницы нет:))
cougraAccДата: Суббота, 13 Февраля 2010, 14:41 | Сообщение # 1395 | Тема: Создание новой браузерки
Яркая личность GD
Сейчас нет на сайте
Я за php с элементами флеша, красота и быстрота))) хотя на флеше возможности огромны... но душа как то лежит к старому доброму безотказному пхп)))
cougraAccДата: Суббота, 13 Февраля 2010, 14:36 | Сообщение # 1396 | Тема: 1й урок PHP: Создание регистрации, авторизации
Яркая личность GD
Сейчас нет на сайте
ПрофЭссор, в смысле в какой сфере??
cougraAccДата: Суббота, 13 Февраля 2010, 13:28 | Сообщение # 1397 | Тема: Пособие для начинающих разработчиков Браузерных игр
Яркая личность GD
Сейчас нет на сайте
Assasin, Добавь хорошую книжку Энди Харрисон php и MySQL для начинающих, познавательная книженция...

Добавлено (13.02.2010, 13:28)
---------------------------------------------
sun_ua, Ты объясни конкретно что нужно, может быть помогу.....

cougraAccДата: Суббота, 13 Февраля 2010, 13:24 | Сообщение # 1398 | Тема: Движки для браузерной MMORPG
Яркая личность GD
Сейчас нет на сайте
sourceforge.net хорошая "мусорка" если посмотреть можно несколько интересных скриптов нарыть.....
cougraAccДата: Суббота, 13 Февраля 2010, 13:20 | Сообщение # 1399 | Тема: Урок по созданию браузерной игры № 2
Яркая личность GD
Сейчас нет на сайте
<!-- Любая грамотно свёрстанная страница должна в самом начале содержать так называемый DOCTYPE. Нужен он для всевозможных устройств вывода информации и браузеров в том числе. -->
Возьму на заметку biggrin ))), а так статья хорошая
cougraAccДата: Суббота, 13 Февраля 2010, 13:19 | Сообщение # 1400 | Тема: Уроки по созданию браузерной игры
Яркая личность GD
Сейчас нет на сайте
Зачет, хорошо написано

Добавлено (13.02.2010, 13:18)
---------------------------------------------
seraph, Нанимай программистов и пусть пишут с нуля.... так как от SQL inj на 100% мало кто защищался

Добавлено (13.02.2010, 13:19)
---------------------------------------------
Monaxsmerti, Только эта строчка или ещё что то есть?

Форум игроделов » Записи участника » cougraAcc [1424]
Поиск:

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