将输入值输入php变量

时间:2013-12-27 11:58:48

标签: php

是否有任何方法可以将输入的值赋予php变量。

<input type="text" name="s_amount" style='width:20%;' required>

我希望这个s_amount的值进入php变量$ s_amount。此代码已在表单中。我希望在提交表单之前进行此转换。

5 个答案:

答案 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);
?>