Консультация № 35597
17.02.2006, 10:14
0.00 руб.
0 4 4
Можно ли передать в скрипт имя ссылки (желательно не явно) по которой мы перешли к данному документу?

Например.
Есть некий файл one.php со строкой:
<a href="two.php" name="Suda">Сюда</a>
<a href="two.php" name="Tuda">Туда</a>

А в файле two.php мы могли узнать по какой ссылке перешли (не используя метод GET).

Обсуждение

Неизвестный
17.02.2006, 10:33
общий
это ответ
Здравствуйте, Connery!

Можно на onClick вешать запись в куку.
Например так:
<a href="two.php" name="Suda" onClick="setCookie(‘linkname‘,this.name)">Сюда</a>
PHP потом возмет значение из $_COOKIE[‘linkname‘]

Приложение:
function setCookie(name, value, expires, path, domain, secure) { path = "/"; value = escape(value); var curCookie = name + "=" + value + ((expires) ? "; expires=" + expires.toGMTString() : "") + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : ""); document.cookie = curCookie;}
Неизвестный
17.02.2006, 10:57
общий
это ответ
Здравствуйте, Connery!
Можно сделать так:

в файл one.php помещаеш следующее:

<form name="suda" method="post" action="two.php">
<a href="#" onclick="javascript:suda.submit();">Сюда</a>
<input name="ssilk" value="0" type="hidden"></form>

<form name="tuda" method="post" action="two.php">
<a href="#" onclick="javascript:tuda.submit();">Туда</a>
<input name="ssilk" value="1" type="hidden"></form>

а в файле two.php проверяешь $_POST[‘ssilk‘]
если $_POST[‘ssilk‘]=0 тогда include(‘suda.php‘);
если $_POST[‘ssilk‘]=1 тогда include(‘tuda.php‘);

думаю принцип понятен...

P.S. у таких ссылок есть недостаток - они не будут индексироваться поисковыми роботами
Неизвестный
17.02.2006, 13:14
общий
это ответ
Здравствуйте, Connery!
А можно не мудрить с куками и с JS, ибо не у всех эти вещи включены.
На мой взгляд, самый простой способ:
<a href="two.php?suda">Сюда</a>
<a href="two.php?tuda">Туда</a>
Страница ведь откроется одна и та же...
А в two.php обработчик:
if (isset($suda)) { нажали на "Сюда" }
if (isset($tuda)) { нажали на "Туда" }
Неизвестный
18.02.2006, 04:42
общий
это ответ
Здравствуйте, Connery!
<?phpinfo();?>
смотри в разделе переменных
Форма ответа