2016-10-27 5 views
0

Я пытаюсь добавить следующую гиперссылку на электронное письмо. Эта ссылка позволит пользователю получить доступ к динамическому заказу клиента. Он работает, когда он указан на веб-странице, но не в электронном письме.base64_encode в phpmailer

Это работает, когда перечисленные на моей странице:

$str = '[INVOICENO] =' . $OrderNumber . ''; 

echo ' <a href="http://n-server/nameofsoftware/PlatformRO/WebClient/NTLM/1/Integration?p=RLV&fc=de9766b2-4d43-4b93-b55d-0afac57bf79b&q=' . base64_encode ($str) . '">$OrderNumber</a> '; 

Теперь я пытаюсь отправить по той же ссылке в электронном письме

$str = '[INVOICENO] =' . $OrderNumber . ''; 

$email_message = ' 
<a href="http://n-server/nameofsoftware/PlatformRO/WebClient/NTLM/1/Integration?p=RLV&fc=de9766b2-4d43-4b93-b55d-0afac57bf79b&q=' . base64_encode ($str) . '">$OrderNumber</a> 


'; 

Есть ли проблема с использованием base64_encode в электронной почте?

Я попытался превратить его в переменную, и это все равно не работает.

Любые идеи?

Update:

Проблема заключается связь нарушается в электронном письме.

Это пример ссылки, когда его echo'd на веб-странице:

http://n-server/nameofsoftware/PlatformRO/WebClient/Client/Result?fc=de9766b2-4d43-4b93-b55d-0afac57bf79b&q=%5BINVOICENO%5D%20%3D3846411&displayOneDoc=False&orgId=1

Это пример ссылки, когда его в электронной почте:

displayOneDoc = False & orgId = 1

+0

Вы на самом деле не сказали нам о проблеме. – nogad

+0

код, который вы нам показали, в порядке. ошибка в другом месте. «это не работает» - это абсолютная наименее полезная вещь, которую вы могли бы сказать. объясните, что именно не работает и опубликуйте полный код. –

+0

Посмотрите еще раз ^^^^^^ – JCD

ответ

0

использование urlencode php

Эта функция удобна при кодировании строки для использования в части запроса в URL, как удобный способ для передачи переменных на следующую страницу

urlencode(trim(base64_encode($str))) 

UPDATE 1:

<li> 
<strong>View Order:</strong> 

<a href='nserver2/nameofsoftware/PlatformRO/WebClient/NTLM/1/<?php echo urlencode(trim(base64_encode ("INVOICENO=". $OrderNumber))); ?>'> <?php echo $OrderNumber ?></a> 

</li> 

UPDATE 2:

<?php 

    $OrderNumber='123'; //ASSUMPTION 

    $str = '[INVOICENO] ='.$OrderNumber; 

    $final_string = urlencode(trim(base64_encode ($str))); 

    $email_message = ' 
    <a href="http://n-server/nameofsoftware/PlatformRO/WebClient/NTLM/1/Integration?p=RLV&fc=de9766b2-4d43-4b93-b55d-0afac57bf79b&q='.$final_string.' "> '.$OrderNumber.'</a>'; 

    ?> 

    <li> <strong>View Order:</strong> 
    <?php echo $email_message; ?> 
    </li> 
+0

  • Просмотр Заказ:$OrderNumber
  • Я до сих пор не хватает большой кусок URL с этим кодом – JCD

    +0

  • Просмотр заказа: попробовать это один \t \t
  • JYoThI

    0

    Попробуйте использовать urlencode и urldecode для значения base64_encode из-за того, что это будет some = в base64_encode.