如何通过表单提交获取特定用户的类?

时间:2014-07-19 08:21:01

标签: php-5.2

我正在更新使用形式,我从另一个页面获取id如何在类和类的功能中使用此id。我这样做

public function edit_vender()
{
        $sqlupdate = "UPDATE `vender_master` SET `vender_no`='$this->vender_no',`vender_title`='$this->vender_title',`vender_address`='$this->vender_address',`vender_telephone`='$this->vender_telephone',`vender_email`='$this->vender_email',`vender_name`='$this->vender_name',`vender_cell`='$this->vender_cell',`vender_comments`='$this->vender_comments',`bank_name`='$this->bank_name',`bank_code`='$this->bank_code',`account_no`='$this->account_no',`account_holder`='$this->account_holder',`contactperson_name`='$this->contactperson_name',`contactperson_designation`='$this->contactperson_designation',`contactperson_cell`='$this->contactperson_cell',`contactperson_department`='$this->contactperson_department',`contactperson_telephone`='$this->contactperson_telephone',`contactperson_email`='$this->contactperson_email' WHERE `vender_id` ='$this->vender_id'";


    $result = @mysql_query($sqlupdate, $this->get_conn());
    if(!$result)
    {
        throw new Exception("Failed To Inser Query" . mysql_error());
    }   
}

我已经从输入隐藏输入向处理文件发送id但是我如何将其发送到类

1 个答案:

答案 0 :(得分:0)

很难对您的问题给出具体的答案,但在提及您应该考虑的其他一些问题之后,我会尽力回答您的问题。

PHP中的SQL代码

请确保不要在PHP中使用已弃用的MySQL函数 - 如_Why shouldn't I use mysql__* functions in PHP?中所述。

每当您将变量插入SQL代码时,请考虑使用prepared statements而不是直接将它们放入代码中。这些函数旨在以安全的方式将数据添加到SQL代码中。

数据库设计

您正在使用一个包含大量行的表。这并不方便,因为即使您只对供应商信息感兴趣,也要有大量的字段要经常处理。对于初学者,请考虑在单独的表格中存储有关供应商和联系人的信息。

获取外部ID

  

我正在更新使用形式,我从另一个页面获取id如何在类和类的功能中使用此id

很明显,你的函数edit_vender()在一个类中,所以我假设你有一些你要传递给这个类的ID?您可以使用函数内部的参数将其传递到外部:

public function edit_vender($id) {
    $sqlupdate = 'UPDATE `vender_master` SET `vender_no` = ?';
    // PDO style example where $dbh is a PDO object
    $dbh->prepare($sqlupdate);
    $dbh->execute( array($id) );
}

因此,无论您何时从中调用edit_vender(),您都可以传递您想要的ID并随意使用它。如果你想对ID做很多事情,你可以把它保存到课堂上。说你有类似的东西:

class MyClass {
    private $id;

    function __construct($id) {
        $this->id = $id;
    }
}

// Pass an ID to the class
$myObj = new MyClass(123);