PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (10): « 1 2 [3] 4 5 6 7 8 9 ... » В конец

> Найдено сообщений: 141
Andruxa Отправлено: 12 Декабря, 2013 - 21:51:39 • Тема: Cчетчик кликов по картинке без перезагрузки php+ajax с записью в БД • Форум: Напишите за меня, пожалуйста

Ответов: 22
Просмотров: 219
Deonis
Спасибо дружище !!! все работает Улыбка))
CODE (javascript):
скопировать код в буфер обмена
  1. output = $(this).siblings('b');

Можно пояснить эту строчку ? С ней все заработало!
Andruxa Отправлено: 12 Декабря, 2013 - 20:04:42 • Тема: Cчетчик кликов по картинке без перезагрузки php+ajax с записью в БД • Форум: Напишите за меня, пожалуйста

Ответов: 22
Просмотров: 219
IllusionMH
все равно не догнал как это в php код впихнуть.
Глядя по образцу, что то получилось, и даже работает с небольшим но..
Это выводится в цикле из базы ниже поздравлений
CODE (html):
скопировать код в буфер обмена
  1. <div class='dop_blok'><div class='plus' data-rating='1' data-id='".$info['id']."'></div><b></b></div>


CODE (javascript):
скопировать код в буфер обмена
  1. $(function(){        
  2.         var output = $(".dop_blok b"); // элемент, в который будем выводить результат
  3.         $('.plus').on('click', function(){
  4.             var cRating = $(this).data('rating'); // значение атрибута data-rating нажатой кнопки
  5.             var cId = $(this).data('id');
  6.             $.ajax({
  7.                 url: 'http://localhost/p0zdravlenie.ru/actions.php', // Путь к обработчику
  8.                 type: 'POST', // метод передачи данных
  9.                 dataType: 'json', // формат, в котором ожидается получить ответ с сервера
  10.                 data: {someVal: cRating, someID: cId}, // передаваемые данные
  11.  
  12.                 success: function(data){
  13.                     // data - сформированный ответ на стороне сервера
  14.                   //  console.log(data.newvalue);
  15.                     output.text(data.newvalue);
  16.                    // output.text(output.text()*1 + data); // выводим информацию в нужный блок
  17.                 }
  18.             });
  19.         });
  20.     });


PHP:
скопировать код в буфер обмена
  1.     if(!empty($_POST['someVal']) and !empty($_POST['someID'])) {
  2.      $someVal = (int)$_POST['someVal'];
  3.      $someID = (int)$_POST['someID'];
  4.     }
  5.     if(isset($someVal) && $someVal != 0 ) {
  6.         $counts=get_counts_p($someID);
  7.         $counts++;
  8.         $stm  = db_connect()->prepare("UPDATE pozdravleniya SET counts=:counts WHERE id=:id");        
  9.         $stm->execute(array('counts'=>$counts, 'id'=>$someID));
  10.         exit(json_encode(array('newvalue' => $counts)));
  11.     }


Но есть но... если изначально захожу на страницу, результаты не отображаются, есль клацнуть, то одно и тоже значение появляется везде
Andruxa Отправлено: 12 Декабря, 2013 - 18:31:28 • Тема: Cчетчик кликов по картинке без перезагрузки php+ajax с записью в БД • Форум: Напишите за меня, пожалуйста

Ответов: 22
Просмотров: 219
IllusionMH
можно подробнее для тупых Улыбка)
Да, я посмотрел , результат возвращается что надо, но как мне вставить его в это место ?
PHP:
скопировать код в буфер обмена
  1.     echo"<div class='dop_blok'><div class='plus' data-rating='1' data-id='".$info['id']."'></div><b>"Вот сюда!"</b></div>";
Andruxa Отправлено: 12 Декабря, 2013 - 17:24:55 • Тема: Cчетчик кликов по картинке без перезагрузки php+ajax с записью в БД • Форум: Напишите за меня, пожалуйста

Ответов: 22
Просмотров: 219
С горем пополам разобрался Улыбка
Практически достиг нужного результата.
Вот рабочая часть:
PHP:
скопировать код в буфер обмена
  1. echo"<div class='dop_blok'><div class='plus' data-rating='1' data-id='".$info['id']."'></div><b>".get_counts_p($info['id'])."</b></div>";


