ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Простейшая голосовалка
  #1861  
Старый 22.09.2009, 11:15
Аватар для mff
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
Question Простейшая голосовалка

Помогите с голосовалкой
Есть код:
Код HTML:
Голсовать:   <a href="#nul" onclick=""><img src="img/yes.gif" width="19" height="19" alt="Да" /></a> <a href="#nul" onclick=""><img src="img/no.gif" width="19" height="19" alt="Нет" /></a><br />
и есть табличка в базе данных:
Код:
CREATE TABLE `rating` (
  `id` int(10) unsigned NOT NULL auto_increment,
  `rating` int(10) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;
Задача сделать так, чтобы при нажатии на первую картинку, в базе, в столбце "rating" число прибавлялось на 1 без перезагрузки страницы
Помогите плиз разобраться, второй день сижу
 
Ответить с цитированием

  #1862  
Старый 22.09.2009, 11:39
Аватар для L.A.V
L.A.V
Новичок
Регистрация: 01.09.2009
Сообщений: 22
Провел на форуме:
1296546

Репутация: 22
По умолчанию

все что делается без перезагрузки делается JS.
обясню только смысл, тк времени нет

(накидаю кусков файлов, а там разберешься)
файл ява скрипта выглядит премерно так

Код HTML:
function process()
{
  // proceed only if the xmlHttp object isn't busy
  if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
  {
    // retrieve the name typed by the user on the form
    name = encodeURIComponent(document.getElementById("myName").value);
    // execute the quickstart.php page from the server
    xmlHttp.open("GET", "quickstart.php?name=" + name, true);  
    // define the method to handle server responses
    xmlHttp.onreadystatechange = handleServerResponse;
    // make the server request
    xmlHttp.send(null);
  }
quickstart.php это файл, где будет обработчик (там сделаешь просто изменение записи в rating )
на картинках <a href="#nul" onclick="process()">
и в самом начале файла ссылку на файл ява скрипта. надеюсь понятно все обьяснил. если что пиши, но буду за компом только вечером
 
Ответить с цитированием

  #1863  
Старый 22.09.2009, 12:28
Аватар для mff
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
Question

Пишу в хэде:
Код HTML:
<script language="JavaScript">
function process(){
  // proceed only if the xmlHttp object isn't busy
if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
  {
    // retrieve the name typed by the user on the form
    name = encodeURIComponent(document.getElementById("yes").value);
    // execute the quickstart.php page from the server
    xmlHttp.open("GET", "rating.php?ch=543&name=" + name, true);  
    // define the method to handle server responses
    xmlHttp.onreadystatechange = handleServerResponse;
    // make the server request
    xmlHttp.send(null);
	alert("rating.php?ch=543&name=" + name);
  }
}
</script>
тело:
Код HTML:
<a href="#nul" onclick="process()"><img id="yes" src="img/yes.gif" width="19" height="19" alt="Да" align="absmiddle" style="margin-right:10px;" /></a> <a href="#nul" onclick="process()"><img id="no" src="img/no.gif" width="19" height="19" alt="Нет" align="absmiddle" /></a>
Файл rating.php:
PHP код:
<?php
if($ch){
    if(
name=="yes"){
        
$result mysql_query ("UPDATE `bd` SET `rating`= (rating+1) WHERE `id`='$ch'");
    }
    if(
name=="no"){
        
$result mysql_query ("UPDATE `bd` SET `rating`= (rating-1) WHERE `id`='$ch'");
    }
}
?>
но при нажатии даже адерт не авскакивает. Почему не работает?
 
Ответить с цитированием

  #1864  
Старый 22.09.2009, 12:36
Аватар для FeraS
FeraS
Постоянный
Регистрация: 20.01.2007
Сообщений: 705
Провел на форуме:
5381835

Репутация: 1329


Отправить сообщение для FeraS с помощью ICQ
По умолчанию

mff
У тега img нет атрибута value
 
Ответить с цитированием

  #1865  
Старый 22.09.2009, 12:39
Аватар для mff
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
По умолчанию

FeraS, ага, но я пробывал и другие, там ширину передать. Что то нитак всёравно.
 
Ответить с цитированием

  #1866  
Старый 22.09.2009, 13:22
Аватар для FeraS
FeraS
Постоянный
Регистрация: 20.01.2007
Сообщений: 705
Провел на форуме:
5381835

Репутация: 1329


Отправить сообщение для FeraS с помощью ICQ
По умолчанию

mff

Код:
<script type="text/javascript">
function process() {
if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0) {
 name = encodeURIComponent(document.getElementById('yes').title);
 xmlHttp.open("GET", "rating.php?ch=543&name=" + name, true);  
 xmlHttp.onreadystatechange = handleServerResponse;
 xmlHttp.send(null);
 alert("rating.php?ch=543&name=" + name);
  }
}
</script>
Код:
<a href="#nul" onclick="process()"><img id="yes" title="yes" src="img/yes.gif" width="19" height="19" alt="Да" align="absmiddle" style="margin-right:10px;" /></a> <a href="#nul" onclick="process()"><img id="no" title="no" src="img/no.gif" width="19" height="19" alt="Нет" align="absmiddle" /></a>
попробуй

Последний раз редактировалось FeraS; 22.09.2009 в 13:25..
 
Ответить с цитированием

  #1867  
Старый 22.09.2009, 15:29
Аватар для Pashkela
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


Отправить сообщение для Pashkela с помощью ICQ
По умолчанию

Код:
<script>
function SetEnd (TB) {
   if (TB.createTextRange){
     var FieldRange = TB.createTextRange();
     FieldRange.moveStart('character', TB.value.length);
     FieldRange.collapse();
     FieldRange.select();
   }
}
</script>

<form name="form1" action="somepage.asp" method="post">
<input type="text" name="city" value="lol" onfocus="SetEnd(this)">
<input type="submit" value="Submit">
</form>
<script language="JavaScript"> document.forms[0].city.focus(); </script>
 
Ответить с цитированием

  #1868  
Старый 22.09.2009, 15:33
Аватар для mff
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
По умолчанию

Цитата:
Сообщение от FeraS  
mff

Код:
<script type="text/javascript">
function process() {
if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0) {
 name = encodeURIComponent(document.getElementById('yes').title);
 xmlHttp.open("GET", "rating.php?ch=543&name=" + name, true);  
 xmlHttp.onreadystatechange = handleServerResponse;
 xmlHttp.send(null);
 alert("rating.php?ch=543&name=" + name);
  }
}
</script>
Код:
<a href="#nul" onclick="process()"><img id="yes" title="yes" src="img/yes.gif" width="19" height="19" alt="Да" align="absmiddle" style="margin-right:10px;" /></a> <a href="#nul" onclick="process()"><img id="no" title="no" src="img/no.gif" width="19" height="19" alt="Нет" align="absmiddle" /></a>
попробуй
Не, неработает! Нет алерта ((
 
Ответить с цитированием

  #1869  
Старый 22.09.2009, 18:28
Аватар для L.A.V
L.A.V
Новичок
Регистрация: 01.09.2009
Сообщений: 22
Провел на форуме:
1296546

Репутация: 22
По умолчанию

у тебя же к процесса, то и функции надо тоже 2 сделать:
1 передает через гет наме=йес
2 передает через гет наме=но

и еще функции не обьявил в обработчике
те вместо name надо $_GET[name]
PHP код:
<?php
if($ch){
    if(
$_GET[name]=="yes"){
        
$result mysql_query ("UPDATE `bd` SET `rating`= (rating+1) WHERE `id`='$ch'");
    }
    if(
$_GET[name]=="no"){
        
$result mysql_query ("UPDATE `bd` SET `rating`= (rating-1) WHERE `id`='$ch'");
    }
}
?>
 
Ответить с цитированием

  #1870  
Старый 23.09.2009, 03:33
Аватар для mff
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
По умолчанию

L.A.V Пишет что объект xmlHttp не определен...
Нашел функцию:
Код HTML:
function getXmlHttp(){
  var xmlhttp;
  try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
    try {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (E) {
      xmlhttp = false;
    }
  }
  if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
    xmlhttp = new XMLHttpRequest();
  }
  return xmlhttp;
}
пишу:
Код HTML:
var xmlhttp = getXmlHttp()
и ни фига

http://xmlhttprequest.ru/#start

 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Delphi]/[Pascal] Задай вопрос, получи ответ Isis С/С++, C#, Delphi, .NET, Asm 6762 17.06.2010 21:23
Proxy FAQ foreva Чужие Статьи 12 04.01.2008 12:15
ЕсТь ВоПрос Guma Чаты 4 26.10.2005 21:48



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