2012-02-15 3 views
3

는 여기에 갤러리 페이지입니다. (하지만이 버튼은 페이지 당 약 15 품종을해야합니다 내 사진의 각을 자체 페이지가 있습니다 (세부 정보 페이지 및 오른쪽에있는 아코디언의 제품을 참조하십시오. 각 사진에는 CSS 클래스를 작성한 약 25 가지 프레임 크기 옵션이 있습니다. 사람들이 여러 항목을 제출하도록 할 수 있기를 바랍니다. 사진과 액자 크기를 서로 비교할 수 있도록 여러 장의 사진을 골라 내 드래그 앤 드롭 벽에 넣습니다.

그래서 someo ne는 콜럼버스의 42 "x 42"버전을 제출할 수 있습니다. "Leveled"및 27 인치 버전의 Atlanta, "Atlanta"및 시카고의 "Monroe"는 진한 파란색 벽에 붙어 있습니다.

다음은 제출하는 버튼 코드 또는 각 크기/각 사진 프레임의 다양한, 여기에 두 개의 단추가 있습니다. 단순히 에테르 인 print_r에 foreach 루프를 사용하고자하거나 사용자가 바란 각 프레임의 크기를 통해 에코 드래그 앤 드롭 test2.php 페이지에 지금

<form action="http://localhost:8888/drag-drop-test2.php" method="post" style="width: 200px; height: 200px;"> 
<input type="hidden" name="widthHeightTotal" value="424" /> 
<input type="hidden" name="picture" value="http://www.metroscap.com/images/bigJPEGS/columbus/Leveled.jpg" /> 
<input type="hidden" name="ddClass" value="TPC42test" /> 
<input type="hidden" name="widthHeight" value="354" /> 
<input type="submit" value="Add to Wall" /> 
</form> 

<form action="http://localhost:8888/drag-drop-test2.php" method="post" style="width: 200px; height: 200px;"> 
<input type="hidden" name="widthHeightTotal" value="324" /> 
<input type="hidden" name="picture" value="http://www.metroscap.com/images/bigJPEGS/columbus/Leveled.jpg" /> 
<input type="hidden" name="ddClass" value="TPC32test" /> 
<input type="hidden" name="widthHeight" value="300" /> 
<input type="submit" value="Add to Wall" /> 
</form> 

이 에코 문으로 벽을 드래그하여 비교해 본다.

echo "<div class=\"drag\" style=\"left:20px; height: ".$widthHeightTotal."px;\"><img src=\"".$picture."\" class=\"".$ddClass."\" width=\"".$widthHeight."\" height=\"".$widthHeight."\" /></div>"; 

나는 이것을 얻을 수있다. 벽에 한 장의 사진 만 제출하면됩니다. 나는 단순히 $ _POST 배열이나 $ _SESSION 배열을 두루 다니면서 내 뇌를 감쌀 수 없다.

어쩌면 PHP는 내 최선의 해결책이 아니며 jquery 일 수도 있습니다. 나는 확실히 모른다. 나는 프로그래머 나 개발자는 아니지만, 나 자신에게 위험 할만큼 충분히 알고있다. 특히 날카로운 $ obj 인 경우에 특히 그렇다.

------------- 업데이트 ----------- 단추 코드에서 대괄호를 제거했습니다.

좋아, 여기에 게시하기 전에 foreach 성명과 함께 일주일 동안 고민했습니다. (제안) 내가 정확히 수행 할 때 전체 라인이 마지막으로 채워질 때까지 에코 라인의

<div class="drag" style="left:20px; height: 324px;"><img src="" class="" width="" height="" /></div> 
<div class="drag" style="left:20px; height: 324px;"><img src="http://www.metroscap.com/images/bigJPEGS/columbus/Leveled.jpg" class="" width="" height="" /></div> 
<div class="drag" style="left:20px; height: 324px;"><img src="http://www.metroscap.com/images/bigJPEGS/columbus/Leveled.jpg" class="TPC32test" width="" height="" /></div> 
<div class="drag" style="left:20px; height: 324px;"><img src="http://www.metroscap.com/images/bigJPEGS/columbus/Leveled.jpg" class="TPC32test" width="300" height="300" /></div> 

개의 인스턴스 만 루프 당 하나 개의 값을 입금 :

여기
foreach ($_POST as $key => $value) { 
$$key = $value; 
echo "<div class=\"drag\" style=\"left:20px; height: ".$widthHeightTotal."px;\"><img src=\"".$picture."\" class=\"".$ddClass."\" width=\"".$widthHeight."\" height=\"".$widthHeight."\" /></div>"; 
} 

출력 무엇이다 네 번째 반복에 의해 올바른 값으로 나는 단순히 foreach에서 일어나는 일의 논리를 이해하지 못합니다. 그렇긴하지만 내 단추 페이지로 돌아가서 페이지에 다른 항목을 추가하려고하면 두 개의 다른 항목 8 개 (각 항목 4 개)를 얻지 못하고 하나의 항목 만 가져옵니다.

내가 원하는 모든 난 그냥 페이지에 한 에코 라인이 그냥 만들어 주겠다고 한 번에이 페이지에 하나 개의 항목이 있었다면 내 에코 라인 수 :

echo "<div class=\"drag\" style=\"left:20px; height: ".$_POST['widthHeightTotal']."px;\"><img src=\"".$_POST['picture']."\" class=\"".$_POST['ddClass']."\" width=\"".$_POST['widthHeight']."\" height=\"".$_POST['widthHeight']."\" /></div>"; 

것을 퍼팅에 대해 걱정하지 foreach에 줄을 쓰거나 할 수 있습니다. 왜냐하면 저는 페이지에 하나의 항목 만 있기 때문입니다.

내가 원하는 것은 35 개 (과잉이지만 잔인한 점이 있습니다.)로 다른 페이지의 사진이이 페이지에 끝납니다. 사실, 이상적으로는 35 가지 크기가 있습니다.

저는 분명히 내가 생각하는 것보다 분명히 어리 석습니다.

+0

있을거야? –

+0

그 예로 난 임의의 숫자를 사용하고 있습니다. 35는 쉽게 4 15,673 또는 17이 될 수 있습니다. 나는 단순히 크기가 같은 드래그 벽에 액자 사진의 여러 인스턴스를 가질 수 있기를 원합니다. 때로는 그림이 동일하거나 크기와 크기가 같은 경우도 있습니다. 사진은 완전히 다른 것입니다. – user1204165

답변

2

각 필드의 이름에서이 괄호 ([ ])를 제거해보십시오. 변수가 아니라 배열로 지정됩니다.

예를 들어, widthHeight[] 대신 widthHeight 만 지정하십시오.

하고 $ _POST 배열을받을 수있는,이 (35) 계산 방법 $_POST['widthHeight']

+0

대괄호를 제거하고 내 질문을 업데이트하여 문제를 더욱 명확하게 설명했습니다. – user1204165