PDO单独为用户会话

时间:2013-12-28 04:25:54

标签: php pdo

我不确定我是否正在接近这个权利,我试图将我的注册存储在公共课堂上(如果这有意义的话),无论如何,这是我的代码,它给了我一个 unexpected T_PUBLIC error

我想把我的动作=“”并将其与我的班级/ register.php联系起来?

register.php

<?php session_start();?>

<a href="index.php">Home</a>
<hr><br />

<h1>Register</h1>
<form action="class/register.php" method="post">
    <input type="text" name="username" placeholder="username"><br />
    <input type="password" name="password" placeholder="password"><br />
    <input type="submit" value="register">
</form> 

类/ register.php

<?php
  public function register($username, $password){

    require 'core/connect.php';

    $query = $dbConnect()->prepare("INSERT INTO `users` (username, password) VALUES(:username, :password)");
    $query->bindParam(':username', $_POST['username']);
    $query->bindParam('password', $_POST['password']);

    if($query->execute()){
      header('Location: Header.php');
    } else {
      echo 'There has been an error.';
    }
  }
?>

2 个答案:

答案 0 :(得分:1)

由于您未使用任何 class (无法在include标记后找到任何require<?php,因此从函数定义中删除 public 关键字。

只是

function register($username, $password){会做

而不是

public function register($username, $password){

答案 1 :(得分:0)

使用此:

<?php
    function register($username, $password){

        require 'core/connect.php';

        $query = $dbConnect()->prepare("INSERT INTO `users` (username, password) VALUES(:username, :password)");
        $query->bindParam(':username', $_POST['username'],PDO::PARAM_STR);
        $query->bindParam(':password', $_POST['password'],PDO::PARAM_STR);

        if($query->execute()){
            header('Location: Header.php');
        } else {
            echo 'There has been an error.';
        }
    }
?>