محمود خسروی
6 سال پیش توسط محمود خسروی مطرح شد
2 پاسخ

چگونه بعد از ثبت نام کردن کاربر به موبایل کاربر sms بفرستد

سلام من میخوام بعد از ثببت نام کردن کاربر به کاربر 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());*/
}

ثبت پرسش جدید
محمود خسروی
تخصص : طراح و برنامه نویس
@oxbir 6 سال پیش آپدیت شد
0

من از روش زیر استفاده کردم اما 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) {

دوستان اگر میدانند راهمنمایی کنند.


Alimotreb
تخصص : کانفیگ سرور و برنامه نویس
@Alimotreb 6 سال پیش آپدیت شد
0

سلام
@oxbir
این قسمت رو بیخیالش بشید


if ($user->save())

قبلش دستورات و کد های ارسال اس ام اس رو بزنید که بعد از ذخیره کاربر پیامک رو بفرسته ، که ببینیم میفرسته اصلا یا نه!
فعلا شرطی براش نذارید ببینیم کد رو ارسال میکنه ، بعد اگر ارسال کرد
طی شروط مختلف شرایط رو مهیا کنید برای ارسال اس ام اس!


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام