Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Передача переменной из JS в PHP методом ajax (https://javascript.ru/forum/jquery/11443-peredacha-peremennojj-iz-js-v-php-metodom-ajax.html)

skalka 24.08.2010 06:50

Передача переменной из JS в PHP методом ajax
 
Ну в общем стандартный вопрос новичка)) Как???
Передать нужно переменную findres
Пытаюсь делать вот так. JS:

jQuery(this.Settings.FindButtonID).bind("click",  function(){
       
          $.ajax({
            url: '/content/relsides/relsidestable.php',
            data : '&findres=' + jQuery("#eITfind").val(),
            type : "POST",
            success: function (data, textStatus) {
             
            }
        });


Firebug показывает что данные передються в таком виде:

Параметры
findres КИП

Исходный код
&findres=КИП

Потом в PHP методом post вызываю:

if (isset($_POST['_search']) && $_POST['_search'] == 'true') {
       $myWhere = "`Name` LIKE '" . $_POST['findres']. "'";
          }

Подскажите что не так пожалуйста.

roma86 24.08.2010 08:17

Здравствуйте. Для начала почему ты передаешь
...
data : '&findres=' + jQuery("#eITfind").val(),
....


а не
...
data : 'findres=' + jQuery("#eITfind").val(),
....

?
Для начала отдебаж с помощью alert получаешь ди ты нужные значения в совю переменную когда используешь
....
jQuery("#eITfind").val()
....

а затем отправляй в скрипт php.

skalka 24.08.2010 08:21

Ну наверное я где то в примерах увидела и написала. Пробовала и просто 'findres' итог тот же(((

skalka 24.08.2010 08:26

Данные в переменную получаю проверяла. Когда в PHP ее вызываю, значение null становиться

roma86 24.08.2010 10:53

Как вы проверяете что пришло в relsidestable.php ?
Попробуйте проверить на любых данных.
success: function (data, textStatus) {
alert (data);
            }

что выдает?
используйте всегда
error: function(){
alert ("Ошибка отправки ajax");
}

иначе как вы знаете что запрос выполнен?

Вот быстренько сваял пример.
файл index.php
............
$(document).ready(function(){
   $("#test").click(function(event){
     
$.ajax({
url: 'work.php',
data : 'postVar="kjkljlkjkl"',
type : "POST",
success: function (data) {
alert (data);
},
error: function(){
alert ("No PHP script: ");
} 
   });

return false;
});

 });
...............
<body>
<a id="test" href="#">test link</a>
</body>

отправляет запрос в файл work.php
<?php
echo $_POST['postVar'];

?>

все работает. дебажте и разбирайтесь в примере.

skalka 25.08.2010 07:38

продебажила все что можно, данные в переменную записываються, alert(data) показывает :[objectXTML].

теперь возникла новая ошибка, принажатии на кнопку дебаггер показывает ошибку

reps.breakOnThisError has not source file for error.href: http://localhost/index.php#
link is not defined


я не понимаю причем здесь index.php, я ведь задаю свой url? почему ругаеться что не определена ссылка(((

roma86 25.08.2010 08:09

Ну если у вас данные передаются, вы считаете, то вопросы по php не в эту тему. но я бы не сильно радовался. если вы строку передадите в переменной findres у вас alert(data) тоже покажет [objectXTML]? вы на чем пишите? в смысле на каком движке/фреймворке.

MadGest 28.08.2010 12:05

var val =   jQuery("#eITfind").val();

            $.ajax({
            url: "content/relsides/relsidestable.php",
            type : "POST",
            data : ({findres:val}),
            success: function (responseText) {
                     alert(responseText);
            }


А в PHP сделать вывод переменной через echo. И хотя бы посмотреть что передается и передается ли оно вообще.


Часовой пояс GMT +3, время: 19:46.