查询是否将随机内容插入到db表中?

时间:2014-12-07 22:15:02

标签: php mysql pdo

我已连接到数据库,所以我理解我的连接很好,我也使用MVC和PDO,但是当插入表格时,它给我的是随机值而不是值例如,在每个列的每个列的表格中,从post变量中设置实际集合,而不是设置值。这是我的代码:

这是我的注册类中的函数:

    public function signup($email,$password,$firstname,$lastname,$mobile){


    $query = 'INSERT INTO testing (username, password, first_name, last_name, mobile) VALUES (:email, :password, :firstname, :lastname, :mobile)';

    //putting it in a variable
    $statement = $this->_dbHandle->prepare($query);

     //variables
    $statement->bindParam(':email', $email);
    $statement->bindParam(':password', $password);
    $statement->bindParam(':firstname', $firstname);
    $statement->bindParam(':lastname', $lastname);
    $statement->bindParam(':mobile', $mobile);


    // Then execute the query
    $statement->execute();


    return $statement->fetch(PDO::FETCH_ASSOC);


  }

这是我从(我的register.php控制器)传递参数的地方:

<?php
require_once("Models/reg.php");
require_once("Views/register.phtml");
$view = new stdClass();
$view->pageTitle = 'Register';


$registerUser = new reg();


if(isset($_POST["email"]) && isset($_POST["password"]) && isset($_POST["firstname"]) && isset($_POST["lastname"]) && isset($_POST["mobile"]))
{
$registerQuery = $registerUser->signup(isset($_POST["email"]),isset($_POST["password"]),isset($_POST["firstname"]),isset($_POST["lastname"]),isset($_POST["mobile"]));
}

在我的phtml文件中,我的文字框的名称如&#34; email&#34;,&#34;密码&#34;,&#34;名字&#34;,&#34;姓氏&#34 ;,&#34;移动&#34;

有谁知道我做错了什么?

1 个答案:

答案 0 :(得分:3)

isset($_POST["email"])返回1(如果为false,则返回0)  所以你得到你告诉它放入数据库的内容只需删除isset()s

if(isset($_POST["email"]) && isset($_POST["password"]) && isset($_POST["firstname"]) && isset($_POST["lastname"]) && isset($_POST["mobile"]))
{
$registerQuery = $registerUser->signup($_POST["email"],$_POST["password"],$_POST["firstname"],$_POST["lastname"],$_POST["mobile"]);
}