Вы вызываете класс в статической манере.Таким образом, $ this в классе не будет объектом modReservationHelper.
Правильный способ использования этого, как в mod_wreservation.php:
$helperObj = new modReservationHelper(); // your choice will work (__counstruct) with this
$helperObj->validateForm();
Для второго выбора
$helperObj = new modReservationHelper();
$helperObj->setValue();
$helperObj->validateForm();
и класс будет
<?php
// no direct access
defined('_JEXEC') or die('Restricted access');
class modReservationHelper {
public $name;
public $email;
public $message;
public $comment;
function setValues() {
$this->name = $_POST['fullname'];
$this->email = $_POST['email'];
$this->message = $_POST['message'];
$this->comment = $_POST['comment'];
}
function validateForm() {
echo $this->name; //The output is always 0
echo $this->email+"</br>";//The output is always 0
echo $this->message;//The output is always 0
//When I try
echo $_POST['comment']; // Is correct
}
}
?>
, и будет лучше, если вы будете использовать его в mod_wreservation.php
$post = JRequest::get('post');
$helperObj = new modReservationHelper();
$helperObj->setValue($post);
$helperObj->validateForm();