我正在尝试将变量传递给包含的文件。我做过类似的事情:
$id = $_GET['id'];
include('myfile.php');
文件'myfile.php'包含表单和提交按钮。它的处理页面是'process.php',在其中,我已经完成了:
$_id = var_dump($id);
// insert query
但是我没有得到变量的值,因此将0插入表中。
还有其他更简单的方法吗?
谢谢!
答案 0 :(得分:2)
功能
让myfile.php
声明一个函数(例如myfunction),您可以在include脚本中调用它。
例如:
// main.php
<?php
include('myfile.php');
process_data($_GET['id']);
// myfile.php
<?php
function process_data($id) {
$query = 'SELECT * FROM foobar WHERE id = ' . mysql_real_escape_string($id);
// ...
}
如果您确实希望将变量作为全局传递,并且您在函数或方法中引用了全局变量,请务必将其引用为$GLOBALS['varname']
或使用global $varname
:
function process_data() {
$id = &$GLOBALS['id'];
// or
global $id;
// ...
}
答案 1 :(得分:0)
你必须在myfile.php
中传递表单中的$ id值示例:
<form action="process.php" method="post">
<input type="hidden" name="id" value="<?= $id ?>">
<!--- rest of your form -->
</form>
在您的process.php中,将ID返回如下,然后执行查询。
$form_id = $_POST['id'];