2016-11-01 3 views
-2

ログインページで始まる簡単なチャットルームをindex.phpに作成しています。
パスワード変数をPHP_SELFに送信するフォームがあり、PHPが変数を取得し、パスワードが正しい場合、ユーザーはチャットルームに正常に入ります。

フォームのように機能するメッセージ入力があります。
しかし、フォームがメッセージ入力を送信すると、ページの再読み込みが行われ、ユーザーが最初に(ログインページに)移動するため、フォームを使用できなくなります。
ページを再読み込みせずにvariableを送信します。

私は$var = "document.getElementById('input).innerHTML"を使ってみましたが、これは何の価値も返しません!

私はAJAXを使用しようとしました。チャットルームはindex.php、私のアシスタントページはpost.phpです。
index.php AJAXは、このようなものを作品:

  var message = 'document.getElementById('input).innerHTML'; 
      $.ajax({ 
       type: "POST", 
       url: 'post.php', 
       data: message, 
       success: function(data) 
       { 
        alert("200"); 

       } 
      }); 
     }); 

post.phpは、変数を受け取り、それが再びindex.phpに変数を送信します。 post.php PHP:

if(isset($_POST['message'])) $mymsg= $_POST['message']; 

そしてpost.php AJAX:

  var message = '<?php echo $mymsg ?>'; 
      $.ajax({ 
       type: "POST", 
       url: 'index.php', 
       data: message, 
       success: function(data) 
       { 
        alert("200"); 

       } 
      }); 
     }); 

私は、ユーザーが正常にlogedと彼のメッセージを書いて提出し、クリックされたとき、これらが起こることを望ん意味。 index.phpは、変数を受け取り、データベーステーブルに挿入します。 しかし、これは私のために働かない。 何が間違っているか、どうすればいいですか?

+2

'$ POST_'は、それが大きな構文エラーであることを認識しています。あなたはワゴンの後ろに馬を置いています。 –

+0

また、 'if(var ==' –

+0

と 'on the fly 'を編集しているのではなく' if(var = ')を割り当てています。元の投稿http://stackoverflow.com/revisions/40363160/1 –

答えて

1

ブラウザをリロードせずに、フォームで

<script> 
$(document).ready(function(){ 
    $("#varbtn").click(function(){ 
     var var1 = $("#var").val(); 

      $.ajax({ 
       method: "POST", 
       url: "post.php", 
       data: { 
        var:var1 
        }, 
       success: function(data){ 
       //#success will be the id of the div you want to put the response of the php file 
        $("#success").html(data); 
       } 
      }); 
    }); 
}); 
</script> 

<body>タグの前にこれを入れjavascriptの

を使用することができ、あなたが<form>タグの記事で

<input type="text id="var" /> 
<button id="varbtn"> Submit</button> 

<!--this div will be the result of the post.php file--> 
<div id="success"></div> 

を作成する必要がいけません.php

//will check if the person will direct visit that post.php, this is not secured enough but hes doing his job actually 
<?php 
if(isset($_SERVER['HTTP_REFERER'])){ 
    if(!isset($_POST['var'])){ 
     //your codes here 
    } 
} 
?> 
+0

問題なし... :) –

関連する問題