shotgun like action

i got this code but all it does is drop the bullets on the ground! all the other guns work and thier code is

                        // Create the Bullet from the Bullet Prefab
                        var bulletPrefab = Instantiate(bullet, spawnLocation.transform.position, transform.rotation);
                        //source.Play();
                        bulletPrefab.AddComponent<TimeoutSpawn>();
                        // Add velocity to the bullet
                        bulletPrefab.GetComponent<Rigidbody>().velocity = -transform.forward * 18 * speed;
                        ammo--;

few lines down more i have (shotgun code)

                                //Shotgun movement
                                for (int i = 0; i <= Random.Range(1, 6); i++)
                                {
                                    Vector3 shotgun = new Vector3(spawnLocation.transform.position.x, Random.Range(spawnLocation.transform.position.y - 30, spawnLocation.transform.position.y + 30), spawnLocation.transform.position.z);
                                    var bulletPrefabshotgun = Instantiate(bullet, spawnLocation.transform.position, Quaternion.Euler(shotgun));
                                    //source.Play();

                                    bulletPrefabshotgun.GetComponent<Rigidbody>().velocity = -transform.forward * 18 * speed;
                                }

???

i have fixed this using Mathf.lerp and randomizing the rotation