没有$ _POST获取价值并转义html

时间:2015-03-16 09:03:57

标签: php html oop post escaping

我有一个表单类,我正在使用display()方法调用。然后display()方法通过$ _POST方法获取名称,电子邮件,密码等的值。但是我希望得到值的名称而不是$ _POST.And也想逃避html.Is有可能用$ _POST获取值然后转义html。像这样的formet classname :: get('name');

public function display()
{
    $newform=new Form();

 // Input::get('name');

    $newform->setvalue($_POST['name']);
    $name=$newform->getvalue();

    $newform->setvalue($_POST['email']);
    $b=$newform->getvalue();

    $newform->setvalue($_POST['pass']);
    $c=$newform->getvalue();
    $newform->setvalue($_POST['rpass']);
    $d=$newform->getvalue();
    $newform->setvalue($_POST['phone']);
    $e=$newform->getvalue();
}


<?php 

class Form
{
private $value;


public  function setvalue($value)
{
    $this->value=$value;
}


public function getvalue()
    {
        $a=$this->value;
        return $a;
    }
}

2 个答案:

答案 0 :(得分:1)

可能,但$ _POST出了什么问题?

不使用$ _POST,您可以直接从HTTP请求标头获取表单数据。查看此官方文档

http://php.net/manual/en/function.http-get-request-body.php

答案 1 :(得分:1)

根据我的理解,您不想在代码中使用$_POST,但愿意有一个专门用于获取$_POST值的课程。所以我创建了一个接受post并返回$_POST值数组的类。

$newform = new Form();
echo "<pre>";
var_dump($newform->getValue());


class Form{
    private $value = array();
    function __construct(){
        foreach($_POST as $k=>$v)
            $this->value[$k] = $v;// here you can use some validation or escapes

    }
    public function getValue(){
        return $this->value;
    }
}