2010-12-11 4 views
0

PHP에서 양식 탭 순서를 처리하는 더 좋은 방법이 있습니까?이것보다 PHP에서 폼 탭 순서를 처리하는 더 좋은 방법이 있습니까?

페이지가 여러 번 반복됩니다. 레이아웃으로 인해 순차적이지 않은 탭 순서가 필요하므로 html로 지정해야합니다 (순서가 잘못 지정 될 수 있습니다). 내 양식은 PHP 내부의 PHP 변수에 대한 산술 연산을 허용하지 않는 PHP의 블록 견적 메커니즘을 사용하여 구성됩니다.

구현했지만 구현은 어색해 보입니다. 나는이 일을 더 우아한 방법으로 생각하는 것을 도울 수 없다.

먼저 페이지 상단에서 일부 PHP 변수를 초기화합니다. 나중에, 나는이 작업을 수행하는 PHP 루프 내부에 그런

$tab1=1; 
$tab2=2; 
$tab3=3; 
$tab4=5; 
$tab5=4; 

...

$tab1+=5; 
$tab2+=5; 
$tab3+=5; 
$tab4+=5; 
$tab5+=5; 

그런 다음 블록 인용에 변수를 추가 ...

$picshtml .= <<<BLOCK 
<div class="addcomment"> 
    <a href="">Add Comment</a><br /><br /> 

    <div id="commentform$row[photoid]" class="commentform"> 
     <div id="submitanim$row[photoid]" style="display:none"> 
      <img src="loadingAnimation.gif" alt="Processing..." /> 
     </div>  
     <form action=""> 
      <div style="float:left;clear:left;text-align:right"> 
       Comment<br />Name <input type="text" id="name$row[photoid]" tabindex="$tab1" /> <br /> 
       Email <input type="text" id="email$row[photoid]" tabindex="$tab2" /><br /> 
       Website <input type="text" id="website$row[photoid]" tabindex="$tab3" /><br /> 
       <input type="button" value="Submit Comment" id="submit$row[photoid]" onclick="javascript:ajax($row[photoid])" tabindex="$tab4" /> 
      </div> 
      <textarea rows="5" cols="50" id="comment$row[photoid]" tabindex="$tab5" ></textarea> 
     </form> 
    </div> 
</div> 

BLOCK; 
+0

, 난 당신을 도움이 될 것이다. 코드에 백틱 틱 표기법을 사용하는 대신 각 4 줄의 공백을 사용하여 코드 행을 들여 쓰기하십시오. – scoates

+0

궁극적으로 그것의 걸림쇠를 얻었다 ... backtick 것은 그것을 얻을 지옥을 만든다. 대신 버튼을 사용하여 4 개의 공백을 추가했습니다. – MrVimes

답변

1

방법에 대한 sprintf? 여기

$html = <<<BLOCK 
... 
<input type="text" tabindex="%d" /> 
... 
BLOCK; 

$order = 0; 

$html = sprintf($html, $order, $order + 1, $order + 2, $order + 3, $order + 4, $order + 5, ...); 

$order += 6; 

// ... 

구문 참조 :이 편집 카르마이 있다면

http://php.net/sprintf

+0

완벽! 트릭을 했어. 감사 :) – MrVimes

관련 문제