我是php/html的新手,我正在尝试从html表单中获取一个值,并将其设置为外部php脚本中的一个变量。
此变量用于在postgres数据库中运行SQL。通过单击按钮来触发php脚本。
我的猜测是使用get value是html表单中的文本:
$SQL = $_GET['get_value'];
但我不能让它工作。有人能帮我解释一下该怎么做吗?
我的html代码如下:
<!DOCTYPE html>
<html>
<body>
<form name="SQL" action="query_map.php" method="get">
SQL:<br>
<input type="text" name="SQL" id="get_value">
<br>
</form>
<button type="submit" id="script-button">
Run the script
</button>
<script>
function runScript() {
var request = new XMLHttpRequest();
request.onreadystatechange = function() {
if (request.readyState === 4) {
if (request.status === 200) {
alert('Ran the script, result was ' + request.responseText);
} else {
alert('Something went wrong, status was ' + request.status);
}
}
};
request.open('POST', 'http://localhost:8076/query_map.php', true);
request.send(null);
return false;
};
document.getElementById('script-button').onclick = runScript;
</script>
</body>
</html>
php代码如下:
<?php
$SQL = $_GET['get_value'];
$db = pg_connect("host=localhost dbname=kopse_hof_put_25 user=postgres password=baf45baf")
or die ("Could not connect to server\n");
$query = pg_query($db, "create or replace view resultaat as
select *
from put_25_vlak_1_vulling
where id = $SQL");
?>
我在chrome控制台上看不到任何错误。我测试了php,它工作得很好。
发布于 2016-01-25 19:33:14
您通过输入名称而不是id读取GET和POST,因此它应该是:
$SQL = $_GET['SQL'];
https://stackoverflow.com/questions/34991539
复制相似问题