0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 11

Счетчик перехода при нажатии на кнопку

03.12.2010, 23:47. Показов 2313. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
добрый день. Нужна помощь, столкнулась с этим при написании диплома, а рнр очень плохо разбираюсь.
Кнопка генерирует число, которое потом учавствует в шифровании как ключ. надо чтоб каждый юзер могг только один раз сгенерировать свое число, т.е. только один раз нажать на кнопку. Есть база данных с данными про всех авторизованных пользователей, и рнр скрипт генерации числа.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.12.2010, 23:47
Ответы с готовыми решениями:

Проверка при нажатии на кнопку
Ситуация такая: вывожу на форму из базы данных картинку и варианты ответов к ней в button' ы(также лежат в базе) затем при нажатии на один...

Не запускается скрипт при нажатии на кнопку
Есть код. При нажатии на кнопку должен запускаться скрипт из другого php файла. Но ничего не происходит. Помогите <html> ...

Выборка данных из БД при нажатии на кнопку
Здравствуйте ребята. Видел на форуме статью, в которой описывалось следующее: При нажатии на кнопку, происходила выборка данных с...

6
 Аватар для ostgals
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
04.12.2010, 18:32
Принцип несложный:
Записывайте сгенерированный ключ в базу данных. При входе проверяйте наличие ключа: если он есть, кнопка не выводится, и наоборот.

Если вам нужна более ощутимая помощь, распишите в деталях структуру данных в таблице поььзователей и приведите скрипт страницы, где должна располагаться кнопка.
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 11
04.12.2010, 21:25  [ТС]
да, желательно более ощутимая помощь))
в бд находятся поля: id,fio,...,login,pass.
сгенерир число не должно заносится в бд. я его знать не должна. просто может надо добавить еще одну колонку, где будет стоять 1 если уже нажимал, а 0 если нет.
сам скрипт рнр вот:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<html>
<h1>Генератор идентификационного номера</h1>
<body>
 
<TABLE  BORDER=2 CELLSPACING=4 CELLPADDING=4 HEIGHT="20%">
<TR><TD>  
 <script language="javascript" type="text/javascript">
<!-- 
function getRandom(){
n=Math.random();
document.number_form.getRandom_16.value=[n];
}
 
function getRandom300(m,n){
return Math.floor(Math.random()*(n-m+1))+m;
}
 
function getRandom6(){
for(var i=0;i<1;i++){
n6=getRandom300(100,300);
}
document.number_form_6.getRandom_6.value=[n6];
}
//--></script>
<form name="number_form_6"> 
<input type="text" name="getRandom_6" id="area_getRandom_6">
<input type="button" value="получить свой уникальный номер I" onClick="getRandom6()" id="button_getRandom_6">     
</TD></TR>
 
 
<TR><TD ALIGN=CENTER> <FORM >
<input TYPE="button"  VALUE=" продолжить голосование " ONCLICK="HomeButton()"> <script>
function HomeButton()
{
location.href="buleten.php/";
}
</script>
</FORM></TD></TR>
</TABLE> 
 
</body>
</html>
нужно чтобы если пользователь первый раз генерирует , то выводится число, юзер его запоминает, и переход на стр buleten.php, а если нет, то выводится сообщение что вы уже генерировали, и все равно
переход на стр buleten.php



спасибо большое, если кто поможет)))
0
 Аватар для ostgals
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
04.12.2010, 22:44
Цитата Сообщение от ir4ik) Посмотреть сообщение
просто может надо добавить еще одну колонку, где будет стоять 1 если уже нажимал, а 0 если нет.
Отличное решение.

Допустим, колонка будет называться has_code. А как скрипт должен определять какой пользователь в данный момент зашел на страницу? Я так понимаю, что он к моменту захода на генератор уже где-то залогинился, но для получения информации из колонки has_code нужно знать что это за пользователь, чтобы выполнить запрос в БД.

