나는이 문제에 대한 흥미로운 해결책을 찾고 있었지만 아무도 분명히 불행하게도 저에게 이야기하지 않았습니다.체크 박스의 상태를 반환하고 체크하지 않은 경우 0을 반환합니다.
사용자 환경 설정을 저장하는 일련의 확인란이 있으므로 페이지가 채워질 때 환경 설정을 표시 할 수 있도록 확인란의 상태를 알아야합니다. 또한 확인란을 선택하지 않으면 HTML에서 값을 반환하지 않는다는 것을 알았습니다. 확인하지 않으면 0을 저장해야합니다. 그래서 이것을 달성하는 좋은 방법은 무엇입니까? HTML 및 PHP 만 사용합니다.
몇 가지 해결책을보고 몇 가지 질문을했습니다. 먼저 코드
<form action="TradingRules.php" method="post">
<h2><legend>Entry Rules</legend></h2>
<p><label> <input type="checkbox" name="30minRule" value="1" <?php if(isset($_POST["30minRule"])) { echo 'checked="checked" '; } ?>>30 Min Rule</label></p>
<p><label> <input type="checkbox" name="buyOnPocketPivot" value="1">Buy on Pocket Pivot</label></p>
<p><label> <input type="checkbox" name="buyEODonPPday" value="1">Buy EOD on PP Day</label></p>
<p><label> <input type="checkbox" name="buyOn10WeekLineTest" value="1">Buy on 10 week line Test (within 3%)</label></p>
<p><label> <input type="checkbox" name="okBelow400k" value="1">Ok below 400k Average</label></p>
<p><label> <input type="checkbox" name="buyIfOthersAreBreakingOut" value="1">Buy if other are breaking out</label></p>
<p><label> <input type="checkbox" name="buyIfStockHasUnusualStrength" value="1">Buy if stock has unusual strength</label></p>
<p><label> <input type="checkbox" name="buyOnNon-breakoutVolume" value="1">Buy on non-breakout Volume</label></p>
<p><label> <input type="checkbox" name="buyOnGap" value="1">Buy on Gap</label></p>
<p><label> <input type="checkbox" name="enableGapRules" value="1">Enable Gap Rules</label></p>
<p><label> <input type="checkbox" name="buy<1WeekBeforeEarnings" value="1">Buy < 1 week before earning</label></p>
<p><label> <input type="checkbox" name="buyOn3WeeksTight" value="1">Buy on 3 weeks tight</label></p>
<p><label> <input type="checkbox" name="buyOnHTF" value="1">Buy on HTF</label></p>
<p><label> <input type="checkbox" name="buyOnPullbackToPivot" value="1">Buy on pullback to pivot </label></p>
<p><input type="submit" /></p>
</form>
질문 :
1) 숨겨진 버튼을 배치해야합니까 어디? 내가 다른 사람의 위에 그들을 원하기 때문에 나는 <p>
태그를 가지고있다. 그래서 나는 그들 모두를 <p>
태그 안에 넣었다? 그럼이 작품과 같은 것이겠습니까?
<p><label> <input type="hidden" name="30minRule" value="0">
<input type="checkbox" name="30minRule" value="1" <?php if(isset($_POST["30minRule"])) { echo 'checked="checked" '; } ?>>30 Min Rule</label></p>
<p><label> <input type="hidden" name="buyOnPocketPivot" value="0">
<input type="checkbox" name="buyOnPocketPivot" value="1">Buy on Pocket Pivot</label></p>
2) 체크 박스 상태를 데이터베이스에서 다시 정보를 얻을 수있는 주제에, 나는 형태는 그 값을 얻기에 적합 할 것입니다 내 PHP 스크립트에 연결 한? 그들은 모두 같은 장소를 오가며 또는 다른 곳으로 가야합니까?
미리 도움을 청하십시오!
1) 예. 작동합니다. 그들은 숨겨져 있으므로 그들이 어디에 있든 상관하지 않습니다. 오랫동안 그들은 형태를 유지하고 있습니다. 2) 어떤 값이 당신의'form'에 있는지 안다면 어느 것이 올바르게 제출되지 않았는지 또한 알 수 있습니까? 왜 정확히 선택되지 않은 입력 상자를 전달하고 싶습니까? –
이들은 규칙을 저장하는 데 사용되므로 사용자가 상자를 선택 취소하고 DB에 아무 것도 보내지 않으면 규칙이 여전히 적용됩니다. 그 나쁜. – illcrx
PHP 부분에서 _POST 변수의 값으로 동일한 배열을 채우는 것보다 키와 값이 모두 0이어야하는 모든 가능한 값을 갖는 배열을 가져야합니다. # 1 폼 태그 사이에 숨김을 넣을 수 있습니다. # 2 질문에 'TradingRules.php'에서 DB를 가져 와서 업데이트 할 수 있는지 물어 보는 중인지 확인하십시오. 스크립트 체크의 시작 부분에 ie $ _POST [ '30minRule']이 설정되어 있으면 숨겨진 입력과 체크 박스에 같은 이름 = "30minRule"을 가진 DB의 업데이트가 의도 한 것과 다를 수 있습니다. – BojanT