これには多くのものがありますが、私の場合は特に動作するものは見つかりません。以下は、PHPとHTMLの2つのテストファイルです。 HTMLファイルには、それぞれボタンの付いた2つのテキストボックスがあります。私は、次のことが起こるしたいと思います:[送信]ボタンがクリックされたときにサーバPHPファイルからクライアントWebページへの文字列の返却
上位テキストボックスのデータは、PHPファイルに送信します。 これは機能します!
PHPファイルはテキストファイルを開き、データを追加します。 これは機能します!
[受信]ボタンをクリックすると、PHPファイルがテキストファイルを開き、データを読み込みます。 これは機能します!
今私は困惑しています。 PHPファイルからHTMLファイルの下のテキストボックスにデータを戻すにはどうすればよいですか?
注:データの転送にはjquery.redirect
プラグインを使用しています。
HTMLファイル:
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset="UTF-8">
<script src='jquery-2.1.4.js'></script>
<script src="jquery.redirect.js"></script>
<title>Test</title>
</head>
<body>
<input id='send' type='text'></input>
<div id='btnSend'><center>Send</center></div>
<input id='receive' type='text'></input>
<div id='btnReceive'><center>Receive</center></div>
<style>
#btnSend {
width: 60px;
border: solid 1px;
cursor: pointer;
}
#btnReceive {
width: 60px;
border: solid 1px;
cursor: pointer;
}
</style>
<script type="text/javascript">
$('#btnSend').click(function(){
var dataOut = $('#send').val();
$.redirect('http://troncon.ca/ESO/test.php',{ userOut: dataOut});
});
$('#btnReceive').click(function(){
$.redirect('http://troncon.ca/ESO/test.php',{ userIn: ''});
});
</script>
</body>
</html>
PHPファイル:
<?php
if(isset($_POST['userOut'])) {
sendData();
}
elseif(isset($_POST['userIn'])) {
getData();
}
function sendData() {
$handle = fopen('test.txt', "a");
$test = $_POST['userOut'];
fwrite($handle, $test);
fclose($handle);
}
function getData() {
$filename = "test.txt";
$handle = fopen($filename, "r");
$contents = fread($handle, filesize($filename));
fclose($handle);
//echo $contents;
}
?>
Ajaxの使用を検討する必要があります。データを送信した後に結果が戻ってくることを期待しています。 – coderodour
使用しているリダイレクトプラグインはデータを受信せず、送信するだけです。おそらく '$ .post( 'http://troncon.ca/ESO/test.php'、{userOut:dataOut}、function(data){alert(data)});' –