2015-12-31 4 views
-2

Эй, моя проблема в том, что когда я шифрую пароли моего пользователя, когда они регистрируются, все мои данные помещаются в мои данные база правильно шифрования и все, но эта ошибка выскакиваетСтрогие стандарты: только переменные должны передаваться по ссылке в F: wamp www register.php в строке 22

Error Message

Мой код заключается в следующем:

<?php 

session_start(); 

if(isset($_SESSION['user_id'])){ 
     header("Location: /"); 
} 

require 'database.php'; 

$message = ''; 

if(isset($_POST['submit'])): 
     if(!empty($_POST['email']) && !empty($_POST['password']==$_POST['confirm_password']) && !empty($_POST['username'])): 

       // Enter the new user in the database 
       $sql = "INSERT INTO users (email, username, password) VALUES (:email, :username, :password)"; 
       $stmt = $conn->prepare($sql); 

       $stmt->bindParam(':email', $_POST['email']); 
       $stmt->bindParam(':username', $_POST['username']); 
       $stmt->bindParam(':password', password_hash($_POST['password'], PASSWORD_BCRYPT)); 

       if($stmt->execute()): 
         $message = 'Successfully created new user (Dont mind the error :)'; 
       else: 
         $message = 'Sorry there must have been an issue creating your account'; 
       endif; 
     else: 
       $message = 'Please check if all fields are filled in and match.'; 
     endif; 
endif; 

?> 

Если больше код нужен, чтобы решить эту проблему, я вывешу его, чтобы помочь

ответ

-3

на запуск кода, вы должны использовать

error_reporting(0); 

так все строги ошибки не отображаются.

+1

уверенный, зачем исправить ошибки, когда вы можете скрыть их –

+0

Спасибо, потому что ошибка ничего не делает, кроме кода b **** ing over something – PMCJohn

+0

никогда не скрывайте ошибку, всегда исправляйте, ошибка берет на большой ресурс s erver и не доставлять желаемый результат, поэтому лучше всего решить тему –

0

согласно я прочитал ваш вопрос у вас есть проблемы в этой строке:

$stmt->bindParam(':password', password_hash($_POST['password'], PASSWORD_BCRYPT)); 

функция bindParam не поддерживает третий параметр так, пожалуйста, проверьте, и дайте мне знать, если эта помощь

благодаря

+0

что бы я сделал, чтобы исправить это в этом случае? – PMCJohn

+0

Третий параметр должен быть одним из следующих: http://php.net/manual/en/pdo.constants.php –

+0

вам нужно добавить третий параметр в функцию: $ passwordenc = "" –

Смежные вопросы