2014-07-22 4 views
1

내가 암호 필드의 값을 가져오고 업데이트 페이지 중 하나에 대한 현재 양식에 표시하려고에 암호 필드에 값을 전달하는 방법Laravel

{{ Form::label('Password')}} 

{{ Form::password('password',array('class' => 'form-control') }} 

Laravel 블레이드의 암호 필드 구문은하지 않습니다 그것은 예를 들어 텍스트 필드의 경우와 같이

{{ Form::label('Email or Username')}} 

{{ Form::text('email',$useremaildata,array('class' => 'form-control')) }} 

은 지금 그런 자리를 사용하여 하나 개의 솔루션을 발견하지만 그 일의 의식 방법이 아니다, 입력 매개 변수를 허용합니다. 공유하는 것만으로

{{ Form::label('Password')}} 

{{ Form::password('password',array('class' => 'form-control','placeholder' => $userpassworddata)) }} 

도움이 될 것입니다.

+0

를 어디도에서 자신의 암호를 얻고있다? 당신이 데이터베이스에서 그것을 당기면, 그것은 해쉬 될 것입니다 ... – Laurence

+0

@TheShiftExchange 나는 데이터베이스에서 그것을 얻고 있습니다. 사용자가 암호를 다시 설정하기 만하면됩니다. 나는 아직 그것을 해치지 않았지만 나는 앞으로 갈 것이다. – Dev

+0

"나는 아직 해시하지 않았다."- 그것은 불명예스러운 보안 관행이다. 항상 사용자 암호를 항상 해시해야합니다. 변명의 여지가 없습니다. 또한 사용자 암호를 표시하지 않아야합니다. 변경하려는 경우 - 현재 항목을 표시하는 것이 아니라 확인 항목으로 변경할 수 있습니다. – Laurence

답변

6

간단한 대답은 당신이하지 않는다는 것입니다. 암호 필드는 거의 채워지지 않아야하며, Laravel이이를 지원하지 않기 때문에 흔히 발생하지 않습니다. 당신이 정말이 작업을 수행하려면

그러나 Form::input()를 사용할 수 있습니다

Form::input('password', 'name', 'value') 
+0

알렉스, 고맙습니다! 나는 당신에게 기분 전환을 줄만큼 충분한 레포를 가지고 있었으면 좋겠다. – Dev

+0

이것은 나쁜 보안 관행이다. 암호는 처음부터 해시되어야하며, 이렇게해서는 안됩니다. – Laurence

1

나는이 유효 사용 사례가 있다고 생각합니다. 필자는 다른 시스템의 암호를 저장하고 있으며 사용자가 편집 할 때 데이터베이스에서 이전 값을로드하여 채우려고하므로 사용자가 저장할 때 지워지지 않습니다.

다음은 암호 필드에 기본값을 설정할 수있는 사용자 정의 HTML 매크로입니다. start/global.php에서

는 수행

/** 
* Custom macro for a masked password field with a default value 
*/ 
HTML::macro('passwordWithDefault', function($name, $defaultValue = "", $optionsArray) {  
    return Form::input('password', $name, $defaultValue, $optionsArray); 
}); 

그런 다음, HTML 또는 템플릿에서, 당신과 같이 사용할 수 있습니다 :

HTML::passwordWithDefault('pwdField', Input::old('pwdField', $pwd_value),['class' => 'form-control']) 
+0

Simpy는 비어있을 때 사용자 암호 필드를 저장하지 않습니다. 모든 유효성 검사 (비어 있지 않음, 최소 길이 등)가있을 때만 암호를 저장하십시오. – klaaz