Hola!,
Debería de funcionar de ésta manera.
Código PHP:
Ver original<?php
// AGREGA AQUÍ TU CONEXIÓN A LA DB.
$VALOR_CADUCO="CADUCO";
$VALOR_NO_CADUCO="ACTIVO";
mysql_query("UPDATE anuncios set estado=if(TIMESTAMPDIFF(SECOND,NOW(),fecha_exp)<0,'$VALOR_CADUCO','$VALOR_NO_CADUCO')"); $q=mysql_query("SELECT * FROM anuncios NATURAL JOIN afiliados WHERE estado='$VALOR_CADUCO'");
$estado=$row_anuncios_afiliado['estado'];
If($estado == $VALOR_CADUCO){
$name = $row_anuncios_afiliado['name'];
$usuario = $row_anuncios_afiliado['usuario'];
$name2 = $row_anuncios_afiliado['name'];
$id = $row_anuncios_afiliado['id_anuncio'];
include_once('carpeta/php-mailer/class.phpmailer.php');
$mail = new PHPMailer();
$mail->FromName = "xxxxx";
$mail->Subject = "Tu publicion $name2 ha CADUDO ";
$mail->AltBody = " Para ver el mensaje, por favor, utilice un visor de HTML de correo electrónico compatibles!"; // optional, comment out and test
$mail->Body="<p><a href='http://www.dominioi.com/anuncio/$name-$id/'><img src='http://www.dominio.com/IMAGENES/img-1.png' border='0' /></a></p>
<h2>Hola $usuario</h2>
<p><H3>Un cliente a visitado tu publicacion pero esta ya ha CADUCADO</H3></p><br>
<p><center>Para REPUBLICAR solo das click <a href='http://www.dominios.com/republicar.php?ads=$name&id=$id/'>Aqui</a></center></p>
<p><br> y si no deseas republicar solo has caso omiso al mensaje, pasado 5 dias esta se deshabilitara del sistema</p>
<p></p>
<p> Presta Atencion a este Email. un cliente a visito tu anuncio pero esta ya ha CADUDADO <br>
<br>Saludos
<br> Yavendi
<br><a href='http://www.dominio.com'>www.dominio.com</a></p>";
$mail->AddAddress($row_anuncios_afiliado['email']);
if(!$mail->Send()) {
echo 'Fallo envio mail';
} }
}//FIN DEL WHILE
?>
Saludos!.