他のユーザーがすでに登録されている他のユーザーのリンクを使用してサインアップできるプログラムを作成しようとしています。だから、参照されると、これはURLのようになりますLaravelで紹介プログラムを作成するにはどうすればよいですか?
mywebsite.com/register?ref_id=555 // ref_id is existing user id
私はデフォルトのLaravel authを使用しています。存在する場合、の値を含む隠れた入力値があります。私のデータベースのreferred_by
という列はINT
で、デフォルトでnull
に設定されています。誰かがref_idでリンクを使用して登録すると、そのIDはそのユーザー行に保存されます。 しかし問題は毎回nullとして保存されていることです。 ref_idが、私は、文字列として非表示の入力フィールドに保存されているので
これは、バリデータはAuth/RegisterController.php
protected function validator(array $data)
{
return Validator::make($data, [
'first_name' => 'required|max:40',
'last_name' => 'required|max:40',
'email' => 'required|email|max:255|unique:users',
'account_name' => 'required|max:80',
'account_number'=> 'required|max:15',
'bank_name'=> 'required|max:30',
'phone_number' => 'required|max:15',
'ref_id' => 'nullable|numeric',
'username' => 'required|max:15|unique:users',
'password' => 'required|min:6|confirmed',
]);
}
のように見え、これはメソッドを作成する方法である方法ですが
のように見えますデータベースに入れる前に整数に変換しようとしましたが、動作させることができません。 私はこれをどのように達成できるのか本当に混乱しています。 私を助けてください。 ありがとうございます。
に
referred_id
を変更するには、それらのすべてが、Userモデルに '$ fillable'ですか? – upfulデータが 'dd($ data)'によってref_idを持っているかどうかを確認し、そうであればreferenced_idがユーザモデルの$ fillableにあるかどうかを確認します – Paras
はい、入力可能です。これは、配列がprotected $ fillable = [ 'first_name'、 'last_name'、 'email'、 'account_name'、 'account_number'、 'bank_name'、 'referenced_by'、 'username'、 'phone_number'、 'パスワード '、 ]; @upful –