2016-01-18 3 views
3

Я хочу автоудалить страницу с помощью PHP и Ajax. Сейчас у меня есть этот код на странице:

<!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>Untitled Document</title> 
</head> 
<body> 
<a href="Page-Like.php?idSub=12&idCat=32" class="post"><i class="fa fa-heart-o"></i></a> 
</body> 
</html> 

Когда пользователь нажимает на ссылку, он будет перенаправлен на другую страницу под названием «Page-Like.php»

include("config.php"); 

//get vars 
$idSubliminal=$_GET["idSubliminal"]; 
$idCategoria=$_GET["idCategoria"]; 

// mysql_query("insert into Rating .... (mysql insert query) 


echo "<script> 
location.href=\"AudioSubliminal.php?idSubliminal=$idSubliminal&idCategoria=$idCategoria\"; 
</script>"; 

То, что я хочу, чтобы сделайте это с помощью usig Ajax, чтобы не обновлять страницу. Я знаю, что мне не хватает кода javascript, но я хотел бы получить некоторые предложения для завершения этого скрипта.

Спасибо!

+0

Вы не должны использовать функции mysql_ *, устаревшие в PHP7, и ваш код открыт для SQL-инъекции. Читайте здесь: http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php –

ответ

0

Все, что вам нужно, это простой запрос ajax для достижения вашей функциональности. проверьте запрос образца ниже.

function ajaxpr(){ 
     var URLString="idSub=12&idCat=32"; 
     ajax_request = $.ajax({ 
       type: 'GET', 
       url: "Page-Like.php", 
       data: URLString, 
       dataType : 'html', 
       context: $(this), 
       success: function (msg) 
       { 
        //perform the required operation after success 
       }); 

     } 
0

добавить функцию onclick on tag. затем определите эту функцию, используя:

$.ajax({ 
     type: 'GET', 
     data: {idSub: "12", idCat: "32"}, 
     url: "Page-Like.php", 
     dataType: 'JSON', 
     success: function (response, textStatus, jqXHR) { 
      //DEFINE FUNCTION HERE 
     } 
    }); 

Это использование функции ajax без страницы обновления.

0

Вы можете использовать множество методов для реализации Ajax на вашем коде.

Один из них jQuery, другой - mootools и т. Д. Зависит от библиотеки, которую вы знаете или хотите узнать.

0

Использование ajax для загрузки страницы очень просто. Перейдите по этой ссылке http://www.w3schools.com/ajax/

function loadDoc() { 
    var xhttp = new XMLHttpRequest(); 
    xhttp.onreadystatechange = function() { 
    if (xhttp.readyState == 4 && xhttp.status == 200) { 
    // Change this to your desired DOM tag 
    document.body.innerHTML = xhttp.responseText; 
    } 
    }; 
    xhttp.open("GET", "Page-Like.php?idSub=12&idCat=32", true); 
    xhttp.send(); 
} 

Теперь это просто вопрос сдачи слушателя событий для запуска loadDoc функции(). Если ссылка динамическая, вы можете проанализировать параметр для функции.

Однако, я заметил, что у вас есть скрипт js внутри вашего php, который перенаправит снова на AudioSubliminal.php. Если это ваш желаемый поток, тогда все в порядке. Если нет, то вы можете создать еще одну функцию

function loadAudioSubliminal(idSub, idCat) { 
     var xhttp = new XMLHttpRequest(); 
     xhttp.onreadystatechange = function() { 
     if (xhttp.readyState == 4 && xhttp.status == 200) { 
     // Change this to your desired DOM tag 
     document.body.innerHTML = xhttp.responseText; 

     } 
     }; 
     xhttp.open("GET", "AudioSubliminal.php?idSubliminal=" + idSub + "&idCategoria=" + idCat, true); 
     xhttp.send(); 
    } 

и модифицированный loadDoc(), чтобы получить параметр таким образом, что idSub и idCat могут быть переданы снова. например:

function loadDoc(idSub, idCat) { 
    var xhttp = new XMLHttpRequest(); 
    if (xhttp.readyState == 4 && xhttp.status == 200) { 
     // Change this to your desired DOM tag 
     document.body.innerHTML = xhttp.responseText; 

     // run the function after finished loading Page-like.php 
     loadAudioSubliminal(idSub, idCat) 
    } 
    xhttp.open("GET", "Page-Like.php?idSub=" + idSub + "&idCat=" + idCat, true); 
    xhttp.send(); 
} 
Смежные вопросы