Как опубликовать информацию на сервере при нажатии на ссылку? - PullRequest
0 голосов
/ 16 сентября 2010

Хорошо, я хочу, чтобы мои пользователи могли щелкнуть ссылку, которая позволит им добавить фильм в избранное.

Так, например, у меня есть http://xxx.com/favorite.php?userid=1&movieid=1020

ДляВ тот момент, когда все работает хорошо, он добавляет значения в базу данных, но поскольку это фильмы, я не хочу, чтобы страница перезагружалась, поэтому я использую Ajax, с которым я новичок.

Я немного поработал сразличные способы сделать это, но никогда не удавалось.

Ранее я получил большую помощь по моей проблеме PHP, и это было бы замечательно, если бы это могло быть то же самое сейчас!

В основном простощелкните по любимому изображению (которое является ссылкой), и когда действие публикации в базу данных будет выполнено, хорошо покажите другое изображение.

Хорошо, я пробовал много способов, включая JSON, но я знаю, что метод GET может бытьуязвим, но он использует сеанс + больше безопасности, поэтому я уверен, что сейчас он безопасен, но я всегда могу поработать над этим позже.

Хотя я хотел бы узнать хороший способ на хорошем примере,потому что я до сих пор невытащил это.

Спасибо за ответы!Признанный.

Редактировать:

Или, если нет, каков будет лучший способ разместить информацию, что это проще?Лучший способ, который я нашел, это получить, так как я не настолько продвинут в AJAX / etc

Также в моем файле fav.php информация передается на сервер, и в этом весь смысл.

Ответы [ 2 ]

1 голос
/ 16 сентября 2010

Вам необходимо получить JQuery и установить его в свое веб-приложение (см. Их документацию по началу работы). В вашем HTML вы будете иметь:

<div id="fav_12_345"><a href="javascript:void(null)" id="addfav">Favorite</a>

А в вашем javascript:

$("a#addfav").onclick(function(ev) {
    data_id = $(ev).parent.id();
    $.post('someurl', { data_id: data_id }, function(res) {
        // this bit gets run once the call has been processed on the server
        if (res) {
            // update the new image
            $("img#blah").attr("src", 'someurl');
        }
       }, 'json');
 });

И в вашем PHP

$data_id = your_sanitise_user_input($_REQUEST['data_id']);
$data = explode('_', $data_id);
$sql = "UPDATE table set fav_id=$data[1] where id=$data[0]";
$res = your_sql_lib_thing($sql);
print "{res: '$res'}";

Весь этот код является приблизительным и синтаксически ошибочным, вероятно, но дает вам общее представление.

0 голосов
/ 16 сентября 2010

Если вы хотите получить данные, вы можете использовать метод .getJSON jQuery http://api.jquery.com/jQuery.getJSON/, или если вы хотите опубликовать данные, вы можете использовать его метод .post () http://api.jquery.com/jQuery.post/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...