y en si estaria mejor si lo hicieras asi:
Código PHP:
echo sprintf('<a href="ofertar.php?nombre=%s&idart=%s&precio =%s">Ofertar</a>', $nom, $dif, $prec);
Recuerda que cuando tu tratas de que PHP dinamicamente inserte una variable tienes que usar comillas dobles (") no comillas simples (') ya que asi PHP si encuentra una $var la reemplaza por el valor.
Saludos.