Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从HTML表单调用类中的PHP函数_Php_Html - Fatal编程技术网

从HTML表单调用类中的PHP函数

从HTML表单调用类中的PHP函数,php,html,Php,Html,我有一个课程是维护客人信息。因此,在该类中,我有以下方法将来宾数据插入guest\u info表中 require_once "BaseModel.php"; class GuestModel extends BaseModel { public static $table = "guest_info"; public static function guestInfoFormData(){ $title = $_POST['title'];

我有一个课程是维护客人信息。因此,在该类中,我有以下方法将来宾数据插入
guest\u info
表中

require_once "BaseModel.php";

class GuestModel extends BaseModel
{
    public static $table = "guest_info";

    public static function guestInfoFormData(){
         $title = $_POST['title'];
         $firstname = $_POST['firstname'];
         $lastname = $_POST['lastname'];
         $nicpassport = $_POST['nicpassport'];
         $contactnumber = $_POST['contactnumber'];
         $addressline1 = $_POST['addressline1'];
         $addressline2 = $_POST['addressline2'];
         $addressline3 = $_POST['addressline3'];
         $country = $_POST['country'];
         $guestinfo = array($title,$firstname,$firstname,$nicpassport,$addressline1,$addressline2,$addressline3,$country);
         insertInto($guestinfo);
    }
}
如何从HTML表单调用此方法并将来宾数据传递给它?


<?php GuestModel::guestInfoFormData(); ?>

在此之前,请确保需要/包含
GuestModel
类。

您可以使用
GuestModel::guestInfoFormData()
,但不能在
html
文件中执行,它必须是php文件

不要忘记转义所有输入值,现在您将所有用户输入传递到
insertInto
,因此在sql查询中使用数据之前必须转义数据,以防止sql注入


顺便问一下:为什么要创建一个类,当你从中调用一个全局函数时?也许将全局函数
insertInto
移动到这个(或另一个更好的)类中是个好主意:)

我将
insertInto
方法放在我的
BaseModel
类中,这样我就可以将它用于我的其他数据插入,这是个坏主意吗?不,这听起来是个合理的模型,但你不能将它用作全局函数,您需要像这样调用它:
self::inertInto()
,它也必须是一个静态方法。如果它是一个非静态方法,您将得到一个php严格标准错误,但它不会中断脚本。静态使用此函数有什么原因吗?也许您想创建该类的新实例,并在上下文中使用该函数?:)是的
insertInto
是一个静态方法。我错过了类名,谢谢提醒。我把
GuestModel::guestInfoFormData()
放进去,但现在我无法访问
$\u POST['title']方法内部:(