in reply to issue with double quotes

If you don't want to set of quotes, don't place two sets of quotes.

But what if $value actually did contain quotes? You need to convert the contents of $value into an HTML attribute

sub text_to_html_value { my ($s) = @_; $s =~ s/&/&amp;/g; $s =~ s/"/&quot;/g; return qq{"$s"}; } my $q_value = text_to_html_value($value); print qq{<input type="text" name="product" value=$q_value size="10">};