Не работает реф. ссылка

  • Автор темы rubilave
  • Дата начала
rubilave
Участник
Сообщения
29
Реакции
0
Всем привет. У меня такая проблема: Все новые участники регистрируясь по реф. ссылкам попадают к пользователю ID 1 Admin. Я пробовал менять файл signup на файл с другой фермы - результат тот же. Чистил куки, заходил с другого браузера, ничего не помогло. Рефералы идут мимо ссылки созданного тестового аккаунта и попадают к ID 1 Admin.
 
rubilave
Участник
Сообщения
29
Реакции
0
<?PHP
$_OPTIMIZATION["title"] = "Регистрация";
$_OPTIMIZATION["description"] = "Регистрация пользователя в системе";
$_OPTIMIZATION["keywords"] = "Регистрация нового участника в системе";

if(isset($_SESSION["user_id"])){ Header("Location: /account"); return; }
?>
<div class="s-bk-lf">
<div class="acc-title">Регистрация</div>
</div>
<div class="silver-bk"><div class="clr"></div>
<?PHP

# Регистрация

if(isset($_POST["login"])){

if(isset($_SESSION["captcha"]) AND strtolower($_SESSION["captcha"]) == strtolower($_POST["captcha"])){
unset($_SESSION["captcha"]);

$login = $func->IsLogin($_POST["login"]);
$pass = $func->IsPassword($_POST["pass"]);
$rules = isset($_POST["rules"]) ? true : false;
$time = time();
$ip = $func->UserIP;
$UserIP = $_SERVER['REMOTE_ADDR'];

$email = $func->IsMail($_POST["email"]);
$referer_id = (isset($_COOKIE["i"]) AND intval($_COOKIE["i"]) > 0 AND intval($_COOKIE["i"]) < 1000000) ? intval($_COOKIE["i"]) : 1;
$referer_name = "";
if($referer_id != 1){
$db->Query("SELECT user FROM db_users_a WHERE id = '$referer_id' LIMIT 1");
if($db->NumRows() > 0){$referer_name = $db->FetchRow();}
else{ $referer_id = 1; $referer_name = "Admin"; }
}else{ $referer_id = 1; $referer_name = "Admin"; }

if($rules){

if($email !== false){

if($login !== false){

if($pass !== false){

if($pass == $_POST["repass"]){

$db->Query("SELECT COUNT(*) FROM db_users_a WHERE user = '$login'");
if($db->FetchRow() == 0){

# Регаем пользователя
$db->Query("INSERT INTO db_users_a (user, email, pass, referer, referer_id, date_reg, ip)
VALUES ('$login','{$email}','$pass','$referer_name','$referer_id','$time',INET_ATON('$ip'))");

$lid = $db->LastInsert();

$db->Query("INSERT INTO db_users_b (id, user,money_b) VALUES ('$lid','$login',10)");

# Вставляем статистику
$db->Query("UPDATE db_stats SET all_users = all_users +0 WHERE id = '1'");

$db->Query("UPDATE db_users_b SET money_b = money_b + 0, from_referals = from_referals + 0 WHERE id = '$referer_id'");

echo "<center><b><font color = 'green'>Вы успешно зарегистрировались. Используйте форму слева для входа в аккаунт</font></b></center><BR />";
?></div>
<div class="clr"></div>
<?PHP
return;
}else echo "<center><b><font color = 'red'>Указанный логин уже используется</font></b></center><BR />";

}else echo "<center><b><font color = 'red'>Пароль и повтор пароля не совпадают</font></b></center><BR />";

}else echo "<center><b><font color = 'red'>Пароль заполнен неверно</font></b></center><BR />";

}else echo "<center><b><font color = 'red'>Логин заполнен неверно</font></b></center><BR />";

}else echo "<center><font color = 'red'><b>Email имеет неверный формат</b></font></center>";

}else echo "<center><b><font color = 'red'>Вы не подтвердили правила</font></b></center><BR />";

}else echo "<center><font color = 'red'><b>Символы с картинки введены неверно</b></font></center>";

}


?>


<BR />
<form action="" method="post">
<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="left" style="padding:3px;">Ваш псевдоним: <font color="#FF0000">*</font></td>
<td align="left" style="padding:3px;"><input name="login" type="text" size="25" maxlength="10" value="<?=(isset($_POST["login"])) ? $_POST["login"] : false; ?>"/></td>
</tr>
<tr>
<td colspan="2" align="left" style="padding:3px;">Поле псевдоним должно иметь от 4 до 10 символов (только англ. символы).</td>
</tr>
<tr>
<td align="left" style="padding:3px;">Email: <font color="#FF0000">*</font></td>
<td align="left" style="padding:3px;"><input name="email" type="text" size="25" maxlength="50" value="<?=(isset($_POST["email"])) ? $_POST["email"] : false; ?>"/></td>
</tr>
<tr>
<td colspan="2" align="left">&nbsp;</td>
</tr>
<tr>
<td align="left" style="padding:3px;">Пароль: <font color="#FF0000">*</font></td>
<td align="left" style="padding:3px;"><input name="pass" type="password" size="25" maxlength="20" /></td>
</tr>
<tr>
<td colspan="2" align="left" style="padding:3px;">Поле Пароль должно иметь от 6 до 20 символов (только англ. символы).</td>
</tr>
<tr>
<td align="left" style="padding:3px;">Пароль еще раз: <font color="#FF0000">*</font></td>
<td align="left" style="padding:3px;"><input name="repass" type="password" size="25" maxlength="20" /></td>
</tr>
<tr>
<td colspan="2" align="left" style="padding:3px;">Пароли должны совпадать.</td>
</tr>
<tr>
<td colspan="2" align="left">&nbsp;</td>
</tr>
<tr>
<td colspan="2" align="left" style="padding:3px;">
С <a href="https://servahoc.ru/redirect.php?url=/rules" target="_blank" class="stn">правилами</a> проекта ознакомлен(а) и принимаю: <input name="rules" type="checkbox" /></td>
</tr>
<tr>
<td align="left" style="padding:3px;">
<a href="https://servahoc.ru/redirect.php?url=#" onclick="ResetCaptcha(this);"><img src="/captcha.php?rnd=<?=rand(1,10000); ?>" border="0" style="margin:0;"/></a>
</td>
<td align="left" style="padding:3px;">Введите символы с картинки<input name="captcha" type="text" size="25" maxlength="50" /></td>
</tr>
<tr>
<td colspan="2" align="left">&nbsp;</td>
</tr>
<tr>
<td colspan="2" align="center" style="padding:3px;"><input name="registr" type="submit" value="Зарегистрироваться" style="height: 30px;"></td>
</tr>
</table>
</form>

</div>
<div class="clr"></div>
 
Андрей
Участник
Сообщения
241
Реакции
55
rubilave написал(а):
<?PHP
$_OPTIMIZATION["title"] = "Регистрация";
$_OPTIMIZATION["description"] = "Регистрация пользователя в системе";
$_OPTIMIZATION["keywords"] = "Регистрация нового участника в системе";

if(isset($_SESSION["user_id"])){ Header("Location: /account"); return; }
?>
<div class="s-bk-lf">
<div class="acc-title">Регистрация</div>
</div>
<div class="silver-bk"><div class="clr"></div>
<?PHP

# Регистрация

if(isset($_POST["login"])){

if(isset($_SESSION["captcha"]) AND strtolower($_SESSION["captcha"]) == strtolower($_POST["captcha"])){
unset($_SESSION["captcha"]);

$login = $func->IsLogin($_POST["login"]);
$pass = $func->IsPassword($_POST["pass"]);
$rules = isset($_POST["rules"]) ? true : false;
$time = time();
$ip = $func->UserIP;
$UserIP = $_SERVER['REMOTE_ADDR'];

$email = $func->IsMail($_POST["email"]);
$referer_id = (isset($_COOKIE["i"]) AND intval($_COOKIE["i"]) > 0 AND intval($_COOKIE["i"]) < 1000000) ? intval($_COOKIE["i"]) : 1;
$referer_name = "";
if($referer_id != 1){
$db->Query("SELECT user FROM db_users_a WHERE id = '$referer_id' LIMIT 1");
if($db->NumRows() > 0){$referer_name = $db->FetchRow();}
else{ $referer_id = 1; $referer_name = "Admin"; }
}else{ $referer_id = 1; $referer_name = "Admin"; }

if($rules){

if($email !== false){

if($login !== false){

if($pass !== false){

if($pass == $_POST["repass"]){

$db->Query("SELECT COUNT(*) FROM db_users_a WHERE user = '$login'");
if($db->FetchRow() == 0){

# Регаем пользователя
$db->Query("INSERT INTO db_users_a (user, email, pass, referer, referer_id, date_reg, ip)
VALUES ('$login','{$email}','$pass','$referer_name','$referer_id','$time',INET_ATON('$ip'))");

$lid = $db->LastInsert();

$db->Query("INSERT INTO db_users_b (id, user,money_b) VALUES ('$lid','$login',10)");

# Вставляем статистику
$db->Query("UPDATE db_stats SET all_users = all_users +0 WHERE id = '1'");

$db->Query("UPDATE db_users_b SET money_b = money_b + 0, from_referals = from_referals + 0 WHERE id = '$referer_id'");

echo "<center><b><font color = 'green'>Вы успешно зарегистрировались. Используйте форму слева для входа в аккаунт</font></b></center><BR />";
?></div>
<div class="clr"></div>
<?PHP
return;
}else echo "<center><b><font color = 'red'>Указанный логин уже используется</font></b></center><BR />";

}else echo "<center><b><font color = 'red'>Пароль и повтор пароля не совпадают</font></b></center><BR />";

}else echo "<center><b><font color = 'red'>Пароль заполнен неверно</font></b></center><BR />";

}else echo "<center><b><font color = 'red'>Логин заполнен неверно</font></b></center><BR />";

}else echo "<center><font color = 'red'><b>Email имеет неверный формат</b></font></center>";

}else echo "<center><b><font color = 'red'>Вы не подтвердили правила</font></b></center><BR />";

}else echo "<center><font color = 'red'><b>Символы с картинки введены неверно</b></font></center>";

}


?>


<BR />
<form action="" method="post">
<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="left" style="padding:3px;">Ваш псевдоним: <font color="#FF0000">*</font></td>
<td align="left" style="padding:3px;"><input name="login" type="text" size="25" maxlength="10" value="<?=(isset($_POST["login"])) ? $_POST["login"] : false; ?>"/></td>
</tr>
<tr>
<td colspan="2" align="left" style="padding:3px;">Поле псевдоним должно иметь от 4 до 10 символов (только англ. символы).</td>
</tr>
<tr>
<td align="left" style="padding:3px;">Email: <font color="#FF0000">*</font></td>
<td align="left" style="padding:3px;"><input name="email" type="text" size="25" maxlength="50" value="<?=(isset($_POST["email"])) ? $_POST["email"] : false; ?>"/></td>
</tr>
<tr>
<td colspan="2" align="left">&nbsp;</td>
</tr>
<tr>
<td align="left" style="padding:3px;">Пароль: <font color="#FF0000">*</font></td>
<td align="left" style="padding:3px;"><input name="pass" type="password" size="25" maxlength="20" /></td>
</tr>
<tr>
<td colspan="2" align="left" style="padding:3px;">Поле Пароль должно иметь от 6 до 20 символов (только англ. символы).</td>
</tr>
<tr>
<td align="left" style="padding:3px;">Пароль еще раз: <font color="#FF0000">*</font></td>
<td align="left" style="padding:3px;"><input name="repass" type="password" size="25" maxlength="20" /></td>
</tr>
<tr>
<td colspan="2" align="left" style="padding:3px;">Пароли должны совпадать.</td>
</tr>
<tr>
<td colspan="2" align="left">&nbsp;</td>
</tr>
<tr>
<td colspan="2" align="left" style="padding:3px;">
С <a href="https://servahoc.ru/redirect.php?url=/rules" target="_blank" class="stn">правилами</a> проекта ознакомлен(а) и принимаю: <input name="rules" type="checkbox" /></td>
</tr>
<tr>
<td align="left" style="padding:3px;">
<a href="https://servahoc.ru/redirect.php?url=#" onclick="ResetCaptcha(this);"><img src="/captcha.php?rnd=<?=rand(1,10000); ?>" border="0" style="margin:0;"/></a>
</td>
<td align="left" style="padding:3px;">Введите символы с картинки<input name="captcha" type="text" size="25" maxlength="50" /></td>
</tr>
<tr>
<td colspan="2" align="left">&nbsp;</td>
</tr>
<tr>
<td colspan="2" align="center" style="padding:3px;"><input name="registr" type="submit" value="Зарегистрироваться" style="height: 30px;"></td>
</tr>
</table>
</form>

</div>
<div class="clr"></div>
В файле inc/set_referer.php должно быть так:

PHP:
<?PHP
if(isset($_GET["i"])){
$_rid = (intval($_GET["i"]) > 0) ? intval($_GET["i"]) : 1;
setcookie("i",$_rid,time()+2592000);
header("Location: /");
}
?>
и в корневом index должна присутствовать эта строка:
PHP:
include("inc/_set_referer.php");
 
rubilave
Участник
Сообщения
29
Реакции
0
Спасибо тебе огромное!
 
cirbi
Местный
Сообщения
98
Реакции
1
Андрей написал(а):
и в корневом index должна присутствовать эта строка:
PHP:
include("inc/_set_referer.php");
а где именно
 
cirbi
Местный
Сообщения
98
Реакции
1
Андрей написал(а):
В файле inc/set_referer.php должно быть так:

PHP:
<?PHP
if(isset($_GET["i"])){
$_rid = (intval($_GET["i"]) > 0) ? intval($_GET["i"]) : 1;
setcookie("i",$_rid,time()+2592000);
header("Location: /");
}
?>
и в корневом index должна присутствовать эта строка:
PHP:
include("inc/_set_referer.php");
спасибо тебе залайкал бы тебя много у кого спрашивал все молчат будто б такой секрет ьлин
 
Андрей
Участник
Сообщения
241
Реакции
55
cirbi написал(а):
После этих строк:

PHP:
function __autoload($name){ include("classes/_class.".$name.".php");}
$config = new config;
$func = new func;
 
cirbi
Местный
Сообщения
98
Реакции
1
а есть у вас рабочая массовая рассылка
 
Сверху