我目前正在尝试创建一个网站,我将信息输入到我的html端,它将信息发送到php文件并根据你在html端放入的内容从另一个网站获取信息。
为了更清楚地说明这是如何运作的:
我不知道如何将信息返回到我的javascript文件。
这是我的代码:
html / javascript页面:
<html>
<head>
<script type="text/javascript" src="./aloticcalc_files/jquery.min.js"></script>
</head>
<body>
<script>
function test() {
var username = "Exzib";
window.location.href = "grabinfo.php?username=" + username;
}
</script>
</body>
</html>
这是我的php文件:( grabinfo.php )
<html>
<head>
</head>
<?php
$username = $_GET['username'];
include_once('simple_html_dom.php');
if(isset($_GET['name'])) {
$html = file_get_html('https://alotic.com/hs/?name='.$username);
$xp = $html->find('td', 10);
$formatxp = $result=str_replace(array('$',',','.',' '),'',$xp);
echo $formatxp;
}
?>
<body>
</body>
</html>
那么如何继续将$formatxp
发送到我的javascript?
由于
答案 0 :(得分:3)
所以你要做的就是执行:
window.location.href = "grabinfo.php?username=" + username;
这会导致浏览器导航到grabinfo.php并显示所需的信息。除非您不希望显示信息,否则您希望将其检索到JavaScript变量中,对吗?
为此,请勿设置window.location.href
。而是使用AJAX调用您的脚本。你会在那里找到很多关于AJAX的教程。这将允许您捕获PHP脚本的输出。
答案 1 :(得分:1)
更改以下行
$formatxp = $result=str_replace(array('$',',','.',' '),'',$xp);
到
$formatxp = str_replace(array('$',',','.',' '),'',$xp);
要将变量传递给Javascript,您可以执行以下操作。
<script type="text/javascript">
var $formatxp = '<?php echo $formatxp; ?>';
</script>
答案 2 :(得分:1)
编写脚本标记并将变量设置为等于PHP变量。
<script>
var thing = '<? echo $formatxp; ?>';
</script>
答案 3 :(得分:0)
这很容易,因为你已经包含了jQuery。 (使用ajax)
查找
<html>
<head>
<script type="text/javascript" src="./aloticcalc_files/jquery.min.js"></script>
</head>
<body>
<label>Type your username:<input id="username" type="text"></label>
<input id="submit-button" type="button" value="Get my highscores!">
<p id="response"></p>
<script>
//When user clicks "submit-button" button
$("#submit-button").on('click', function() {
var username = $("#username").val();
//We request our php with the username
$.get("grabinfo.php?username=" + username, function(xpValue) {
//When we receive the response from php then we add it to a "p" tag
$("#response").text("LOL your xp is: "+xpValue+". NOOOOOOOB!!");
});
});
</script>
</body>
</html>
就是这样!
http://api.jquery.com/on/的更多信息
并且http://api.jquery.com/get/
http://api.jquery.com/text/
http://api.jquery.com/val
以及整个jQuery API文档http://api.jquery.com
修改强>
哦。您必须更改grabinfo.php
。它应该只有这个:
<?php
$username = $_GET['username'];
include_once('simple_html_dom.php');
if(isset($_GET['name'])) {
$html = file_get_html('https://alotic.com/hs/?name='.$username);
$xp = $html->find('td', 10);
$formatxp = $result=str_replace(array('$',',','.',' '),'',$xp);
if(empty($formatxp)) {
echo "ERROR: Invalid could not find xp with username {$username}";
}
else {
echo $formatxp;
}
}
else {
echo "ERROR: Invalid arguments";
}