Решил собрать в кучу. Вроде бы подобных тем еще не было.
Скрипт номер раз: регистрация.
Код:
<?php /////////////////////////////////// /////Account Script By Napster///// /////Site: wwww.MyLineAge.ru/////// /////Version - 1.0///////////////// /////////////////////////////////// // Настройка базы данных. $dbuser = "root"; // Пользователь $dbpass = "******"; // Пароль $dbhost = "127.0.0.1"; // Адресс БД $dbname = "l2jdb"; // Имя базы данных // Настройка скрипта $savedata = "true"; //Сохранять или нет пользовательские данные, пароль логин, icq , email. По умолчанию включено. // Начало скрипта $fsname = $_SERVER['SCRIPT_NAME']; $msconn = mysql_connect($dbhost, $dbuser, $dbpass) or die ("Ошибка соединения"); MYSQL_SELECT_DB($dbname) or die ("БД не найдена"); if ($_GET[act]==""){ echo ('<center><a href="'.$fsname.'?act=registration&step=1">Регистрация</a></center>'); } if ($_GET[act]=="registration"){ if ($_GET[step]=="1"){ echo ('<form name="form1" method="post" action="'.$fsname.'?act=registration&step=2"> <div align="center"> <table width="266" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="105" align="right">Логин</td> <td width="161"><label> <input name="login" type="text" id="login"> </label></td> </tr> <tr> <td align="right">Пароль</td> <td><label> <input name="pass" type="password" id="pass"> </label></td> </tr> <tr> <td align="right">Повтор</td> <td><label> <input name="repeat" type="password" id="repeat"> </label></td> </tr> <tr> <td align="right">ICQ</td> <td><label> <input name="icq" type="text" id="icq"> </label></td> </tr> <tr> <td align="right">E-mail</td> <td><label> <input name="email" type="text" id="email"> </label></td> </tr> <tr> <td align="right"><label> <input type="reset" name="Submit2" value="Сброс"> </label></td> <td align="center"><label> <input type="submit" name="Submit" value="Регистрация"> </label></td> </tr> </table> </div> </form> <p> </p> '); } if ($_GET[step]=="2"){ $login = $_POST[login]; $pass = $_POST[pass]; $pass2 = $_POST[repeat]; $icq = $_POST[icq]; $email = $_POST[email]; if ($login == "") { echo ("<center>Вы не ввели логин</center>"); }else{ if ($pass == "") { echo ("<center>Пароль не может быть пустым</center>"); }else{ if ($pass == $pass2) { $q = mysql_query("SELECT * FROM accounts WHERE login='{$login}'"); if(!mysql_numrows($q) > "0") { $gamepass = base64_encode(pack("H*", sha1(utf8_encode($pass)))); mysql_query("INSERT INTO accounts(login, password, lastactive, access_level) VALUES('$login' , '$gamepass', '$lastactive', '0')"); if ($savedata == "true") { mysql_query("INSERT INTO account_info(login, password, icq, email) VALUES('$login' , '$pass', '$icq', '$email')"); } echo ("<center>Аккаунт <font color='red'>".$login."</font> успешно зарегистрирован</center>"); } else { echo ("<center>Имя <font color='red'>".$login."</font> уже зарегистрировано, попробуйте другое.</center>"); } }else { echo ("<center>Пароли не совпадают</center>"); } } } } } ?>
Скрипт №2 - статус сервера (On/Off +кол-во онлайн)
Код:
<?php ////Статус сервера////// error_reporting(0); $IP = array( "Авторизация: " => "85.30.192.96:2106", " Cервер: " => "85.30.192.96:7777", ); while(list($ServerName,$Host)=each($IP)) { list($IPAddress,$Port)=explode(":",$Host); echo($ServerName); if($fp=fsockopen($IPAddress,$Port,$ERROR_NO,$ERROR_STR,(float)0.5)) { echo("<font color='green'>On-line </font><br>"); fclose($fp); } else { echo ("<font color='red'>Off-line </font><br>"); } } ////Колличество он-лайн////// $dbhost="localhost"; ////Адрес MYSQL сервера $dbname="l2jdb"; //// Имя базы $dbuser="root"; //// Логин для базы $dbpass=""; //// Пароль для базы $msc=MYSQL_CONNECT($dbhost,$dbuser,$dbpass) or die ("Ошибка БД"); MYSQL_SELECT_DB($dbname) or die ("Ошибка БД"); $get_config_data="SELECT online FROM characters WHERE online>0"; $config_data=MYSQL_QUERY($get_config_data); $config['num_online']=mysql_num_rows($config_data); echo " Игроков "; echo ("<font color='green'>".$config['num_online']."</font>"); MYSQL_CLOSE($msc); ?>
Скрип 3 - кто онлайн
Код:
<table border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF" bordercolorlight="#666666" bordercolordark="#999999" class=online> <tr> <td align="center"> <p align="center">#</td> <td align="center"> <p align="center">Ник</td> <td align="center"> <p align="center">Пол</td> <td align="center"> <p align="center">Левел</td> <td align="center"> <p align="center">Раса</td> <td align="center"> <p align="center">Профа</td> <td align="center"> <p align="center">Клан</td> <td align="center"> <p align="center">Карма</td> </tr> <?php $dbhost = "localhost"; $dbname = "l2jdb"; $dbuser = "root"; $dbpass = ""; mysql_connect($dbhost,$dbuser,$dbpass); mysql_select_db($dbname); $row=array(); $res=mysql_query("select char_name,sex,level,class_name,clan_name,karma from characters left join class_list on id=classid left join clan_data on clan_id=clanid where online=1 order by char_name"); while($row[]=mysql_fetch_row($res)); mysql_free_result($res); mysql_select_db("fusion"); array_pop($row); $races=array("H"=>"Человек","O"=>"Орк","DE"=>"Темный Ельф","D"=>"Гном","E"=>"Ельф"); foreach($row as $i=>$r): list($name,$sex,$level,$class_name,$clan,$karma)=$r; list($race,$class)=explode("_",$class_name); $race=$races[$race]; $name=utf8_decode($name); print"<tr><td><b>".($i+1)."</td><td><b>$name</td><td><b>".($sex?"F":"M")."</td><td><b>$level</td><td><b>$race</td><td><b>$class</td><td><b>$clan</td><td><b>$karma</b></td></tr>"; endforeach; ?> </table>
Скрипт 4 - ротатор банеров
Код:
<?php // загрузка данных из файла ads.txt $adfile = "ads.txt"; $ads = array(); $fh = fopen($adfile, "r"); while(!feof($fh)) { $line = fgets($fh, 10240); $line = trim($line); if($line != "") { $ads[] = $line; } } $num = count($ads); $idx = rand(0, $num-1); echo $ads[$idx]; ?>
Нужно создать текстовый файл с именем ads.txt, в котором помещаете ссылки на ваши изображения в таком виде:
Код:
<a href="rambler.ru"><img src="1.gif"></a> <a href="ya.ru"><img src="2.gif"></a> <a href="moy.su"><img src="3.gif"></a>
Скрипт номер 5 - топ игроков:
Код:
<?php //Настройки: //Хост на котором находится база (если на локальном компьтере, оставить 127.0.0.1) $host='127.0.0.1'; //Логин для доступа к сервер $login='root'; //Пароль $pass=''; //Имя базы $db='l2jdb'; //Сколько чаров показывать $limit='100'; //Тип выбора. Поставьте 1=1 чтобы искать всех чаров, online=1 чтобы скать тех кто онлайн. $where='1=1'; //Цвет бордюров таблицы $bgcolor='#CCCCCC'; //Цвет первого ряда $row1='#AAAAAA'; //Основной цвет таблицы $color='#FFEEEE'; echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /></head>'."\n <font face='Arial' style='font-size:10pt'>"; mysql_connect($host,$login,$pass) or die('Не удалось подключится к MySQL серверу. Проверьте настройки.'); mysql_select_db($db) or dir('Не удалось выбрать базу данных. Проверьте настойки.'); //Получаем данные из базы $data=mysql_query("SELECT * FROM characters WHERE $where ORDER BY level DESC LIMIT $limit") or die('Не удалось получить данные из базы.'); //Заголовок echo '<center><h1>100 лучших игроков сервера</h1></center>'; //Создаем начало таблицы echo "<table align=center bgcolor='$bgcolor' cellspacing='2' cellpadding=2 border=0>\n<tr bgcolor='$row1'><td></td><td><center>Ник</center></td><td>Уровень</td><td><center>Профессия</center></td><td><center>Клан</center></td><td>PvP/PK</td><td><center>Время в игре</center></td><td>Статус</td></tr>\n"; //Выводим содержимое таблицы $n=1; while ($top=mysql_fetch_array($data)) { $onlinetimeH=round(($top[onlinetime]/60/60)-0.5); $onlinetimeM=round(((($top[onlinetime]/60/60)-$onlinetimeH)*60)-0.5); $clan=mysql_fetch_array(mysql_query("select * from clan_data where clan_id=$top[clanid]")); if ($clan[clan_name]=='') { $clan[clan_name]="Не в клане"; } if ($top['sex']==0) { $name='<font color=#8080FF>'.$top[char_name].'</font>'; } else { $name='<font color=#FF8080>'.$top[char_name].'</font>'; } $class=mysql_fetch_array(mysql_query("select ClassName from char_templates where ClassId=$top[classid]")); if (($top['sex']==0) && ($top['race']==4)) { $img='./face/dwarf_male.gif'; } if (($top['sex']==1) && ($top['race']==4)) { $img='./face/dwarf_female.gif'; } if (($top['sex']==0) && ($top['race']==2)) { $img='./face/darkelf_male.gif'; } if (($top['sex']==1) && ($top['race']==2)) { $img='./face/darkelf_female.gif'; } if (($top['sex']==0) && ($top['race']==0)) { $img='./face/human_male.gif'; } if (($top['sex']==1) && ($top['race']==0)) { $img='./face/human_female.gif'; } if (($top['sex']==0) && ($top['race']==1)) { $img='./face/elf_male.gif'; } if (($top['sex']==1) && ($top['race']==1)) { $img='./face/elf_female.gif'; } if (($top['sex']==0) && ($top['race']==3)) { $img='./face/orc_male.gif'; } if (($top['sex']==1) && ($top['race']==3)) { $img='./face/orc_female.gif'; } if ($top['online']==1) {$online='<font color=green>Online</font>'; } else {$online='<font color=red>Offline</font>'; } echo "<tr bgcolor='$color'><td><b><center>$n</center></b></td><td><img src='$img'> $name</td><td><center>$top[level]</center></td><td><center>$class[ClassName]</center></td><td><center>$clan[clan_name]</center></td><td><center><b>$top[pvpkills]</b>/<b><font color=red>$top[pkkills]</font></b></center></td><td><center>$onlinetimeH часов $onlinetimeM мин.</center></td><td>$online</td></tr>\n"; $n++; } //Закрываем таблицу echo '</table>'; ?>
Аттач
Для вставки курсора на страницу:
Код:
<STYLE TYPE="text/css"> Body{ cursor: url(url:http://Адресс/cursor.cur); } </STYLE>
Далее еще один скрипт. Ищет чаров с левыми скиллами
Код:
<? //Config $dbhost = ' '; $dbuser = ' '; $dbpasswd = ' '; $dbname = ' '; //Config function multiskills() { global $dbhost,$dbuser,$dbpasswd,$dbname; $link = mysql_connect("$dbhost", "$dbuser", "$dbpasswd") or die ("Невозможно соединится с базой данных".mysql_error()); mysql_select_db("$dbname") or die("Невозможно выбрать базу данных".mysql_error()); $sql = "SELECT char_name, obj_id, classid FROM characters WHERE (accesslevel = 0)"; $result = mysql_query($sql); while (list($char_name, $obj_id, $classid) = mysql_fetch_row($result)) { $i=1; $n=1; $row = array(); $id = $classid; while ($id > -1) { $sql2 = "SELECT id, parent_id FROM class_list WHERE id=$id"; $result2 = mysql_query($sql2); list($id, $parent_id) = mysql_fetch_row($result2); $row[$i] = $id; $i++; $id = $parent_id; } $sql3 = "SELECT c.skill_id, c.skill_name, s.class_id FROM character_skills AS c LEFT JOIN skill_trees AS s ON s.skill_id=c.skill_id WHERE (c.char_obj_id = $obj_id) ORDER BY c.skill_id"; $result3 = mysql_query($sql3); while (list($skill_id, $skill_name, $class_id) = mysql_fetch_row($result3)) { $n = 1; while ($n <= $i) { if ($class_id == $row[$n]) { $error_skill[$skill_id] = TRUE; } $n++; } } $sql3 = "SELECT c.skill_id, c.skill_name, s.class_id FROM character_skills AS c LEFT JOIN skill_trees AS s ON s.skill_id=c.skill_id WHERE (c.char_obj_id = $obj_id) ORDER BY c.skill_id"; $result3 = mysql_query($sql3); while (list($skill_id, $skill_name, $class_id) = mysql_fetch_row($result3)) { if ($error_skill[$skill_id] == FALSE) { echo "$obj_id, $char_name, $skill_id, $skill_name, $class_id <br>"; } } $sql3 = "SELECT c.skill_id, c.skill_name, s.class_id FROM character_skills AS c LEFT JOIN skill_trees AS s ON s.skill_id=c.skill_id WHERE (c.char_obj_id = $obj_id) ORDER BY c.skill_id"; $result3 = mysql_query($sql3); while (list($skill_id, $skill_name, $class_id) = mysql_fetch_row($result3)) { $error_skill[$skill_id] == FALSE; } //echo "$char_name, $obj_id, $classid"; } echo "END."; } multiskills(); ?>