はじめまして。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>';
}
}
}
});
}
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
フォロー登録画面と同じ様な<form>を用意しておいて
Form.serialize() を使うと簡単だと思います。
//idを振っておきます
<form id="register">
<input name="account_id" id="account_id" type="hidden" value="~~~">
<input name="follow_id" id="follow_id" type="hidden" value="~~~">
<input name="subtitle" id="subtitle" type="hidden" value="~~~">
</form>
//動的に設定するならこんな感じで
$('account_id').value = '123';
new Ajax.Request(url, {
method: 'post',
postBody : Form.serialize("register"),
onLoading: function() {
~~~
No.1
- 回答日時:
かいとうがつきませんね。
このてのかいとうは、にがてです。
なので、かいとうには つながらないかも?
if (httpObj.status == '200') {
もどりちは、もじれつ?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLのmaxで求めた値を変数に代...
-
JavaScriptでtabindexの変更っ...
-
ドラッグ & ドロップでのド...
-
struts selectbox optionsColle...
-
jQueryを使いformでsubmitした...
-
Selenium4でボタンをクリックで...
-
Ajaxのエンコードで
-
階層別の組織図の自動作成について
-
eval、$.eachで順番が入れ替わ...
-
JavascriptからPHPへのAjax通信...
-
アコーディオンで多階層のメニ...
-
bxsliderで画像毎に表示時間を...
-
変数にドットをいれることはか...
-
たくさんの経由地がある巡回ル...
-
Googleマップに複数のピンを立...
-
readyStateが4にならない原因
-
Rails3でのクリックされたボタ...
-
要素内を常に一番下を表示させたい
-
同一ページ移動時ハンバーガー...
-
AjaxでJSONを受信すると、文字...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Javascriptを使ってQRコード読...
-
JavaScriptでtabindexの変更っ...
-
SQLのmaxで求めた値を変数に代...
-
パソコンで動くjavascriptがス...
-
Selenium Basicの件
-
IndexedDB を使ってファイルア...
-
ドラッグ & ドロップでのド...
-
<input>のvalue値をプルダウン...
-
jquery.csv2table.jsに検索窓
-
HTMLタグのidにaaaという名をつ...
-
プルダウン内容に応じてラジオ...
-
チェックボックスとラジオボタ...
-
javascriptの計算結果をvalue=""に
-
複数対応できるチェックボック...
-
ボタンクリックした際、id末尾...
-
Javascript+PHPでのデータの受...
-
jQueryのclass属性削除ができま...
-
VBAでIEのHTMLタグの要素を操作...
-
Doctrineのjoinについて
-
メールを送信するボタンでOutlo...
おすすめ情報