CODE (javascript):
скопировать код в буфер обмена
  1. $(function(){
  2.       //  var output = $(".dop_blok b"); // элемент, в который будем выводить результат
  3.         $('.plus').on('click', function(){
  4.             var cRating = $(this).data('rating'); // значение атрибута data-rating нажатой кнопки
  5.             var cId = $(this).data('id');
  6.             $.ajax({
  7.                 url: 'http://localhost/site.ru/actions.php', // Путь к обработчику
  8.                 type: 'POST', // метод передачи данных
  9.                 dataType: 'json', // формат, в котором ожидается получить ответ с сервера
  10.                 data: {someVal: cRating, someID: cId}, // передаваемые данные
  11.                 success: function(data){
  12.                     // data - сформированный ответ на стороне сервера
  13.                     output.text(output.text()*1 + data); // выводим информацию в нужный блок
  14.                 }
  15.             });
  16.         });
  17.     });


PHP:
скопировать код в буфер обмена
  1. if(!empty($_POST['someVal']) and !empty($_POST['someID'])) {
  2.      $someVal = (int)$_POST['someVal'];
  3.      $someID = (int)$_POST['someID'];
  4.     }
  5.     if(isset($someVal) && $someVal != 0 ) {
  6.         $counts=get_counts_p($someID);
  7.         $counts++;
  8.         $stm  = db_connect()->prepare("UPDATE pozdravleniya SET counts=:counts WHERE id=:id");        
  9.         $stm->execute(array('counts'=>$counts, 'id'=>$someID));        
  10.        // echo json_encode($someVal); // возвратим то значение, которое получили
  11.         // *передавать можно и массив данных, и одиночные значения
  12.         exit;
  13.     }

Все работает на ура! Но не могу догнать как вернуть кол-во голосов из базы ( с новым записанным значением) без перезагрузки в нужное место? т.е пока реализовал на 50% запись делаю, возврат не получается
Пробовал так
- как то неодекватно ведет себя
Andruxa Отправлено: 12 Декабря, 2013 - 13:53:31 • Тема: Cчетчик кликов по картинке без перезагрузки php+ajax с записью в БД • Форум: Напишите за меня, пожалуйста

Ответов: 22
Просмотров: 219
Ну методом научного тыка, вроде нашел консоль ( я мозилой пользуюсь) , только честно говоря, что там смотреть не совсем понимаю
Andruxa Отправлено: 12 Декабря, 2013 - 13:31:49 • Тема: Cчетчик кликов по картинке без перезагрузки php+ajax с записью в БД • Форум: Напишите за меня, пожалуйста

Ответов: 22
Просмотров: 219
Про консоль все равно не понял Не понял , по поводу селектора, подправил
CODE (javascript):
скопировать код в буфер обмена
  1.  $('.plus').on('click', function(){ ...

Путь прописал полный, что бы уже наверняка Улыбка))
Andruxa Отправлено: 12 Декабря, 2013 - 12:39:15 • Тема: Cчетчик кликов по картинке без перезагрузки php+ajax с записью в БД • Форум: Напишите за меня, пожалуйста

Ответов: 22
Просмотров: 219
Цитата:
Посмотрите в консоле какие данные возвращает сервер, есть ли ошибки. Добавьте в метод ;юфофч() параметр error:
Про это вообще ничего не понял Улыбка как это сделать.
Цитата:
Покажите, как вы формируете ответ в серверной части.

Такая же и осталась
PHP:
скопировать код в буфер обмена
  1. if(!empty($_POST['someVal'])) $someVal = (int)$_POST['someVal'];
  2.     if(isset($someVal) && $someVal != 0) {
  3.         // обрабатываем полученные данные, напр. записываем значение в БД
  4.         // и возвращаем ответ
  5.         echo json_encode($someVal); // возвратим то значение, которое получили
  6.         // *передавать можно и массив данных, и одиночные значения
  7.         exit;
  8.     }
Andruxa Отправлено: 12 Декабря, 2013 - 12:07:02 • Тема: Cчетчик кликов по картинке без перезагрузки php+ajax с записью в БД • Форум: Напишите за меня, пожалуйста

Ответов: 22
Просмотров: 219
Deonis
CODE (html):
скопировать код в буфер обмена
  1.  <button data-rating="1">Лайк</button>
  2.     <button data-rating="-1">Не очень лайк</button>
  3.     <div id="res">Текущая оценка: <span>0</span></div>

