Support the ongoing development of Laravel.io →
Requests Laravel Database

Here is register new user code in php laravel-5.4 mysql

database table

####################code here starts########################3

public function store(Request $request)
{





    $epincheck = $request->epin;

    if (Epin::where('epin', '=', '75656565')->exists()) {



     //   DB::table('epins')->where('epin', $epincheck)->delete();




        $post = new Admin();
        $post->name = $request->name;
        $post->email = $request->email;
        $post->plan = $request->plan;
        $post->epin = $epincheck;
        $post->ref = $request->ref;
        $post->mobile = $request->mobile;
        $post->password = bcrypt($request->password);
        $post->save();





        //other trims


        $referal_user = $request->ref;
        $referal_email = DB::table('admins')->where('mobile', $referal_user)->first();
        $referal_id = $referal_email->id;



        $update_ref_user = Admin::find($referal_id);
        $previous_users_left = $referal_email->user_left;
        $previous_users_right = $referal_email->user_right;
        $direct_referal = $referal_email->direct_referal;
        $list_all_right_user = $referal_email->user_listing_right;
        $list_all_left_user = $referal_email->user_listing_left;
        $left_count = $referal_email->no_user_left;
        $right_count = $referal_email->no_user_right;
        $direct_count = $referal_email->no_direct_referal;

        if(!$previous_users_right && $previous_users_left )
        {
            $update_ref_user->user_right =  $request->email ;
            $update_ref_user->no_user_right =  $right_count+1 ;
            $update_ref_user->user_listing_right =   $request->email . ' , ' . $list_all_right_user ;
            $update_ref_user->save();

            $last_updated_id = $update_ref_user->id;


            $update_up_line = DB::table('admins')->where('id', $last_updated_id);
            $update_up_line_list = $update_up_line->id;

          //  $update_up_line = Admin::find($last_updated_id);

           /* $update_up_line_update->user_listing_right = $request->email;
            $update_up_line-> save();*/



            //looping get referal id -> find referee -> update ;
            //find last  referal id -> find referee -> update ;
            //find referal id -> find referee -> update ;
            //find referal id -> find referee -> update ;
            //find referal id -> find referee -> update ;
            //when there is no ref_no loop ends
            //stop when count ends;






        }

        if(!$previous_users_left)
        {
            $update_ref_user->user_left =  $request->email ;
            $update_ref_user->no_user_left =  $left_count + 1 ;
            $update_ref_user->user_listing_left =  $request->email . ' , ' . $list_all_left_user  ;

            $update_ref_user->save();

        }


        if($previous_users_left && $previous_users_right)
        {
            $update_ref_user->direct_referal = $direct_referal . ' , ' . $request->email ;
            $update_ref_user->no_direct_referal = $direct_count +1 ;

            $update_ref_user->save();

        }
        //sms gatewat
        /*Send SMS using PHP*/



        return redirect('/admin/login');
       // \Session::flash('msg', 'Changes Saved.' );

    }

    else {
        echo "You Have Entered Invalid Pin";
    }






}

###################code ends here ######################

When a new user is registered he inputs reference code in signup form. I want that when a new user is registered with mobile->'123' and reference number '987' then step 1) find "reference number" of new registered user then search "reference number" in "mobile" field of all registered user then add 50% of $200(it is currency)to his income add previous user's name in a database field name="user_under"

step 2) find "reference number" of previous user then search "reference number" in "mobile" field of all registered user then add 30% of $200(it is currency)to his income add previous user's name in a database field name="user_under"

step 3) find "reference number" of previous user then search "reference number" in "mobile" field of all registered user then add 10% of $200(it is currency) to his income and add previous user's name in a database field name="user_under"

step 4) find "reference number" of previous user then search "reference number" in "mobile" field of all registered user then add previous user's name in a database field name="user_under"

******step 4 continues till reference number= null/ no value

I cannot understand how to apply the logic

Last updated 3 years ago.
0

Maybe you should try and make your question a bit more concise?

0
Solution

here is solution

$referal_user = $request->ref;
    $referal_email = DB::table('admins')->where('mobile', $referal_user)->first();
    $referal_id = $referal_email->id;
    $right_count = $referal_email->no_user_right;
    $list_all_right_user = $referal_email->user_listing_right;
    $ref = $request->ref;
    $mobile = $request->mobile;
    $user_listing_left = $referal_email->user_listing_left;
    while( $refUser = Admin::where('mobile', $ref)->first() )
    {
        $refUser->user_left = $request->email;
        $refUser->user_listing_left = $refUser->user_listing_left . "," .$request->email;
        $refUser->save();

        // Update $ref to find the next guy
        $ref = $refUser->ref;

    }
0

Sign in to participate in this thread!

PHPverse

Your banner here too?

kobid kobid Joined 31 Aug 2017

Moderators

We'd like to thank these amazing companies for supporting us

Your logo here?

Laravel.io

The Laravel portal for problem solving, knowledge sharing and community building.

© 2025 Laravel.io - All rights reserved.