|
|
|
| Хочу, чтобы человек прешедший по ссылке http://site/?r=name, в сесию сохранялась переменная r, чтобы он мог полазить по сайту, потом перейти в регестрацию, и при регестриции переменная r, вписалась в bd в поле referer
Помогите пожалуйста! Покажите код, чтобы работало, я сделал, не работает чето не фига((((
Вот мой код:
Файл bd:
<?php
session_start();
$db = mysql_connect ("localhost","12345","123");
mysql_select_db ("12345",$db);
$login = $_SESSION['login'];
$password = $_SESSION['password'];
$id_user = $_SESSION['id'];
if (isset($r))
{
$_SESSION['r'] = $r;
$r = $_SESSION['r'];
}
else
{
$r = $_GET['r'];
$_SESSION['r'] = $r;
$r = $_SESSION['r'];
}
?>
Вот часть кода файла регистрации:
<?php include_once("bd.php"); ?>
<?php
............
else{
$query = "INSERT INTO users (login, password, email, reg_date, referer )
VALUES ('$login', '$mdPassword', '$email', '$rdate', '$r')";
$result = mysql_query($query) or die(mysql_error());;
echo '<br><center><span class="text">Вы успешно зарегистрировались! Теперь Вы можете войти в аккаунт под своим логином и паролем!</span></center>';
}
}
}
}
?>
Истратил все силы(( не че не получаеться помогите пожалуйста, ну как я понимаю, скорее всего ошибка в файле bd, сессия не сохраняет переменную r | |
|
|
|
|
|
|
|
для: revered
(01.02.2012 в 00:48)
| | А в массиве сессии вообще есть что-либо? Выведите
<?
echo "<pre>";print_r($_SESSION);echo"</pre>";
| в конце файла bd | |
|
|
|
|
|
|
|
для: revered
(01.02.2012 в 00:48)
| | А проверка условия
> if (isset($r))
Здесь $r вообще откуда изначально должна взяться? | |
|
|
|
|
|
|
|
для: revered
(01.02.2012 в 00:48)
| | А здесь:
<?
$r = $_GET['r'];
$_SESSION['r'] = $r;
$r = $_SESSION['r'];
| что за вася любит машу, маша любит васю? третья строчка зачем? | |
|
|
|
|
|
|
|
для: revered
(01.02.2012 в 00:48)
| | Может у вас session.use_cookies отключено?
Попробуйте добавить
<?
ini_set("session.use_cookies","1");
| перед session_start(); | |
|
|
|
|
|
|
|
для: Sfinks
(01.02.2012 в 01:41)
| | включено. Тут похоже проблема с условием(( подскажите а как сделать? Просто нужно чтобы методом GET в переменную r записывалось только один раз, а это переменная загонялась в сесию, потом когда в сесии нету переменной, опять методом GET записывалось | |
|
|
|
|
|
|
|
для: revered
(01.02.2012 в 16:15)
| |
<?
if(empty($_SESSION['r']))
$_SESSION['r'] = $_GET['r'];
$r = $_SESSION['r'];
|
Так чтоли? | |
|
|
|
|
|
|
|
для: tAleks
(01.02.2012 в 22:35)
| | спасибо большое!! Все круто работает!) | |
|
|
|
|
|
|
|
для: Sfinks
(01.02.2012 в 01:41)
| | люди, помогите пожалуйста, срочно надо)) | |
|
|
|
|
|
|
|
для: revered
(01.02.2012 в 00:48)
| | >Хочу, чтобы человек прешедший по ссылке http://site/?r=name, в сесию сохранялась переменная r, чтобы он мог полазить по сайту, потом перейти в регестрацию, и при регестриции переменная r, вписалась в bd в поле referer
Вообще, я бы закинул r в куку.
Ну, а если жу надо в сессию, то вот так:
<?
if(!empty($_GET['r'])) $_SESSION['r'] = $_GET['r'];
|
| |
|
|
|