Я так понимаю, что data-rating="1" будет передаваться как переменная со значением 1, так!?
Вопрос, такого рода значения можно к любым тегам приклеить?
Так можно ?
CODE (html):
скопировать код в буфер обмена
  1. <a href=' ' class='plus' data-rating='1'></a>


Ваш пример работает на ура, а вот при модернизации под себя, че то возникают трудности
Вот что у меня получается:
CODE (html):
скопировать код в буфер обмена
  1. <div class='dop_blok' ><a href='' class='plus' data-rating='1'></a><b>0</b></div>

CODE (javascript):
скопировать код в буфер обмена
  1.  $(function(){
  2.         var output = $(".dop_blok b"); // элемент, в который будем выводить результат
  3.         $('a .plus').on('click', function(){
  4.             var cRating = $(this).data('rating'); // значение атрибута data-rating нажатой кнопки
  5.             $.ajax({
  6.                 url: 'http://localhost/site.ru/actions.php', // Путь к обработчику
  7.                 type: 'POST', // метод передачи данных
  8.                 dataType: 'json', // формат, в котором ожидается получить ответ с сервера
  9.                 data: {someVal: cRating}, // передаваемые данные
  10.                 success: function(data){
  11.                     // data - сформированный ответ на стороне сервера
  12.                     output.text(output.text()*1 + data); // выводим информацию в нужный блок
  13.                 }
  14.             });
  15.         });
  16.     });

Но результата 0.
И еще такое момент, поясните вот эту запись
CODE (javascript):
скопировать код в буфер обмена
  1.  $(this).data('rating'); // При объявлении переменной у нас же запись в таком формате: data-rating ,  тут в виде .data('rating')  
Andruxa Отправлено: 11 Декабря, 2013 - 20:00:35 • Тема: Cчетчик кликов по картинке без перезагрузки php+ajax с записью в БД • Форум: Напишите за меня, пожалуйста

Ответов: 22
Просмотров: 219
Deonis
Спасибо! Да, похоже то что искал, буду разбираться...
Andruxa Отправлено: 11 Декабря, 2013 - 18:24:26 • Тема: Cчетчик кликов по картинке без перезагрузки php+ajax с записью в БД • Форум: Напишите за меня, пожалуйста

Ответов: 22
Просмотров: 219
Друзья! Помогите пожалуйста сделать счетчик кликов (что то типа лайков) по картинке, без перезагрузки и с записью значения в БД.
Задание! Сделать систему оценок текстовых поздравлений.
1) при нажатии на картинку(ссылку) заносить/прибавлять +1 в поле таблицы(например counts) соответствующего поздравления (по id поздравления), и думаю здесь же добавлять в отдельную таблицу IP проголосовавшего;
2) если пользователь голосует снова за это же поздравление, вывести сообщение, что он уже голосовал за это поздравление ( IP у нас будет в таблице, т.е при повторном нажатии сделать проверку на существование IP в базе).
3) сделать автоочистку таблицы IP например через сутки.

Думаю задание не сильно сложное, основной вопрос для меня в передаче параметров без перезагрузки, с Ajax пока не дружу Недовольство, огорчение

У кого есть желание и время , буду благодарен за помощь!
Andruxa Отправлено: 09 Декабря, 2013 - 19:03:50 • Тема: Происходит сдвиг страницы, помогите • Форум: HTML, Дизайн & CSS

Ответов: 8
Просмотров: 1443
IllusionMH
Цитата:
но это сомнительное решение
может и сомнительное, но решение ! Спасибо!
Цитата:
как минимум width: 100% и границы+паддинги не дружат, если нигде нет box-sizing: border-box;. Убирайте задание ширины, оно не нужно для блочных объектов.
И без живого примера будет только гадание, так что ссыль в студию

А можно об этом немного подробнее, или ссылку где почитать?
Andruxa Отправлено: 09 Декабря, 2013 - 18:52:38 • Тема: Происходит сдвиг страницы, помогите • Форум: HTML, Дизайн & CSS

Ответов: 8
Просмотров: 1443
IllusionMH пишет:
Andruxa, а вы заметили что справа появляется полоса прокрутки. которая уменьшает эффективную ширину страницы и это сдвигает ее центр?


