2013-04-16 7 views
1

사용자가 특정 이름의 이미지를 업로드 할 수있는 업로드 양식에 대한 이미지 링크를 만들려고합니다. 나는 그들에게 "사람"정보가 포함 된 일련의 페이지를 가지고있다. 그림이 제공되지 않으면 스틱 그림과 같은 자리 표시 자 이미지를 사용합니다. 이미지를 클릭하면 페이지 이름을 기반으로 이미 채워진 파일 이름을 가진 업로드 양식으로 사용자가 이동하도록 설정하고 싶습니다. 문제는 템플릿 내부에 {{PAGENAME}}을 사용하면 어떤 이유로 링크가 끊어지는 것입니다.양식을 업로드하여 양식을 업로드하십시오.

사람 인포 박스 템플릿 (중요한 부분 만) :

[[image:PlaceHolder.jpg|300px|link=http://www.MyWiki.com/index.php?title=Special:Upload&wpDestFile={{PAGENAME}}.jpg]] 

이것은 ... 순간에 작동하지 않습니다는 여기에서 목표는이 링크 여기서 "처럼 뭔가 일을하는 것입니다 John Smith "는 템플리트가 놓여있는 페이지의 이름입니다 : http://en.wikipedia.org/wiki/Special:Upload?wpDestFile=John Smith.jpg. (대상 파일 이름은 "John Smith.jpg"로 채워집니다.

+0

귀하의 코드는 나를 위해 잘 작동하는 것 같다 – svick

+0

그것은 실패합니다. 템플릿 안에있을 때 – Zack

+0

정확히 어떻게 실패할까요? 어떻게 동작합니까? – svick

답변

1

문제는 페이지 이름에 공백이 있음으로 인해 일부 페이지에서만 작동하는 것입니다. . 여기

수정 프로그램은 다른 사람에 (그것은 공백을 제거, 그래서 "존 스미스는" "홍길동"이된다 :

... /index.php?title=Special:Upload&wpDestFile={{#replace:{{PAGENAME}}| |}}.jpg

+0

공백을'_ '로 바꾸는 것이 더 합리적이지 않습니까? – svick

+0

당신도 그렇게 할 수 있습니다. 내 파일 이름에 CamelCase를 사용하는 것을 선호합니다. – Zack

+0

{{#urlencode :}} 또는 {{PAGENAMEE}}를 사용하면 페이지 제목에 앰퍼샌드가 포함되어있을 때 수정되지 않습니다. – MaxSem