我正在使用jquery函数来调用这样的getdata.php文件 -
$("#tasks").load("getdata.php?choice=" + $("#projects").val());
getdata.php将结果动态回传给被调用者。
<?php //getdata.php
global $user_id; //<--These variables are defined in the callee file
global $con;
$choice=$_GET['choice'];
$query="SELECT task_id,title from tasks where user_id=$user_id AND proj_id=$choice";
$result=mysqli_query($con,$query) or die(mysqli_error($con));
if((mysqli_num_rows($res))!=0)
{
while (list($task_id, $title) = mysqli_fetch_row($result))
{
echo "<option value=$task_id>$title</option>";
}
}
else
{
echo "<option>No current Tasks</option>";
} ?>
有什么办法可以从这里访问callee文件中的变量。我尝试使用全局,因为通常是包含文件的情况,但这不起作用。
答案 0 :(得分:0)
您可以考虑使用$ _SESSION变量来设置可用于callee文件和getdata.php的变量。
答案 1 :(得分:0)
为什么不把它们放在请求中? “喜欢
$("#tasks").load("getdata.php?choice=" + $("#projects").val() + "&user_id=" + user_id;
(如何将PHP变量传递给js,因为已经在SO上得到了很多答案)
然后在getdata.php
$user_id = $_GET['user_id'];
对于数据库连接,您可以创建一种包含在每个脚本
上的配置文件的config.php
function getDBConnection() {
blah...blah ...
return $con;
}
在getdata.php中的和每个需要它的脚本一样:
require_once yourpath/config.php;
$con = getDBConnection();
出于安全原因,如果您的配置文件包含密码,登录等,请将其放在外面 你的网站目录。