2014-01-31 2 views
0

끝에 사용자 이름이있는 URL을 만들고 사용자 이름에 점을 넣을 수 있습니다. 맨 마지막에 도트를 포함 할 수도 있습니다.URL 끝 부분에 점 허용하기

URL을 작성하여 사용자에게 메일을 보내면 링크의 끝 부분에 점이 표시되지만 링크의 일부가 아닌 점은 점이 무시되는 링크를 클릭 할 때 발생합니다. 잘못된 URL이 전달됩니다.

끝에 추가 한 사용자 이름은 데이터베이스의 변수 이름이므로 해결 방법을 모르겠습니다.

+0

URL을 지정하기위한 PHP 코드를 제공해 주시겠습니까? – krishna

+0

opencart 프레임 워크에서 작업 중이며 모델 파일에서이 코드를 사용하여 메일을 보냅니다. $ message. ''프론트 엔드 웹 사이트는 '.HTTP_SERVER.'user /'.$ data ['company ']입니다."\ n \ n"; \t \t 보낸 사람 전자 메일 ID를 설정하면받는 사람 전자 메일 ID $ mail-> send(); 위의 함수를 사용하여 메일을 보내십시오. – saurabh

답변

0

가장 좋은 방법은 전자 메일을 HTML 형식으로 보내는 것입니다. 그렇게하면 링크가 무엇인지 직접 결정할 수 있고 사용자 이메일 클라이언트가 자체 마법을 수행하지 못하게 할 수 있습니다.

또 다른 가능성은 점을 URL 인코딩하는 것입니다. 이 질문에 대한 답변을보십시오 : Encode the url including hyphen(-) and dot(.) in php

+0

해결책을 가져 주셔서 감사합니다. 효과가있다. – saurabh

0

다른 말로하면 일반 텍스트로 링크를 보내고 수신자가 메시지를 읽는 100 개의 다른 모든 전자 메일 클라이언트가 사용하는 텍스트에서 URL을 추출하도록 알고리즘을 변경하려고합니다. 당신은 분명히 할 수 없습니다.

당신은 대부분의 분석 도구를 속일 할 수 있습니다 URL 인코딩 점의 경우 :

http://example.com/foo%2E 

... 또는 당신은 단순히 적절한 <a href=""></a> 태그를 HTML 전자 메일 메시지를 생성 할 수 있습니다.

0

사용자 ID (아마도 숫자)를 보내는 사용자 이름 대신에 문제가 없어집니다.

이메일 클라이언트가 쉽게 처리해야합니다.

더 많은 프로그래밍이 필요하지만 내가하는 또 다른 일은 엉망이 될 위험이없는 짧은 간단한 URL을 보내는 것입니다.

예를 들어 나는 것을 차단하고 어떤 URL 수단을 알고 적절한 리디렉션을 수행하는 PHP 코드에 전달할 URL 재 작성을 사용하여 서버 측에서 그런

http://example.com/profile_123711611121

같은 것을 보내드립니다 더 복잡한 URL 등에 :

http://example.com/users/profile/update_profile.php?id=123711611121

첫 번째 URL은 좋게 해석되며이 쉽게 비 기술 사람들이 붙여 복사 할 수 있습니다.

두 번째 URL은 두 줄로 나뉘며 올바르게 구문 분석되지 않습니다.

결론적으로 귀하는 이메일을 보내는 URL을 제어합니다. 귀하와 귀하의 사용자를 위해 간단하게 만드십시오! :)

관련 문제