только сейчас на это обратил внимание Улыбка так может тогда пока не стоит заморачиваться, до заполнения сайта инфой.
Или же все таки есть решение такой проблемки?
Andruxa Отправлено: 09 Декабря, 2013 - 18:46:24 • Тема: Происходит сдвиг страницы, помогите • Форум: HTML, Дизайн & CSS

Ответов: 8
Просмотров: 1443
http://p0zdravlenie[dot]ru - левые ссылки
Andruxa Отправлено: 09 Декабря, 2013 - 18:18:32 • Тема: Происходит сдвиг страницы, помогите • Форум: HTML, Дизайн & CSS

Ответов: 8
Просмотров: 1443
суть в следующем..
Сайт состоит из 3х частей (опускаю шапку и footer)
CODE (css):
скопировать код в буфер обмена
  1. #container {
  2.  width: 1100px; /* Ширина макета */
  3.  margin: 0 auto; /* Выравнивание по центру */
  4.  border: solid 1px #FF99CC;
  5. }
  6.  
  7. #left_site_bar{  
  8.     float: left;
  9.     width: 200px;
  10.     margin-top: 5px;
  11.    /* border: solid 1px #969696; */    
  12. }
  13.  
  14. #content{
  15.     margin: 0 200px 0 200px;    
  16.     width: 680px;
  17.     border:  solid 1px #00FF00;
  18.     min-height: 600px;
  19.     padding: 5px;    
  20.     margin-top: -5px;
  21.    /* background: #FFFFFF;*/
  22. }
  23.  
  24. #right_site_bar{
  25.     position: relative;
  26.     margin-left: -10px;
  27.     float: right;
  28.     margin-top: 5px;        
  29.     width: 200px;    
  30.     border: solid 1px #000080;
  31. }

весь контент выводится так:
CODE (css):
скопировать код в буфер обмена
  1. <div id="content">
  2. <div class="m4">Название</div>
  3. <div class="m4_1"> содержимое контента</div>
  4. </div>

CODE (css):
скопировать код в буфер обмена
  1. /* Стиль центрального блока */
  2. .m4{  
  3.   width: 100%;
  4.   height: 38px;
  5.   padding-left: 2px;
  6.   background: url(img/sprite-str_4.png) repeat-x 0 -6px;
  7.   color: #fff;  
  8.   font:  14px/35px Georgia, serif;  
  9.   text-align: left;
  10.   text-shadow: 1px 1px 1px #000;
  11.  
  12. }
  13. .m4_1{
  14.      font-family: Verdana, Arial, Helvetica, "Trebuchet MS", Tahoma, Geneva, "Lucida Sans Unicode", "Lucida Grande", sans-serif;
  15.      width: 100%;          
  16.     /* padding: 15px 5px 5px 5px;*/
  17.      margin-top: -6px;  
  18.      border: 1px solid #1c7610;
  19.      border-top: none;
  20.      border-radius: 0 0px 5px 5px;
  21.      background: #f7fcf6;
  22.      line-height: 1.5;
  23.      font-size: 1em;          
  24. }

в чем вопрос! Без паддингов(п.16 второй код) страница работает нормально ( просто переходы по ссылкам, все не двигается все ОК), если выставляю паддинги: padding: 15px 5px 5px 5px;, то страница при переходе по ссылкам, почему то убегает вправо на 3-5px, т.е заметен сдвиг когда клацаю по ссылкам, подскажите в чем может быть проблема?
http://p0zdravlenie[dot]ru - левые ссылки
Andruxa Отправлено: 07 Ноября, 2013 - 18:50:52 • Тема: Проблема с cookies • Форум: Вопросы новичков

Ответов: 5
Просмотров: 217
редирект есть!
PHP:
скопировать код в буфер обмена
  1.  echo"<META HTTP-EQUIV=REFRESH CONTENT='0; URL=$dom/module/adminka'>"; // такой мне больше нравится :) с header( иногда возникают траблы  

Kandiar - же говорю, что вижу сообщение
PHP:
скопировать код в буфер обмена
  1.     if ($url[3]=="exit"){
  2.         setcookie ("dostup", "");    
  3.         echo"<META HTTP-EQUIV=REFRESH CONTENT='0; URL=$dom/module'>";
  4.         echo "Уничтожаем сессиию";
  5.     }
и меня сразу перенаправляет...

Страниц (10): « 1 2 [3] 4 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB