2011-10-25 9 views
0

내 buy.php 페이지에 다음 양식이 있습니다. 이 페이지는 checkout.php 페이지로 제출됩니다. 내가하고 싶었던 무엇PHP 체크 박스 값

Burger $4.99 <input type="checkbox" name="foods[]" value="burger"/> 
Fries $2.49 <input type="checkbox" name="foods[]" value="fries" /> 
Pizza $10.99 <input type="checkbox" name="foods[]" value="pizza" /> 
Steak $15.59 <input type="checkbox" name="foods[]" value="steak" /> 
Ribs $15.99 <input type="checkbox" name="foods[]" value="ribs" /> 

<input type="submit" name="buy" value="Buy Now" /> 

사용자가 지금 주문 버튼을 누를 때, 그들은 그들 각각의 가격과 함께 이전 페이지에서 구입 한 항목을 표시합니다 checkout.php 페이지로 리디렉션해야한다는 것입니다 그 항목뿐만 아니라 모든 항목의 합계. 사용자가 선택한 각 확인란의 값을 제공하는 $ _POST [ 'foods'] 배열을 반복하여이 입력 필드에서 값을 가져올 수 있습니다. 사용자가 구입 한 품목의 가격을 계산하여 계산할 수있는 방법은 무엇입니까? 더 많은 입력란을 포함해야합니까? 또한, 나는이 페이지들에 대해 아직 데이터베이스를 사용하고 있지 않다는 것을 언급해야한다. 죄송합니다. PHP를 처음 사용합니다. 어떤 도움이나 제안이라도 대단히 감사하겠습니다. 고맙습니다.

+1

[레이블 요소] (http://www.w3.org/)를 사용해야합니다. TR/html4/interact/forms.html # h-17.9.1) 화면 판독기 및 친구에게 더 나은 액세스를 제공하고 확인란에 더 많은 클릭 대상을 제공 할 수 있습니다. 또한 체크 상자 뒤에 레이블을 배치해야합니다 (즉, 양식 컨트롤의 해당 유형에 대한 일반 레이아웃). – Quentin

+0

스택 오버플로에 오신 것을 환영합니다! 하지만 입력란에 가격을 보내지 마십시오! 그들은 쉽게 조작 할 수 있습니다! – ComFreek

+0

PHP 체크 박스와 같은 것은 존재하지 않습니다. 다른 사람들이 문제의 원인을 알 수 있도록하기 위해서, 거기에는'tag'가 있습니다. –

답변

0

서버 측 시스템은 가격이 무엇인지 이미 알고 있어야합니다. 배열로 유지하면 데이터베이스를 사용할 수 있습니다 (데이터베이스는 장기 유지 관리 및 유연성을 위해 더 좋은 아이디어입니다).

항목의 ID가 있으므로 사용하기로 결정한 데이터 저장소에서 항목을 찾아야합니다.

이 양식에 데이터를 저장하는 것을 망칠 수 있지만 클라이언트 조작에 영향을 미치므로 (사용자가 주문한 가격을 낮출 수 있으므로) 데이터 서버 측을 저장하는 것이 더 간단하지 않습니다. 아마도

0

당신이 어딘가에이 데이터는, 어쩌면 데이터베이스를 사용할 수 있으며, 또는 (우)의 배열을 스크립트에 하드 코딩 거라고 : (

$foods = array(
    'burger' => array('prettyname' => 'Burger', 'price' => 4.99), 
    'fries' => array('prettyname' => 'Freedom Spuds', 'price' => 2.49), 
    etc... 
); 

당신은이 데이터 소스를 사용하는 것입니다 무엇을 그런 다음 체크 박스/식품 목록을 생성 한 다음 나중에 가격을 조회하는 데 사용할 수 있습니다.

+0

안녕하세요. 팁 주셔서 감사합니다. 내가 가지고있는 또 다른 질문은이 배열을 어디에서 정의 할 것인가? buy.php 또는 checkout.php 페이지에서? 입력 필드가 괜찮습니까? 아니면 이름에서 음식 []을 변경해야합니까? 고맙습니다. – user1013264

0

어딘가에 저장해야합니다 (예 : 데이터베이스 또는 스크립트 파일). 여기에서 계산을 적용해야합니다. 사용자가 쉽게 변경할 수 있으므로 HTML/DOM에 통합하는 것은 좋지 않습니다.

0

항목의 가격을 직접 산출 한 경우 비용이 이미 들었습니다. 웹 페이지에서 돌아 오는 가격을 수락하지 마십시오. 사용자가 제어하는 ​​범위 내에서 사용자가 제어 할 수 있습니다.