現在、(サーバー上で)PHPファイルを呼び出すJavascriptファイル(クライアント上で実行)があります。PHPファイルが終了したら、クライアントで実行されているjavascriptに3つの変数を戻したいと思います。javascriptにphpファイルの実行が終了するのを待たせる方法を見つけたので、それは問題ではありません。問題は、変数をjavascriptファイルに戻すことです。これはできますか?私が見たすべての例には、ある種のハイブリッドjavascript/phpファイルがあります。jquery.ajaxのようにphp変数を渡す方法を見つけたいと思っていました。私はJavascriptとPHPにとても慣れていないので、これができるかどうかはわかりません。ありがとう、
javascript:
<html>
<head>
<title>Login Page</title>
</head>
<script language="javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script>
<script language="Javascript">
function calculations(callback)
{
var x = <?php echo $username?>;
alert(x);
var password = window.prompt("Please Type Your Password");
}//ends the calculations function
function getUsername()
{
var username = window.prompt('Please Type Your Username');
var temp = document.getElementById('temp');
temp.innerHTML = username;
jQuery.ajax(
{
type: "POST",
url:"GetInfo.php",
data: "username="+username,
success: function(msg)
{callback.call();}
});//ends the jQuery send
}//ends the GetUsername function
</script>
<body onLoad=getUsername()>
<div id="temp">This will show text</div>
<body>
</html>
php:
<?
//$username = $_POST['username'];
$username = "tom";
$inFile="MyID.config.php";
$handle=fopen($inFile, 'r') or die ("No credentials could be gotten because the file MyID.config.php would not open.");
$data='0';
do{
$data = fgets($handle);
$temp = substr($data,0, 10);
//echo $temp.strcmp($temp,'\'username\'')."\n";
}while (strcmp($temp, '\'username\'')!= 0);
$data = substr($data,15,strlen($username));
if (strcmp($data, $username == 0) )
{
$read_in = fgets($handle);
$x = substr($read_in,8,-3);
$read_in = fgets($handle);
$y = substr($read_in,8,-3);
$read_in = fgets($handle);
$salt = substr($read_in,11,-3);
}//ends the strcmp $data and $username if statement.
fclose($handle);
?>