Por qué haces dos consultas SQL si al parecer ya usas un campo en comùn que las relaciona (clave foránea)?
Código PHP:
$query = "select productos.producto_id,productos_favoritos.user_name FROM productos,productos_favoritos WHERE productos_favoritos.user_name='$nick' AND productos.producto_id=productos_favoritos.producto_id";
$resp = mysql_query($query);
while($datos = mysql_fetch_array($resp)){
echo $datos['producto_id']."<br>";
};
La consulta SQL se puede mejorar usando uniones (JOIN ...). Como no sé si bajo ese "$nick" podrán resultar N "productos_favoritos" ..usa el bucle while().
Tampoco sé si exactamente ese "id_producto" de ambas tablas (productos y productos_favoritos) es el mismo y el que las relaciona .. (no pusistes el modelo de datos de tus tablas: estructura de ambas tablas).
Pero .. como veras, el tema se resuelve con MAS SQL ... que para eso está el lenguaje de consultas estructurado S.Q.L.
Un saludo,