从带有html的php文件发送一个php对象到另一个php文件

时间:2013-09-09 20:13:43

标签: php html ajax

profiles_info.php

我有一个从Ajax接收信息的php文档。然后,我将该信息作为属性设置为类Profile的对象。我有html显示一个表。当用户点击Add时,应该将对象发送到add_to_database.php,我想在那里访问所有对象属性。

    $firstName = $_POST['fn'];
    $lastName = $_POST['ln'];

    class Profile{  
        public $firstName;
        public $lastName;


        public function setFirstName($fn){
            $this->firstName = $fn;
        }

        public function setLastName($ln){
            $this->lastName = $ln;
        }

        public function getFirstName(){
            return $this->firstName; 
        }

        public function getLastName(){
            return $this->lastName;
        }

    }

    $person = new Profile();

    $person->setFirstName($firstName);
    $person->setLastName($lastName);


    echo "<p><table border= \"1\"><tr><th> First Name:</th><th> Last Name:</th><th> Add To Database:</th></tr><tr><td>" . $person->getFirstName() . "</td><td>" . $person->getLastName() . "</td><td><a href='add_to_database.php'>Add</a></td></tr></table></p> ";

如何将名字和姓氏发送到add_to_database.php?

我试过包含,但html出现了。我还通过在会话中存储$ person对象来尝试会话,但我不知道如何在add_to_database.php中访问getFirstName和getLastName。 $ person对象稍后将具有更多属性,因此我不希望在会话中存储每个属性。有没有其他方法可以做到这一点?

1 个答案:

答案 0 :(得分:1)

我的建议是serialize您的对象并将其放入会话变量中,并在您的seconde页面unserialize中,并调用您的获取方法。

示例:

$person = new Profile();
$s = serialize($person);
$_SESSION['mySerializedObject']=$s;

在你的借调页面中:

include 'Profile Class file here';

$u = unserialize($_SESSION['mySerializedObject']);
echo $u->getFirstname();