I need help with Enemy AI damaging player scripts

So I a need to coding. Normally I would make the Environment etc. and my friend would do the coding. But I want to make my own to get use to the coding before i go to college and I can’t get the Enemy AI to hurt my player.
There is also a UI that is going to go down after the player model gets hurt.
Here is the script for the PlayerHealth.

using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class PlayerHealth : MonoBehaviour
{
public int startingHealth = 100; // The amount of health the player starts the game with.
public int currentHealth; // The current health the player has. public Slider healthSlider; // Reference to the UI's health bar. public Image damageImage; // Reference to an image to flash on the screen on being hurt. public AudioClip deathClip; // The audio clip to play when the player dies. public float flashSpeed = 5f; // The speed the damageImage will fade at. public Color flashColour = new Color(1f, 0f, 0f, 0.1f); // The colour the damageImage is set to, to flash.

Animator anim; // Reference to the Animator component.
AudioSource playerAudio; // Reference to the AudioSource component. PlayerMovement playerMovement; // Reference to the player's movement. PlayerShooting playerShooting; // Reference to the PlayerShooting script. bool isDead; // Whether the player is dead. bool damaged; // True when the player gets damaged.

void Awake ()
{
// Setting up the references.
anim = GetComponent <Animator> ();
playerAudio = GetComponent <AudioSource> ();
playerMovement = GetComponent <PlayerMovement> ();
playerShooting = GetComponentInChildren <PlayerShooting> ();

// Set the initial health of the player.
currentHealth = startingHealth;
}


void Update ()
{
// If the player has just been damaged...
if(damaged)
{
// ... set the colour of the damageImage to the flash colour.
damageImage.color = flashColour;
}
// Otherwise...
else
{
// ... transition the colour back to clear.
damageImage.color = Color.Lerp (damageImage.color, Color.clear, flashSpeed * Time.deltaTime);
}

// Reset the damaged flag.
damaged = false;
}


public void TakeDamage (int amount)
{
// Set the damaged flag so the screen will flash.
damaged = true;

// Reduce the current health by the damage amount.
currentHealth -= amount;

// Set the health bar's value to the current health.
healthSlider.value = currentHealth;

// Play the hurt sound effect.
playerAudio.Play ();

// If the player has lost all it's health and the death flag hasn't been set yet...
if(currentHealth <= 0 && !isDead)
{
// ... it should die.
Death ();
}
}


void Death ()
{
// Set the death flag so this function won't be called again.
isDead = true;

// Turn off any remaining shooting effects.
playerShooting.DisableEffects ();

// Tell the animator that the player is dead.
anim.SetTrigger ("Die");

// Set the audiosource to play the death clip and play it (this will stop the hurt sound from playing).
playerAudio.clip = deathClip;
playerAudio.Play ();

// Turn off the movement and shooting scripts.
playerMovement.enabled = false;
playerShooting.enabled = false;
}
}

Here is the script i used for the EnemyAttack.

using UnityEngine;
using System.Collections;


public class EnemyAttack : MonoBehaviour
{
public float timeBetweenAttacks = 0.5f; // The time in seconds between each attack.
public int attackDamage = 10; // The amount of health taken away per attack.

Animator anim; // Reference to the animator component.
GameObject player; // Reference to the player GameObject. PlayerHealth playerHealth; // Reference to the player's health. EnemyHealth enemyHealth; // Reference to this enemy's health. bool playerInRange; // Whether player is within the trigger collider and can be attacked. float timer; // Timer for counting up to the next attack.

void Awake ()
{
// Setting up the references.
player = GameObject.FindGameObjectWithTag ("Player");
playerHealth = player.GetComponent <PlayerHealth> ();
enemyHealth = GetComponent<EnemyHealth>();
anim = GetComponent <Animator> ();
}


void OnTriggerEnter (Collider other)
{
// If the entering collider is the player...
if(other.gameObject == player)
{
// ... the player is in range.
playerInRange = true;
}
}


void OnTriggerExit (Collider other)
{
// If the exiting collider is the player...
if(other.gameObject == player)
{
// ... the player is no longer in range.
playerInRange = false;
}
}


void Update ()
{
// Add the time since Update was last called to the timer.
timer += Time.deltaTime;

// If the timer exceeds the time between attacks, the player is in range and this enemy is alive...
if(timer >= timeBetweenAttacks && playerInRange && enemyHealth.currentHealth > 0)
{
// ... attack.
Attack ();
}

// If the player has zero or less health...
if(playerHealth.currentHealth <= 0)
{
// ... tell the animator the player is dead.
anim.SetTrigger ("PlayerDead");
}
}


void Attack ()
{
// Reset the timer.
timer = 0f;

// If the player has health to lose...
if(playerHealth.currentHealth > 0)
{
// ... damage the player.
playerHealth.TakeDamage (attackDamage);
}
}
}

I just can’t find the problem. I have spent over a week trying to figure it out. And I did set up the Health UI correctly before doing the script.
P.S. Just remember like I said at the top I am new to coding and really need help.

Please help.
Thanks.

Please use code tags. That’s unreadable.

Ok man did that. Sorry I was in a rush to head out. I guess I forgot.