За последние 24 часа нас посетили 42504 программиста и 1816 роботов. Сейчас ищут 880 программистов ...

Помогите заставить работать маленький скрипт

Тема в разделе "PHP и базы данных", создана пользователем ZMANZ, 5 окт 2012.

  1. ZMANZ

    ZMANZ Активный пользователь

    С нами с:
    10 мар 2008
    Сообщения:
    161
    Симпатии:
    0
    Здраствуйте, при отправке формы проверяю при помощи php нету ли ошибок, если нету, то вывожу что "Форма успешно отправлена". Но не могу понять как прикрепить сюда jq, в такой вот форме он не работает.
    Вообще желательно чтобы сообщение выходило во всплывающем окне, но вот не могу заставить работать jq вместе с php, по отдельности jq работает без проблем. Проверка на php проходит успешно.

    Код (Text):
    1. <? if ($FORM->__error_msg == "" & $FORM->__form_validate_errors == "") {?>
    2.             <script type="text/javascript">
    3.         $(docu ment).ready(f unction() {
    4.             $("div#kontakti").after("Форма успешно отправлена"); )
    5.         }
    6.             </script>
    7.         <? } ?>
     
  2. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    А что такое jq? Может JS (JavaScript)?

    Ну и по теме.. PHP это серверный язык. Когда ты отправляешь запрос на сервер, то "создаёшь" новую страницу, которую возвращаешь клиенту, т.е. пользователю. Говоря о всплывающем окне, ты скорее всего хочешь подобное провернуть без перезагрузки. а по тому в данном случае наверное лучше воспользоваться Ajax
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    jquery вестимо

    у jQuery есть стандартный диалог в ui-шках
     
  4. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    ааа, точно, не сразу обратил внимание на сам скрипт. Сейчас маленький код нарисую, а то вопрос слишком "скользки", малость не понятно что человеку нужно
     
  5. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    Зачем пробелы?
     
  6. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    Накидал просто принцип работы
    файл index.php
    Код (Text):
    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4.     <title>Маленький примерчик на jQuery (Ajax)</title>
    5.     <script src="jquery.js"></script>
    6. </head>
    7. <body>
    8. <div>
    9.     <form id="form">
    10.         <input type="text" name="name" id="id_name"/>
    11.         <input type="button" value="Отправить" onclick="test();"/>
    12.     </form>
    13. </div>
    14. <div id="result"></div>
    15. <?php
    16.  
    17. ?>
    18. <script>
    19.     $("#result").text('Начало');
    20.     function test() {
    21.         $a = $("#id_name").val();
    22.         $.post(
    23.                 "test.php",
    24.                 {name: $a},
    25.                 function (data) {
    26.                     $("#result").html(data);
    27.                 }
    28.         );
    29.         return false;
    30.     }
    31. </script>
    32. </body>
    33. </html>
    Файл test.php
    Код (Text):
    1. <?php
    2. $text = (isset($_POST['name'])) ? $_POST['name'] : '';
    3.  
    4. echo '<h4>Результат:</h4>';
    5. echo '<p>Сообщение: ' . $text . '</p>';
    6. echo '<p>Время: ' . date("H:i:s") . '</p>';
     
  7. Swapf

    Swapf Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    82
    Симпатии:
    0
    Адрес:
    Россия, Самарская обл, Сызрань
    Не совсем понял в чем у тебя проблемы. Скрипт ниже в колбэке вызывает всплывающее окно с подсказкой - результатом работы скрипта. Ты этого добивался?

    фронт
    Код (Text):
    1.  
    2. <html>
    3. <head>
    4.     <title>Маленький примерчик на jQuery (Ajax)</title>
    5. <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>
    6. </head>
    7. <body>
    8. <div>
    9.     <form id="form">
    10.         <input type="text" name="name" id="id_name"/>
    11.         <input type="button" value="Отправить" onclick="test();"/>
    12.     </form>
    13. </div>
    14. <style>
    15. .stick
    16. {
    17. background-color: green;
    18. color:white;
    19. margin:30px;
    20. padding:10px;
    21. display:block;
    22. width:200px;
    23. border-radius: 15px;
    24. }
    25. </style>
    26. <?php
    27.  
    28. ?>
    29. <script>
    30. $.stickr = function(o) {
    31.     var o = $.extend({   // настройки по умолчанию
    32.         time:2000, // количество мс, которое отображается сообщение
    33.         speed:'slow', // скорость исчезания
    34.         note:null, // текст сообщения
    35.         className:null, // класс, добавляемый к сообщению
    36.         sticked:false, // не выводить кнопку закрытия сообщения
    37.         position:{top:0,right:0} // позиция по умолчанию - справа сверху
    38.     }, o);
    39.     var stickers = $('#jquery-stickers'); // начинаем работу с главным элементом
    40.     if (!stickers.length) { // если его ещё не существует
    41.         $('body').prepend('<div id="jquery-stickers"></div>'); // добавляем его
    42.         var stickers = $('#jquery-stickers');
    43.         stickers.css('position','fixed').css(o.position); // позиционируем
    44.     }
    45.     var stick = $('<div class="stick"></div>'); // создаём стикер
    46.     stickers.append(stick); // добавляем его к родительскому элементу
    47.     if (o.className) stick.addClass(o.className); // если необходимо, добавляем класс
    48.         stick.html(o.note); // вставляем сообщение
    49.     if (o.sticked) { // если сообщение закреплено
    50.         var exit = $('<div class="exit"></div>');  // создаём кнопку выхода
    51.         stick.prepend(exit); // вставляем её перед сообщением
    52.         exit.click(function(){  // при клике
    53.             stick.fadeOut(o.speed,function(){ // скрываем стикер
    54.                 $(this).remove(); // по окончании анимации удаляем его
    55.             })
    56.         });
    57.     } else { // если же нет
    58.         setTimeout(function(){ // устанавливаем таймер на необходимое время
    59.             stick.fadeOut(o.speed,function(){ // затем скрываем стикер
    60.                 $(this).remove(); // по окончании анимации удаляем его
    61.             });
    62.         }, o.time);
    63.     }
    64. };
    65.  
    66.     $("#result").text('Начало');
    67.     function test() {
    68.         $a = $("#id_name").val();
    69.         $.post(
    70.                 "test.php",
    71.                 {name: $a},
    72.                 function (data) {
    73.                     //$("#result").html(data);
    74.               $.stickr({note: data,className:'classic'});
    75.                 }
    76.         );
    77.         return false;
    78.     }
    79. </script>
    80. </body>
    81. </html>
    бэк
    Код (Text):
    1.  
    2. <?php
    3. $text = (isset($_POST['name'])) ? $_POST['name'] : '';
    4.  
    5. echo '<h4>Результат:</h4>';
    6. echo '<p>Сообщение: ' . $text . '</p>';
    7. echo '<p>Время: ' . date("H:i:s") . '</p>';
    8. ?>
    Функция реализации всплывающей подсказки взята с http://recens.ru/jquery/plugin_stickr.html
     
  8. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    я и не собирался. Я и не собирался полностью писать за человека полностью код. Я указал что вообще принцип подхода совершенно иной.
     
  9. Swapf

    Swapf Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    82
    Симпатии:
    0
    Адрес:
    Россия, Самарская обл, Сызрань
    Давай еще раз)) Что ты хочешь чтобы какой скрипт конкретно делал?
     
  10. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    и к чему такой навороченный скрипт для всплывающего окна? Достаточно простого toggle и прописать стили.

    Добавлено спустя 32 секунды:
    Обрати внимание, что я не задавал вопрос, а отвечал на него
     
  11. Swapf

    Swapf Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    82
    Симпатии:
    0
    Адрес:
    Россия, Самарская обл, Сызрань
    сори, дружище, туплю)))
    На работе урывками делаю. Так понял все уже решено..