راکت

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

2 پاسخ

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

پاسخ‌ها

2
محمود خسروی
محمود خسروی
@oxbir

تخصص: طراح و برنامه نویس

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

تخصص: کانفیگ سرور و برنامه نویس

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


if ($user->save())

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

شاید پاسخ شما همین‌جا باشد

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

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