2013-06-09 2 views
1

Я пытаюсь передать var из jQuery в PHP.Сообщение Ajax для php на той же странице не работает

После исследования я нашел наиболее распространенное предложение сделать это с помощью Post с Ajax и сохранить post var с помощью PHP.

Мои навыки PHP довольно хорошие, но я не могу сказать то же самое о своих навыках JavaScript.

Это то, что я делаю, но, кажется, не работает вообще:

// jquery libray included etc etc 
    <script> 
    $.ajax({ 
     type: "POST", 
     url: "http://currentpage.com", 
     data: "var=value", 
     dataType: string 
    }); 
</script> 
</head> 


<body> 

<?php 
if($_REQUEST["var"] == "value") { 
    echo "var passed and stored"; 
} 
?> 
+1

тип данных должен быть "текст" – Orangepill

+0

'$ .ajax()' имеет как метод успеха, так и метод ошибки, добавьте их оба и поместите в них предупреждение, чтобы увидеть, что выполняется, и если у вас есть некоторые ошибки. – slash197

+0

Что вы получите, когда перейдете на страницу http://currentpage.com?var=value – Miro

ответ

6
<script> 
    $.ajax({ 
     type: "POST", 
     url: "index.php", 
     data: {var:'value'}, 
     dataType: 'text', 
     success:function(data){ 
     // Test what is returned from the server 
     alert(data); 
     } 
    }); 
</script> 
+0

Я просто попробовал это, я также попытался изменить тип dataType на текст в вашем примере, как было предложено выше, но это не сработало. php по-прежнему не повторяет сообщение, которое должно быть опубликовано Я знаю, что php работает на t он сервер, мне нужно также добавить обновление? –

+0

@ TheApptracker: вы приложили значение внутри ''? Я обновил значение «value» в примере –

+0

Да, я использовал точный пример, в котором вы сейчас присутствуете «данные:» {var: 'value'} ",' –

1

Попробуйте

<script> 
    $.ajax({ 
     type: "POST", 
     url: "http://currentpage.com", 
     data: {variablename:'value'}, 
     dataType: "text", //Available types xml, json, script, html, jsonp, text 
     success:function(response){ 
     //Returned from server 
     alert(response); 
     } 
    }); 
</script> 
+0

Я просто попробовал это, но ничего не похоже, но это не сработало. Php по-прежнему не повторяет сообщение, которое должно быть опубликовано. –

+0

Какова имя переменной, которую вы передаете? Это var? Замените variablename на testvariable и на вашем сервере замените этот код 'if ($ _ REQUEST [" testvariable "] ==" value ") { echo" var pass and saved "; } ' –

+0

Он пытался, если ($ _ POST) {echo" hello world ";} но не работает –

Смежные вопросы