Excacto, al inicio de tu codigo declaraste $mail como string
$mail = "
[email protected]";
luego de eso en las lineas que fallas aplicas
$mail->AddAttachment($vartemp, $varname);
Cosa que no esta permitido debido a que $mail es un string no un objeto de tipo mail o algo así, por eso puse omo referencia phpmailer, una librería que te permite enviar correos incluso con adjuntos.
saludos