Javascript+PHPでのデータの受け渡し
はじめまして。PHP+MYSQLについては、まだ知識があるものの、Javascriptについては
初心者で知識不足の者です。
twitterのフォローのようなプログラムをphp+mysqlで作成したのですが
これをJavascriptを使用して、ユーザーには画面をまたがずに
「フォローする」⇒「フォローしました」
とさせたいのですが、どうすればよいか行き詰ってしまいました。
ちなみに、php+mysqlのみでは現在下記のとおりになっています。
■フォロー登録画面
<form name="register" action="adduser.php" method="post">
<input name="account_id" type="hidden" value="<?= $_SESSION['users_id'] ?>">
<input name="follow_id" type="hidden" value="<?php varout($users['users_id']) ?>">
<input name="subtitle" type="hidden" value="$subtitle">
<input type="submit" value="フォローする">
■mysqlへinsertする画面(adduser.php)
$query = "INSERT INTO watchuser SET
user_from=?,user_to=?,created_at=NOW()";
execQuery($db, $query, array($account_id, $follow_id));
javascriptで制御する為に
フォロー登録画面を下記にように変更し、
<a href="javascript:follow('<?php varout($users['users_id']) ?>');" class="btnBlue" title="フォローする">フォローする</a>
javascript内に、下記のように記述しているのですが
動作せずに困っております。
どなたかお詳しい方、ご連絡いただけますと幸いです。
※【補足】jqueryは、jquery-1.7.1.min.jsを読み込んでいます
function follow(account) {
var url ='/adduser.php';
var data = 'account=' + account;
var btn = $('follow_btn');
var follower_num = $('follow_id');
if (follower_num != null) {
var follower_num_value = parseInt(follower_num.innerHTML);
}
new Ajax.Request(url, {
method: 'post',
parameters: data,
onLoading: function() {
btn.innerHTML = '<img src="/images/loading.gif" />';
},
onComplete: function(httpObj) {
if (httpObj.status == '200') {
btn.innerHTML = '<span class="btnRed">フォローしました!</span>';
if (follower_num != null) {
follower_num.innerHTML = follower_num_value + 1;
}
} else {
var res = httpObj.responseText;
if (res) {
btn.innerHTML = '<span class="error">' + res + '</div>';
} else {
btn.innerHTML = '<span class="error">エラー</div>';
}
}
}
});
}
お礼
すいません、コピペする文章間違えてました…;