Предложу простейший вариант, если ссылки в письмах повторяются (не уникальны для каждого письма) - занести ссылки в БД. Далее для письма с номером 1234567 выбираем ссылку номер 123. Вычисляем $hash = md5('VerifyRedirect:'.$messageid.':'.$urlid);
В письмо вставляем ссылку www.mydomain.ru/redirect.php?url=123&msg=1234567&hash=$hash
Хоть все и открыто, но нельзя поменять никакой символ - в redirect.php можно будет проверить снова по md5 правильность параметров, вытащить из БД ссылку и сделать редирект.
Arik: Да и не тольок в M_PI дело, вообще Double это всего лишь "двойная точность".
Неспроста она называется "двойной", так как есть еще "одинарная".
Вещественные числа изначально хранятся в "примерном" выражении, даже если бы у вас M_PI имела 10000 знаков.
Думаю дело в M_PI.
В реальном PI бесконечное количество знаков, в программировании используется, допустим 10.
Значит cos("примерно_пи") равно "примерно_минус_один".
Вы может быть не обратили внимание на "e-15" - это означает что там идет сначала 15 нулей, то есть 0.0000....000979717439317883.
Округляйте результаты. Если у вас экран - то или до целого значения или до десятых, в крайнем случае сотых.
Arik: Я запутался в вашей задаче :)
Если вы хотите расположить N точек на плоскости, так чтобы они лежали на полуокружности, то для начала возьмем N точек, и пронумеруем их от 0 до N-1.
Пройдемся в цикле по n от 0 до N-1:
Градус_n = n * 180 / (N-1).
Это мы получили градусы (для 3 точек это будет 0, 90, 180).
Чтобы перевести это в плоскость, надо задать радиус, в вашем случае R=80 пикселей.
Тогда Xn = cos(Градус_n) * R, Yn = sin(Градус_n) * R
В зависимости от того на чем пишите, возможно надо все 180 заменить на PI, а перед формулой Yn поставить "минус" (зависит от того как рисуете).
Например вот сервис - https://api.mylnikov.org/wifi/main.py/get?bssid=00...
Однако телефон берет MAC всех точек в радиусе приема сигнала, получает их примерные координаты (они не у всех есть в базе) и вычисляет положение на основе полученных координат и силы сигнала.
Я не знаком с Heroku, они позволяют вам привязать ваш домен к myapp.herokuapp.com?
Если да, то вам нужно прописать A запись для @ равную 174.129.25.170 - это для редиректа mydomen.com -> www.mydomen.com, затем прописать CNAME для www равную myapp.herokuapp.com (либо то, что выдает Heroku). Вроде вы все сделали, только непонятно кто выдает ошибку, вроде DNS тут уже непричем, ошибку может выдавать Heroku.
Можно немного затруднить подбор, проводя много раундов шифрования (миллион, например) ключа паролем. Чтобы один пароль проверялся, допусти, полсекунды.
В письмо вставляем ссылку www.mydomain.ru/redirect.php?url=123&msg=1234567&hash=$hash
Хоть все и открыто, но нельзя поменять никакой символ - в redirect.php можно будет проверить снова по md5 правильность параметров, вытащить из БД ссылку и сделать редирект.