[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: не знаю как коротко описать вопрос...
feniks_iopok
на странице много ссылок которые отправляют запрос на сервер.

<a href="#" onClick="vote()">Кнопка</a>


Функция vote выглядит вот так

function vote() {
var req = getXmlHttp()
var statusElem = document.getElementById('dialog')
req.onreadystatechange = function() {
if (req.readyState == 4) {
statusElem.innerHTML = req.statusText
if(req.status == 200) {
alert("Ответ сервера: "+req.responseText); } } }
req.open('GET', 'ajax_intro/vote.php', true);
req.send(null);
statusElem.innerHTML = 'Ожидаю ответа сервера...' }


Документ vote.php вот такой

<?php
sleep (2);
//получаем айпи
function GetRealIp() { if (!empty($_SERVER['HTTP_CLIENT_IP'])) { $ip=$_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{ $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];} else { $ip=$_SERVER['REMOTE_ADDR']; } return $ip; } $ip = getRealIp();
//получили айпи

//проверяем количество голосов и добавляем запись в документ или огорчаем пользователя

$f = file_get_contents("../ip/ip_1.txt"); preg_match_all('/'.$ip.'/', $f, $match);

if (count($match[0]) < 5) {
$files = fopen('../ip/ip_1.txt', "a+");
fwrite($files, $ip."\r\n");
fclose ($files);
echo ('Ваш голос учтен!');
}

else {echo ('Ваши голоса на сегодня закончились! Заходите завтра.'); }
?>


Все это отлично работает если на странице одна кнопка, но если нужно сделать 10 кнопок, то проблема. У каждой кнопки должен быть свой документ (ip_1.txt, ip_2.txt и тд..). Тогда в документ vote.php я добавлю скрипты которые будут добавлять запись в тот или иной документ. Но как отследить на какую ссылку нажал пользователь, как эту информацию донести до документа vote.php ?



Спустя 9 минут, 29 секунд (30.04.2011 - 13:39) walerus написал(а):
Это кнопки.


<a href="#" onClick="vote('1')">Кнопка</a>
<a
href="#" onClick="vote('2')">Кнопка</a>
<a
href="#" onClick="vote('3')">Кнопка</a>


Это функция.

function vote(num_button) {
var req = getXmlHttp()
var statusElem = document.getElementById('dialog')
req.onreadystatechange = function() {
if (req.readyState == 4) {
statusElem.innerHTML = req.statusText
if(req.status == 200) {
alert("Ответ сервера: "+req.responseText); } } }

var url = 'ajax_intro/vote.php?button=' + num_button;
req.open('GET', url, true);
req.send(null);
statusElem.innerHTML = 'Ожидаю ответа сервера...' }


Документ vote.php

В начале получили номер страницы

<?php

if ( isset($_REQUEST['button']) && trim($_REQUEST['button']) != '')
$button_value = trim($_REQUEST['button']);
else
$button_value = '1'; // по умолчанию


и потом уже подставляешь к номеру страницы...

По моему так, если ничего не напутал :)

Спустя 1 минута, 47 секунд (30.04.2011 - 13:41) feniks_iopok написал(а):
мм спасибо! не знаю, сработает или нет, но попробую smile.gif

Спустя 5 минут, 34 секунды (30.04.2011 - 13:47) feniks_iopok написал(а):
ааа спасибо! все сработало biggrin.gif

может вы мне весь сайт сверстаете? laugh.gif

Спустя 4 минуты, 26 секунд (30.04.2011 - 13:51) walerus написал(а):
rolleyes.gif не ), спасибо ), а то начну отсебятину лепить...

Обращайтесь, будем помогать )


_____________
есть сайт, 3-4к уников в сутки. зарабатываю 100 рублей в день, почему так мало?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.