2011-09-08 2 views
0

언어를 선택하기 위해 선택 메뉴를 사용하는 오픈 소스 PHP 스크립트를 발견했습니다. 코드 세션PHP에서 이미지를 사용하여 언어 선택

은 PHP 템플릿

$la = 0; 
foreach($trans['languages'] as $short=>$langname) { 
$params['LANGSEL'][$la]['LANG_SHORT'] = $short; 
$params['LANGSEL'][$la]['LANG_LONG'] = $langname; 
$la++; 
} 

그런 선택 메뉴를 생성 ... 루프의 사용은 상기와 같이, 상기 선택 메뉴에 기입 할 수있다 ...

<td><select class="select" name="lang"><#FOR LANGSEL#> 
<option value="<#LANG_SHORT#>"><#LANG_LONG#></option> 
<#/FOR LANGSEL#></select></td> 

그래서이 코드는 잘 작동하지만 난 대신 그래서 내가 그런 일이 일 것이라고 생각이 좀 추한 그래서 내가 이미지 입력을 만들려고 노력하고 있어요 찾을 ..

<input type="image" name="lang" value="http://localhost/index.php?lang=en" src="  <#IMAGES_DIRECTORY#>/english.png"></td> 
<input type="image" name="lang" value="http://localhost/index.php?lang=it" src=" <#IMAGES_DIRECTORY#>/italian.png"></td> 
,

하지만 아무 것도 바뀌지 않습니다. 페이지는 항상 기본 언어 인 이탈리아어로 나타납니다. html과 PHP를 배우려고 애쓰는 초보자부터 미리 감사드립니다.

+1

index.php에서 실제로 언어를 설정하는 * 방법은 무엇입니까? * 재미있는 부분입니다. –

+0

'$ _SERVER [ "HTTP_ACCEPT_LANGUAGE"]'를 기본 설정으로 활용하는 것도 고려하십시오. – mario

+0

"image"유형의 입력 요소는 추가 정보로 전송되는 클릭 위치를 제외하고 제출 버튼처럼 작동합니다. 플래그를 img 요소로 포함하는 각 플래그에 대해 별도의 링크를 사용할 수 있습니다. – Javaguru

답변

0

이름이 인 필드는 <#LANG_SHORT#>이어야합니다. 이 처리 된 후에 어떤 모양이되는지는 말하지 않지만 en 또는 it과 같은 것으로 확신합니다. 그러나 URL을 제공합니다. 또한 이미지 URL에 몇 개의 공백을 추가합니다.

이것은 아마 작동합니다

<input type="image" name="lang" value="<#LANG_SHORT#>" src="<#IMAGES_DIRECTORY#>/english.png"></td> 

하면 Internet Explorer에서 테스트해야합니다. 전통적으로 <input type="image"> 요소에는 몇 가지 문제가있었습니다.

+0

나에게 답하는 것을 괴롭히는 것에 대해 모든 여러분 께 감사드립니다. 제안한 모든 솔루션이 정확하다고 확신합니다. 그러나 Alvaro 's는 가장 단순한 것이었고 트릭을 할 것입니다. 따라서 을 완벽하게 작성했습니다. – user926652

0

여기서 문제는 당신이 단지 하나 양식 요소가 필요합니다 반면에 당신이 다른 name들과 이미지를 가지고있다, 값이 올바른 <#LANG_SHORT#> 문자열, name을했다. 이와 관련하여 selectradio 양식 요소는 작업에 완벽하게 적합하지만 input은 그렇지 않습니다.

양식 요소 이 실제로의 값이 http://localhost/index.php?lang=en 인 것 같지 않습니다. 그 언어를 변경 한 결과가 URL이 아닌가? 양식 필드의 적절한 값이 단지 en/it 일 가능성이 높습니다.

궁극적으로, 숨겨진 양식 필드가 필요하고 image의 Javascript가 필요할 때 해당 필드 값을 설정해야한다고 생각합니다. 그리고 사이트의 유용성/접근 가능성이 [잠재적으로] 높음에서 [확실히] 매우 낮음으로 나타났습니다.

관련 문제