在单独的php文件中调用函数中的查询

时间:2014-05-29 02:43:22

标签: php function class

美好的一天!我是PHP的新手,我坚持这一点。问题是,如何将类中的特定函数加载到php文件中。这就是我得到的:

HTML文件

<form action="myfile.php" method="post">
    <input type="text" name="subject"/>
    <input type="text" name="section"/>
    <input type="submit" name="submit"/>
</form>

PHP文件

<?php 
include 'class_lib.php';

    $subject = $_POST['subject'];
    $section = $_POST['section'];

if(isset($_POST['submit'])){
$class = new myClass;
$success = $class->insertFunction();
if($success == TRUE)
{echo 'Inserted';}
else
{echo 'Error';}
}
?>

功能文件

class myClass{
    function insertFunction(){
     $sql = "Insert into tblName (subject, section) VALUES($subject,$section)";
     $success = mysql_query($sql) or die (mysql_error());

    return $success;
    }
}

问题是,当我提交按钮时,它会给我一个空白页面。请帮助我,我对此很新。非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

有多种方法可以将值提供给类函数, 我们试试快速修复 -

1。 代替 - $success = $class->insertFunction();

$success = $class->insertFunction($subject, $section); //传递参数

class myClass{ function insertFunction($subject, $section){ //Get the parameter values [....] } }

现在检查$success的值。如果查询成功执行,则该值应为主键(自动增量)。我希望数据库表有这样一个字段。


2。 现在让我们以正确的方式进行 -

将两个属性添加到类文件 -

class myClass{

    public $subject;
    public $section;

    function insertFunction(){
        $sql = "Insert into tblName (subject, section) VALUES($this->subject, $this->section)";
        return mysql_query($sql);
    }
}

然后将.php文件更改为 -

<?php
    include 'class_lib.php';
    [......] //include your class file.

    $subject = $_POST['subject'];
    $section = $_POST['section'];

    if(isset($_POST['submit'])) {
        $class = new myClass;
        $class->subject = $subject;
        $class->section = $section;

        $success = $class->insertFunction();
        if($success)
            echo 'Inserted';
        else
            echo 'Error';
    }
?>

我希望它能给出一些想法。