我在使用Joomla网站中的PHP GLOBALS数组时遇到了问题。当提交表格时, 函数form_submit被调用以检查表格信息的有效性。出于某种原因,我可以在函数外部正确访问我的变量,但是当我尝试通过GLOBALS数组访问它们时,什么也找不到。
<?php
//THIS CODE CREATES THE ADD COURSE FORM
//CONNECT TO SERVER
require('../database2/includes/connect.php');
//GET LOGGED IN USER INFO
$user = JFactory::getUser();
$user_id = $user->id;
$user_name = $user->name;
$category_query = $conn->query('SELECT * FROM category');
$category_query->setFetchMode(PDO::FETCH_ASSOC);
$name = $_POST['name'];
$description = $_POST['description'];
$category_id = $_POST['dropdown'];
$crn = $_POST['crn'];
$password_init = $_POST['password_init'];
$password_rt = $_POST['password_rt'];
$password = md5($password_init);
function form_submit()
{
var_dump($GLOBALS['name']); //Dumps null
global $name //Doesn't work either
if (empty($name) || empty($description) || empty($crn) || empty($password_init) || empty($password_rt))
{
echo "<b style='color:red'>* $name</b><br>";
echo "<b style='color:red'>* $description</b><br>";
echo "<b style='color:red'>* $crn</b><br>";
echo "<b style='color:red'>* $password_init</b><br>";
echo "<b style='color:red'>* $password_rt</b><br>";
}
}
if(isset($_POST['Submit']))
{
var_dump($name); //Dumps correct value
form_submit();
}
?>
var_dump($ name)打印正确的值,但form_submit中的$ GLOBALS ['name']不打印。我的代码有什么问题?
http://joomla.stackexchange.com/questions/55/whats-the-proper-way-to-get-the-entire-post – Cheery 2014-10-09 22:09:08
@Cheery邮政工作。就像我所说的,var_dump($ name)打印正确的值,但是在我的函数中没有$ var_dump($ GLOBALS ['name'])。 – 2014-10-09 22:10:48