Help with adding to tar filenames

Hi there, i have been working on a backup script and have it just about working, the only problem im left with is that my filenames for my backups are all the same are replacing one another when backing up.

currently i have
BACKUP_FILE=backup_$(date +%d%m%y).tgz
but would like something like
BACKUP_FILE=backup_(filename)_$(date +%d%m%y).tgz
to help with identification

any help is appreciated and my code is posted below.

    #!/bin/bash
   
  clear
   
  VALID_PATH=0
  BACKUP_FILE=backup_$(date +%d%m%y).tgz
  BACKUP_DIR=.backup/
   
  [[ ! -d $BACKUP_DIR ]] && mkdir -p $BACKUP_DIR
  echo 1 Perform A Directory Backup
  echo 2 Perform A File Backup
  echo 3 Restore From Backup
  echo 4 Exit Program
   
  read OPTION
   
  case $OPTION in
   
  "1") echo You Selected Option 1
  echo Please Enter The Directory You Wish To Backup
  read SOURCE
   
  while [[ $VALID_PATH -eq 0 ]]
   
  do
   
  if [[ -d "$SOURCE" ]]; then
          VALID_PATH=1
          BACKUP_FILE="$BACKUP_DIR""$BACKUP_FILE"
  else
          echo This Path Is Invalid
          echo Please Enter A Valid Path
          read SOURCE
  fi
  done
  tar -czvf $BACKUP_FILE $SOURCE && echo "Backup Done" || echo "Backup Failed"
  ;;
   
  "2") echo You Selected Option 2
  echo Please Enter The File You Wish To Backup
  read SOURCE
   
  while [[ $VALID_PATH -eq 0 ]]
   
  do
   
  if [[ -f "$SOURCE" ]]; then
          VALID_PATH=1
          BACKUP_FILE="$BACKUP_DIR""$BACKUP_FILE"
  else
          echo This Path Is Invalid
          echo Please Enter A Valid Path
          read SOURCE
  fi
  done
  tar -czvf $BACKUP_FILE $SOURCE && echo "Backup Done" || "Backup Failed"
  ;;
   
  "3") echo You Selected Option 3
  echo Contents Of The Backup Directory
  ls $BACKUP_DIR
  echo Please Enter The Name Of The File You Wish To Restore
  read RESTORE_FILE
  RESTORE_FILE="$BACKUP_DIR""$RESTORE_FILE"
   
  while [[ $VALID_PATH -eq 0 ]]
   
  do
  if [[ -f $RESTORE_FILE ]]
  then
  VALID_PATH=1
  else
  echo This Path Is Invalid
  echo Contents Of The Backup Directory
  echo
  ls "$BACKUP_DIR"
  echo
  echo Please Enter The Name Of The File You Wish To Restore
  read RESTORE_FILE
  RESTORE_FILE="$BACKUP_DIR""$RESTORE_FILE"
  fi
  done
   
  echo
  echo The File $RESTORE_FILE Will Be Used To Perform A Restore
  echo
  tar -xzvf $RESTORE_FILE
  ;;
   
  "4") echo Goodbye
  exit 0;;
   
  esac
   
  if [ $OPTION -eq 1 -o $OPTION -eq 2 ]; then
  echo
  echo SUCCESS!
  echo
  echo The Following Files Were Backed Up To $BACKUP_FILE
  echo
  tar -tf $BACKUP_FILE
  elif [ $OPTION -eq 3 ]; then
  echo
  echo SUCCESS
  echo
  echo Your Files/Directories Were Restored
  fi
  

Not sure how often you run it but you could just add your wanted filename and also add seconds to the date so the names on the same day should be different for sure.

its run whenever changes are made to the files by the user. the program allows to pick files from within several directories so there is no set filename to use, it all depends on which files are backed up. If i cant find a way to make it specific to the file then ill resort to the seconds.