是否有任何方法可以将输入的值赋予php变量。
<input type="text" name="s_amount" style='width:20%;' required>
我希望这个s_amount的值进入php变量$ s_amount。此代码已在表单中。我希望在提交表单之前进行此转换。
答案 0 :(得分:2)
只需提交表单并使用$_REQUEST/$_GET/$_POST
即可获得。
HTML:
<form method="POST">
<input type="text" name="s_amount" style="width:20%;" required>
<input type="submit" name="submit" value="Submit" />
</form>
PHP:
<?php
...
$value_in_php_var = $_POST['s_amount'];
...
答案 1 :(得分:2)
如果没有与服务器通信,则无法将javascript变量转换为php变量。因此,如果您想将客户端变量(您的输入值)转换为php变量,则在提交表单之前,您需要在单独的请求中将此变量发送/获取到服务器。执行此操作的最佳方法是通过异步ajax调用。如果您使用的是jquery,这可能非常简单:
$.ajax({
url: '/path/to/file.php',
type: 'POST',
dataType: 'text',
data: {param1: $("input[type='text'][name='s_amount']").val()},
})
.done(function(response) {
console.log("response");
//do something with the response
})
.fail(function() {
console.log("error");
})
.always(function() {
console.log("complete");
});
在服务器上,您可以通过获取发布的数据来接收此值
$myphpvariable= $_POST['param1'];
//here you can manipulate/validate your variable and echo something back to the client
echo 'this is my php variable: '.$myphpvariable;
现在你的ajax调用将在其.done()回调中收到“这是我的php变量:[x]”。
编辑:不要忘记你的浏览器中有一个javascript控制台(例如firebug)。这可以非常方便地看到发生了什么。
答案 2 :(得分:1)
PHP在服务器上运行。因此,为了获得脚本的值,您必须使用AJAX,或者必须提交表单。
答案 3 :(得分:0)
将HTML标记更改为:
<form method='POST'>
<input type="text" name="s_amount" style='width:20%;' required>
<input type="submit" name="submit" value="Submit" />
</form>
然后,提交表单,之后您可以extract
$_POST
变量,但请注意它将为该变量中的每个键创建变量。
extract($_POST);
echo $s_amount;
否则,您可以提交表单,只需执行以下操作:
$s_amount = $_POST['s_amount'];
答案 4 :(得分:0)
这是表格
<form action="process.php" method="POST">
<input type="text" id="table_name" name="table_name" placeholder="name" />
<input type="submit" name="create_table" id="create_table" value="create a table"/>
</form>
这是在process.php中
<?
$table_name = $_POST['table_name'];
// sql to create table
$sql = "CREATE TABLE $table_name (
ID int AUTO_INCREMENT,
date varchar(255),
name varchar(255),
organization varchar(255),
email varchar(255),
phone varchar(225),
location varchar(225),
respond varchar(225),
created_by varchar(225),
PRIMARY KEY (ID)
)";
if (mysqli_query($con, $sql)) {
echo "Table $table_name created successfully";
} else {
echo "Error creating table: " . mysqli_error($con);
}
mysqli_close($con);
?>