سلام من میخوام بعد از ثببت نام کردن کاربر به کاربر sms بفرسته چطوریه؟
من در جدول کاربران اطلاعات زیر را به همراه دارم.
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->bigIncrements('id');
$table->boolean('active')->default(false);
$table->string('level')->default('user');
$table->string('first_name');
$table->string('last_name');
$table->string('mobile');
$table->string('birth_date');
$table->boolean('gender');
$table->bigInteger('province_id')->unsigned();
$table->bigInteger('city_id')->unsigned();
$table->text('address');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->rememberToken();
$table->timestamps();
$table->foreign('province_id')->references('id')->on('provinces')->onDelete('cascade');
$table->foreign('city_id')->references('id')->on('cities')->onDelete('cascade');
});
}
<ltr>
register.php
</ltr>
public function register(Request $request)
{
return User::create([
'first_name' => $request->first_name,
'last_name' => $request->last_name,
'gender' => $request->gender,
'mobile' => $request->mobile,
'address' => $request->address,
'birth_date' => $request->birth_date,
'province_id' => $request->province_id,
'city_id' => $request->city_id,
'email' => $request->email,
'password' => bcrypt($request->password)
]);
if ($request->save()) {
$request->validate([
'mobile' => 'required',
]);
$sendSms = new User;
$sendSms->mobile = $request->mobile;
$sendSms->code = rand(۱۰۰۰۰,۹۹۹۹۹);
if ($sendSms->save()) {
try {
$api = new \Kavenegar\KavenegarApi("Api Examplle");
$sender = "۱۰۰۰۴۳۴۶";
$message = "کد تایید شما $sendSms->code است.";
$receptor = $sendSms->mobile_number;
$result = $api->Send($sender, $receptor, $message);
if ($result) {
foreach ($result as $r) {
echo "messageid = $r->messageid";
echo "message = $r->message";
echo "status = $r->status";
echo "statustext = $r->statustext";
echo "sender = $r->sender";
echo "receptor = $r->receptor";
echo "date = $r->date";
echo "cost = $r->cost";
}
}
} catch (\Kavenegar\Exceptions\ApiException $e) {
echo $e->errorMessage();
} catch (\Kavenegar\Exceptions\HttpException $e) {
echo $e->errorMessage();
}
}
}
/*$this->validator($request->all())->validate();
event(new Registered($user = $this->create($request->all())));
$this->guard()->login($user);
return $this->registered($request, $user)
?: redirect($this->redirectPath());*/
}
من از روش زیر استفاده کردم اما sms ، پنج رقمی برای من نیامد، اما همه اطلاعات بجز $code با موفقیت در دیتابیس ذخیره شده است.
public function register(Request $request)
{
$code = rand(10000,99999);
$user = User::create([
'first_name' => $request->first_name,
'last_name' => $request->last_name,
'gender' => $request->gender,
'mobile' => $request->mobile,
'code', $code,
'address' => $request->address,
'birth_date' => $request->birth_date,
'province_id' => $request->province_id,
'city_id' => $request->city_id,
'email' => $request->email,
'password' => bcrypt($request->password)
]);
if ($user->save()) {
try {
$api = new KavenegarKavenegarApi("Api lkey");
$sender = "10004346";
$message = "کد تایید شما $user->code است.";
$receptor = $user->mobile;
$result = $api->Send($sender, $receptor, $message);
if ($result) {
foreach ($result as $r) {
دوستان اگر میدانند راهمنمایی کنند.
سلام
@oxbir
این قسمت رو بیخیالش بشید
if ($user->save())
قبلش دستورات و کد های ارسال اس ام اس رو بزنید که بعد از ذخیره کاربر پیامک رو بفرسته ، که ببینیم میفرسته اصلا یا نه!
فعلا شرطی براش نذارید ببینیم کد رو ارسال میکنه ، بعد اگر ارسال کرد
طی شروط مختلف شرایط رو مهیا کنید برای ارسال اس ام اس!
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