Вот пример (всего лишь пример!), как можно модифицировать ваш скрипт, чтобы он проверял факт генерации кода и делал соответствующие действия. Подразумевается, что таблица пользователей называется users, поле - has_code, и что о текущем пользователе нам известен только его login (хотя часто бывает иначе).

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?php
 
    $login = ''; // предполагаем, что нам известен логин текущего пользователя
    
    if (!empty($_POST['complete'])) {
        
        $result = mysql_query("update users set has_code=1 where login='$login'");
        header('Location: buleten.php');
        die();
        
    }
    
    $result = mysql_query("select has_code from users where login='$login' and has_code=1");
    $has_code = (mysql_num_rows($result) > 0);
    
?>
 
<?php if ($has_code): /* код уже был сгенерирован - делаем редирект с сообщением и задержкой 5 сек. */ ?>
 
<html>
<meta http-equiv="Refresh" content="5;url=buleten.php" />
<body>
 
<p>Вы уже генерировали код. Через 5 секунд произойдет перенаправление на buleten.php</p>
 
</body></html>
 
<?php else: /* код еще не был сгенерирован - выводим генератор */ ?>
 
<html>
<body>
 
<h1>Генератор идентификационного номера</h1>
 
... здесь все остается то же самое за исключением кнопки "продолжить голосование" ...
 
<!-- эту форму вставляем вместо кнопки "продолжить голосование" -->
<form method="post">
    <input type="submit" name="complete" value=" продолжить голосование "/>
</form>
 
 
</body></html>
 
<?php endif; ?>
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 11
04.12.2010, 22:59  [ТС]
ой, спасибо огромное. сейчас буду пробовать! а насчет скрипта, да, сначала у меня идет файл с авторизацией пользователя, и если все ок, то идет направление на генератор числа.

Добавлено через 11 минут
вроде все сделала, а выводятся ошибки:
Warning: mysql_query() [function.mysql-query]: Access denied for user ''@'localhost' (using password: NO) in C:\Program Files\EasyPHP-5.3.3\www\generator_nomera.php on line 13

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\Program Files\EasyPHP-5.3.3\www\generator_nomera.php on line 13

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files\EasyPHP-5.3.3\www\generator_nomera.php on line 14
0
 Аватар для ostgals
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
04.12.2010, 23:14
Цитата Сообщение от ir4ik) Посмотреть сообщение
вроде все сделала, а выводятся ошибки:
Я потому и предупредил, что это всего лишь пример.
Ошибки говорят о том, что не установлено соединение с базой данных.

В самом начале скрипта надо подсоединиться к mysql-серверу с помощью mysql_connect и выбрать нужную БД с помощью mysql_select_db.

Добавлено через 56 секунд
Можете глянуть, как происходит подсоединение к БД в скрипте авторизации пользователей.
1
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 11
05.12.2010, 00:07  [ТС]
да, заработало!! спасибо огромное за помощь!!!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.12.2010, 00:07
Помогаю со студенческими работами здесь

Запрос цены при нажатии на кнопку
Как лучше реализовать такую вещь. Есть прайс лист, в нём вместо цены высвечивается кнопка &quot;запросить&quot; цену. При нажатии на неё...

Подгружать информацию из БД при нажатии на кнопку
В HTML выпадающий список, в котором 10 пунктов и кнопка &quot;Выбрать&quot;. Нужно сделать так чтобы при нажатии на эту кнопку в одном из divoв...

Добавление строки при нажатии на кнопку
Как добавить с таблицу mysql пустую строку при нажатии на кнопку?

Отправление форм при нажатии на кнопку
Заранее прошу прощения, я новичок в mysql и php Есть несколько форм и кнопка, при нажатии на кнопку почему то выбивает ошибку ...

Передать запрос mysql при нажатии на кнопку
Всем привет, помогите разобраться как лучше всего сделать, добавляю в базу значения при нажатии на submit через ajax ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru