我在PHP 5中正在做一个项目,我希望将表单元素的值(如名称,电子邮件,密码等)设置为php中对象的属性属性。我该怎么做呢?请帮忙。
答案 0 :(得分:1)
你必须创建php对象,存储这些属性,或者如果你不想去那条路线,你必须创建一个存储这些值的过程函数,并把它放在它想去的地方。 / p>
对象示例
<?php
class User {
private $name;
private $email;
private $password;
public function __construct(array $data) {
$this->name = isset($data['name'] ? trim($name) : null;
$this->email = isset($data['name'] ? trim($email) : null;
$this->password = isset($data['password']) ? trim($password) : null;
}
// Setters and getters defined here as well
public function getName() {
return $this->name;
}
public function setName($name) {
$this->name = trim($name);
}
}
所以在你的html表格中,
<form method="post" action="add_user.php">
<input type="text" name="user[name]" id="name" />
<input type="email" name="user[email]" id="email" />
<input type="password" name="user[password]" id="password" />
<input type="submit" value="Add User" />
</form>
需要注意的主要事项是表单的方法和操作属性,方法是如何通过http来查看这个,并且操作是在哪里发送这些值,所以在我的dem o中它被发送到一个名为的脚本add_user.php在同一目录中,并通过POST方法。
信息将通过php收到:
$_POST['user'] => array('name' => '', 'email' => '', 'password' => '');
所以你所做的只是在你的add_user.php脚本中:
<?php
$userData = isset($_POST['user']) ? $_POST['user'] : array();
$User = new User($userData);
// FRom here on out you can do whatever you want with this.
答案 1 :(得分:1)
我遇到了同样的问题。希望它对某些人有用。首先,你必须拥有__construct对象。
m
将make数组用于提交并与 Object
连接class User {
public $name;
public $email;
function __construct($name, $email ) {
$this->date = $name;
$this->email = $email;
}
}
比你的
$userNew= [ new User($_GET['name'], $_GET['email'])
];
答案 2 :(得分:0)
您可以使用$_POST
或$_GET
变量获取网址参数,具体取决于您使用的变量(默认情况下,表单为GET)。
如果您想对表单中输入的内容执行任何操作,只需通过以下方式获取值:
$x = $_GET['inputname']
如果您的请求是GET请求,则使用name="inputname"
获取输入的值。然后,您可以使用该值执行任何操作。
答案 3 :(得分:0)
谢谢大家的回复。但如果我做这样的事情。会有效吗?
//class
public class user {
// variables
$name;
$age;
//constructor
public function __construct($age, $name){
this -> age = $age;
this -> name = $name;
}
//setter and getter methods for age
public function setAge($_POST['age']){
this -> age = $_POST['age'];
}
public function getAge(){
return this -> age;
}
//setter and getter methods for name
public function setName($_POST['name']){
this -> name = $_POST['name'];
}
public function getName(){
return this -> name;
}
} // end class
和html表单
<form method ="post" action ="htmlspecialchars($_SERVER['PHP_SELF'])">
Name: <input type="text" name="name">
Age: <input type ="text" name="text">
</form>
以上代码有效吗?