Men xam uxlab kolmay deb, bitta-ikkita JohnCMS uchun tuzgan modullarimni sovg'a qilishni niyat qildim! Unda boshladik!
1. @nik modi(sahifaga manzil yaratish):
Sayt ildizidagi Install/install.sql faylga pastgi kodlarni joylashtiring:
--
-- Структура таблицы `niksalgy`
--
DROP TABLE IF EXISTS `niksalgy`;
CREATE TABLE `niksalgy` (
`id` int(5) unsigned NOT NULL AUTO_INCREMENT,
`user_id` int(5) NOT NULL,
`nik` text NOT NULL,
`time` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
va Users ustuniga `anik` INT(11) NOT NULL DEFAULT '0',
kodni koshing!
Saytingiz ildiziga @nik.php faylni yarating va ichiga pastdagi kodlarni kiriting:
Kod · PHP
<?php
define('_IN_JOHNCMS', 1);
defined('_IN_JOHNCMS') or die('Error: restricted access');
require('incfiles/core.php');
$textl = 'Sahifaga manzil yasash';
require('incfiles/head.php');
if (!$user_id) {
echo '<div class="rmenu">Faqat azolar uchun!</div>';
} else {
switch(htmlspecialchars($_GET['act'])){
case 'al':
if (empty($_POST['nik'])) {
echo '<div class="gmenu"><big>Matin kiritmadingiz!</big></div>';
break;
}
$nik = htmlspecialchars(trim($_POST['nik']));
$nik = mysql_real_escape_string($nik);
$result = mysql_query("SELECT count(*) AS total FROM niksalgy WHERE `nik`='".$nik."'");
$total = mysql_fetch_array($result);
$total = $total['total'];
if ($total > '0'){
echo '<div class="gmenu"><big>Buday @sahifa saytda avval xam bor!<br/>Iltmos, boshqa @sahifa kiriting!</big></div>';
break;
}
$result = mysql_query("SELECT count(*) AS total FROM niksalgy WHERE `nik`='".$user_id."'");
$total = mysql_fetch_array($result);
$total = $total['total'];
if ($total > '0'){
echo "Kechirasiz, siz avval xam profilingiz uchun @sahifa koygansiz...";
break;
}
if ( !preg_match("/^[a-zA-Z0-9_]/" , $nik ) ){
echo '<div class="gmenu"><big>Nomalum belgilar!</big></div>';
break;
}
$drn = functions::check($_POST['nik']);
$mk = mkdir("@$drn", 0777);
if ($mk == true) {
chmod("@$drn", 0777);
$fp=fopen("@$drn/index.php","w");
flock ($fp,LOCK_EX);
fputs($fp,"<?php
define('_IN_JOHNCMS', 1);
require_once('../incfiles/core.php');
require_once('../incfiles/head.php');
header('Refresh: 1; url=http://saytingiz.uz/users/profile.php?user=$user_id');
require_once('../incfiles/end.php');
?>");
flock ($fp,LOCK_UN);
fclose($fp);
if ($fp){
mysql_query("INSERT INTO `niksalgy` SET
`user_id` = '".$user_id."',
`nik` = '".$drn."',
`time` = '". time() ."'
");
mysql_query("update `users` SET `balans`=`balans` - 500 where `id` = '".$user_id."'");
mysql_query("UPDATE `users` SET `anik` = 1 WHERE `id` = '" . $user_id . "'");
echo "<div class='gmenu'>Tabriklaymiz! Profilingizga @sahifa ulandi!<br/><a href='".$home."/@".$drn."'>Mening @sahifam</a></div>";
}}
break;
default:
echo '<div class="phdr"><a href="../shop">Sayt dokoni</a> | <b>Sahifaga manzil yasash</b></div>';
echo '<div class="menu">';
if ($datauser['manat'] < 15){
echo '<big>Hozirgi vaqtda @sahifa yaratish uchun, hisobingizda yetarlicha ball yoq! Xizmat narxi: 500 ball<br/>Saytda faol bolib ballaringizni oshirshingiz mumkun!</big>';
}else{
echo '<font color="green"><big>'.$login.', siz bu yerda sahifangiz uchun @ manzil yaratishingiz mumkun! <br/> Hyzmat bahasy 15 manat!<br/>Sizde: '.$datauser['manat'].' manat bar!<br/>Eslatma: @sahifani faqat bir martda yaratish mumkun!</big></font><br/>
<b><big>Soz yoki Tahallus:</big></b>
<form action="@nik.php?act=al" method="POST">
<p>http://saytingiz.uz/@<input type="text" name="nik" value="" /></p>
<input type="submit" value="Tayyor" /></form>';
}
echo '</div>';
break;
}}
require('incfiles/end.php');
?>Ozbekcha unchalik yozolmayman, gramatiki xatolar uchun uziraa...

Xozircha shu kod, albatda yanada foydali kodlarni ulashaman!
Iltmos offtop bolmasin!
