Replacing a line in a file - HELP!!!

I have a problem in the following code ...

while read line
do
   #Get Line Number 
   OLDLINE=`sed -n $Lineno $filename`
   echo "Un Changed Line : "$OLDLINE
   echo "Enter a New Pattern : "
   read NewPattern <&1
   echo "NewPattern :"$NewPattern 
   NEWLINE=`cat $filename | sed -n $Lineno | sed s/$OldPattern/$NewPattern/`
   echo $NEWLINE
   LINECHANGE=`sed s/$OLDLINE/$NEWLINE/ $filename`
   echo $LINECHANGE
   ChangedLine=`sed -n $Lineno $filename`
   echo "Changed Line : "$ChangedLine
done < $INT_FILE

I am trying to read a line from a file and get the line and change a pattern in the line and i want to replace the
OLD line with the NEW line.

I have problem in the following line

LINECHANGE=`sed s/$OLDLINE/$NEWLINE/ $filename`

the OLD Line is not changed in NEW Line in the file.

is there any problem with the command i gave or should i need to correct it

Can anyone please help.

Thanks

Rahul

See this:

$ cat ea.txt
root 1933 1923 localhost calm 32rhewr

$ A=root

$ B=ROOT

$ sed 's/$A/$B/g' ea.txt
root 1933 1923 localhost calm 32rhewr

**No change above

So use double quotes instead of single quote: 

$ sed "s/$A/$B/g" ea.txt
ROOT 1933 1923 localhost calm 32rhewr

So 

LINECHANGE=`sed s/$OLDLINE/$NEWLINE/ $filename`

should be something like this:

LINECHANGE=`sed "s/$OLDLINE/$NEWLINE/" $filename`

//Jadu