Automatic temperature controlled fan code problem

Hello,
O
I am doing the project in the link and I wired it exactly the same way the project creator did but when I powered my 5 volt source the lcd screen only shows black boxes and the fan doesn’t stay a consistent speed. It slows down and speeds up, also my I293D dissipates a lot of heat. This was the code used

#include <LiquidCrystal.h>

float temp;
int temppin= 0;
int in1=7;
int in2=8;
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
lcd.begin(16, 2);
Serial.begin(9600);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
}

void loop() {
temp=analogRead(temppin);
temp=temp*0.48828125;
lcd.setCursor(0, 1);
lcd.println(temp);
lcd.print("*f");
delay(500);
if(temp<100) {
digitalWrite(in1,HIGH);
digitalWrite(in2,LOW);
}
if(temp<90) {
digitalWrite(in1,HIGH);
digitalWrite(in2,LOW);
delay(1500);
digitalWrite(in1,LOW);
digitalWrite(in2,LOW);
}
if(temp<80){
digitalWrite(in1,HIGH);
digitalWrite(in2,LOW);
delay(1000);
digitalWrite(in1,LOW);
digitalWrite(in2,LOW);
}
else;
{ digitalWrite(in1,HIGH);
digitalWrite(in2,LOW);
delay(1500);
digitalWrite(in1,LOW);
digitalWrite(in2,LOW);
}
}

I downloaded it to Arduino but not working the way it should. If you have any questions message me so I can answer and understand what I did wrong

You need to show the link you used and the circuit diagram etc, plus the make and model number /type of your motor.

A picture of your hardware set up would also help.

For a L293 to get very hot means it probably is overloaded / shorting.

Have you proved the arduino and lcd work ok on their own with the Ardunio Examples ?