아래 함수는 PDO를 사용하여 db에 동적으로 양식 데이터를 삽입하기 위해 양식 이름과 값 attr을 가져 와서 PDO 삽입 문에서 cols와 bindValues를 채 웁니다. 지금 내가 가진 문제는 다음과 같습니다.DB에 동적으로 삽입 할 때 시간과 날짜 삽입 방법
삽입하기 전에 암호를 해시하고 동시에 시간과 날짜를 삽입하고 싶습니다.
public function reg_user($data) {
if($_SERVER['REQUEST_METHOD'] == 'POST'){
$dataDB = array();
foreach ($_POST as $k => $v) {
if (in_array($k,$this->valid_keys)) {
$dataDB[$k] = $v;
}
}
$this->cols = '`'.implode('`, `', array_keys($dataDB)).'`' ;
$this->values = ':' . implode(", :", array_keys($dataDB));
$db = new db;
try{
$stmt = $db->dbh->prepare ("INSERT INTO $this->table ($this->cols) VALUES ($this->values)");
foreach ($dataDB as $k => $v) {
$stmt -> bindValue(':'.$k, $v);
}
$stmt->execute();
} catch (PDOException $e) {
$error = new Errors();
echo "<b>".$error->displayError($e)."</b>";
}
}
}
나는이
foreach ($_POST as $k => $v) {
if (in_array($k,$this->valid_keys)) {
if($k == 'password'){
$v = password_hash($v , PASSWORD_DEFAULT);
}
$dataDB[$k] = $v;
}
}
에있는 foreach 루프를 수정하지만, 난 여전히 일반 암호는 데이터베이스에 삽입 얻을. 루프 검사에서