Отправьте переменную Php с помощью jquery в скрипт php

0

Я пытаюсь отправить переменную с jquery в php-скрипт, это моя первая попытка после прочтения документации, но она не будет работать. может ли кто-нибудь дать мне совет? Я не понял ошибку в коде. Переменная, которую я хочу отправить, равна $ id. Я определил его с '1'

<?php
$id = '1';
?>

часть jquery

<script>
$(document).ready(function() {    // Anfang Dokument Ready Funktion
$("p").click(function () {  // Anfang Klick Funktion
 var id = $(this).html();    // Inhalt in Klickfunktion
// Beginn Ajax Segment mit Angabe von Typ Url Data und Div #ausgabe
    $.ajax({
        type: 'POST',
        url: 'http://localhost/ajax.php',
        data: 'id='+id',
        success: function(data){
            $('#ausgabe').html(data);
        }
        });     // Ende Ajax Segment 
});    // Ende Klick Funktion
});  // Ende Dokument Ready Funktion
</script>

<div id="ausgabe"></div>
<p><button>Sende Variable</button></p>

Ajax.php

<?php
$id = $_POST['id'];
echo $id;
?>
  • 0
    $_POST['id]' - синтаксическая ошибка; попробуйте обменять ' и ]
  • 0
    изменить id = '+ id' на "id": id
Показать ещё 1 комментарий
Теги:

3 ответа

0

Просто отправьте это так

 $.ajax({
        type: 'POST',
        url: 'http://localhost/ajax.php',
        data: {id : <?php echo $id ?>},
        success: function(data){
            $('#ausgabe').html(data);
        }
        });     // Ende Ajax Segment 
  • 0
    data: {id: <? php echo $ id?>}, это не очень хорошая практика, включайте php-код в js. будет лучше использовать тег данных или в поле ввода, а затем получить его по элементу
  • 0
    но это единственный способ, как это работает для меня сейчас, однако другие способы не будут работать в одном случае я получаю ошибку неопределенного индекса в другом нет результата
0

Правильная форма отправки информации с ajax на PHP:

$.ajax({
        type: 'POST',
        url: 'http://localhost/ajax.php',
        data: id:id,
        success: function(data){
            $('#ausgabe').html(data);
        }
        }); 

Отправить по ссылке. Если вы хотите отправить без ссылки, просто используйте:

$.ajax({
        type: 'POST',
        url: 'http://localhost/ajax.php',
        data: id,
        success: function(data){
            $('#ausgabe').html(data);
        }
        }); 
0

data-* на data-* атрибуты лучше:

HTML

<a href="#" data-id="<?php echo $id; ?>">Click me</a>

JS

$(function(){

  $('a[data-id]').click(function(event){

    event.preventDefault();

    // $(this).data('id') fetches the data-id attribute from your anchor
    $.post( someUrl, { id : $(this).data('id')} ).done(function(){ ... })

  })

})

Ещё вопросы

Сообщество Overcoder
Наверх
Меню