learning from Toptechboy project

[I am learning from Paul you tube channel and the last project has me stunned.
it is the distance meter with a button.
the earlier project, just the meter with lcd works great. readout on lcd and serial monitor worked.
when I included the code for the button, serial monitor stopped and it only shows “set the Target”
second line “press to measure” when I press the button nothing happens, I removed the button and used a jumper wire, to make sure the connection works.
i checked that A0 is and ground are for the button.
i compaired the code with the toptechboy website and I am stuck.
can some body enlighten me, where I went wrong or at least point to it.

thank you
fritz

#include <LiquidCrystal.h>
int rs=7;
int en=8;
int d4=9;
int d5=10;
int d6=11;
int d7=12;
int buttonPin=A0;
int buttonVal;
LiquidCrystal lcd(rs,en,d4,d5,d6,d7);

int trigPin=2;
int echoPin=3;
int pingTravelTime;
float pingTravelDistance;
float distanceToTarget;
int dt=5000;

void setup() {

lcd.begin(16,2);
pinMode(trigPin,OUTPUT);
pinMode(echoPin,INPUT);
pinMode(buttonPin,INPUT);
digitalWrite(buttonPin,HIGH);
Serial.begin(9600);
}

void loop() {

//lcd.clear();
lcd.setCursor(0,0);
lcd.print(“set the Target”);
lcd.setCursor(0,1);
lcd.print(“press to Measure”);

buttonVal=digitalRead(buttonPin);
while(buttonVal==1);{
buttonVal=digitalRead(buttonPin);
}

digitalWrite(trigPin,LOW);
delayMicroseconds(10);
digitalWrite(trigPin,HIGH);
delayMicroseconds(10);
digitalWrite(trigPin,LOW);
pingTravelTime=pulseIn(echoPin,HIGH);
delay(25);

pingTravelDistance=(pingTravelTime*765.528012)/(3600.*1000000);
distanceToTarget=pingTravelDistance/2;

Serial.print(" Distance to Target is: “);
Serial.print(distanceToTarget);
Serial.println(” inches ");

//lcd.clear();
lcd.setCursor(0,0);
lcd.print(“Target Distance”);
lcd.setCursor(0,1);
lcd.print(distanceToTarget);
lcd.print(" Inches ");
delay(dt);

 while(buttonVal==1);{
 buttonVal=digitalRead(buttonPin);
}

You accidentally put a ';' between the 'while' and the block you wanted to be controlled by the 'while'. The 'while' is only controlling the ';' (which does nothing) and your variable will never change again.

Thank you John.
Fritz