|
|
|
| Мне надо через ссылку передать параметр $mod .
Но ссылка должна быть чистая (т.е без ?mod=pda).
Я думаю это надо реализовывать через Ява-скрипт.
Но может еще как можно? | |
|
|
|
|
|
|
|
для: Akira
(16.01.2005 в 00:55)
| | Хм... а JavaScript тут вряд ли поможет, ничего кроме куки или сесиионных куки тут наверное не пройдёт... ну или предавать методом POST. Если параметр только один могу поделится кодом для передачи методом POST при помощи сокетов. | |
|
|
|
|
|
|
|
для: cheops
(16.01.2005 в 01:14)
| | Да параметр только один.
При помощи сокетов...хмм...не сталкивался , но если поможете буду благодарен. | |
|
|
|
|
|
|
|
для: Akira
(16.01.2005 в 01:23)
| |
<?php
$hostname = "localhost";
$path = "/test2/handler.php";
$line = "";
// Устанавливаем соединение, имя которого
// передано в параметре $hostname
$fp = fsockopen($hostname, 80, $errno, $errstr, 30);
// Проверяем успешность установки соединения
if (!$fp) echo "$errstr ($errno)<br />\n";
else
{
// Данные HTTP-запроса
$data = "name=".urlencode("Игорь")."\r\n\r\n";
// Заголовок HTTP-запроса
$headers = "POST $path HTTP/1.1\r\n";
$headers .= "Host: $hostname\r\n";
$headers .= "Content-type: application/x-www-form-urlencoded\r\n";
$headers .= "Content-Length: ".strlen($data)."\r\n\r\n";
// Отправляем HTTP-запрос серверу
fwrite($fp, $headers.$data);
// Получаем ответ
while (!feof($fp))
{
$line .= fgets($fp, 1024);
}
fclose($fp);
}
echo $line;
?>
|
Здесь
$hostname - имя сервера
$path - путь относительно корня сервера
$data - имя и значение параметра, в данном случае переменая name со значением "Игорь". | |
|
|
|
|
|
|
|
для: cheops
(16.01.2005 в 01:14)
| | а почему вы настолько не доверяете Java-script'у?
он прекрасно умеет читать адресную строку и извлекать из нее параметры...
http://www.сайт.ru/2000.html?100&30&50&true.
Данные мы передали, теперь их надо получить в виде некоторых переменных. Для этого задействуем JavaScript:
var ex_url=location.search.substring(1);
Поясняю. Мы записываем в переменную ex_url (тип "строка") все то, что находится после знака вопроса. Теперь необходимо избавиться от знака &:
var param=ex_url.split('&');
Мы записали в массив с названием param, по очереди, наши параметры. мы получили массив:
param[0]="100"
param[1]="30"
param[2]="50"
param[3]="true"
Можно передавать данные из формы, используя метод get. В этом случае вызов файла будет выглядеть:
http://www.сайт.ru/2000.html?name1=100&name2=30&name3=50&name4=true
Для варианта с формой необходимо добавить несколько строчек:
var values = new Array();
for(i=0; i var b = param[i].split('=');
values[b[0]] = unescape(b[1]); }
Если строка запроса была http://www.сайт.ru/2000.html?name1=100&name2=30&name3=50&name4=true, то получили массив:
values[name1]="100";
values[name2]="30";
values[name3]="50";
values[name4]="true";
|
| |
|
|
|
|
|
|
|
для: elenaki
(05.02.2005 в 19:03)
| | У Akir-ы другая задача. Параметры передать, но ссылка должна быть "чистая".
----------
>Но ссылка должна быть чистая (т.е без ?mod=pda).
---------- | |
|
|
|
|