2013-08-14 4 views
3

총계를 PHP 양식으로 얻기 위해 필드에 함께 곱하려고합니다.PHP 곱하기 두 개의 필드

<label for="190_mnth2"></label> 
      <div align="center"> 
      <input name="190_mnth" type="text" id="190_mnth2" value="10" size="5" /> 
      </div></td> 
     <td><div align="center"> 
      <label for="190_rate"></label> 
      <input name="190_rate" type="text" id="190_rate" value="190.00" size="10" /> 
     </div></td> 
     <td><div align="center"> 
      <input name="total_190" type="text" id="total_190" value=<? echo '190_mnth2' * '190_rate' ?> size="10" /> 

위 내 현재 코드이지만 대답은 그것은 나에게 누군가가 도움을 줄 수 있다면 내 공식 뭐가 문제 36100을 제공 완전히 잘못?

+1

''리터럴 문자열 인 190_mnth2''. 곱셈에 사용하면 190으로 평가됩니다. – andrewsi

+1

잘못하고 있습니다. PHP는 다음과 같은 표현식을 평가할 수 없습니다. 세 번째 필드가 생성되면 첫 번째 필드가 사용자에 의해 채워지지 않았습니다 (왜냐하면 사용자가 필드를보기 전에 모든 것이 발생하기 때문입니다) ... 전송 및 평가 데이터에 대한 자습서를 검토하십시오 . Explain Basic은 스택 오버플로의 목적이 아닙니다. – dognose

답변

8

우선 총계를 계산할 수 없습니다. 자바 스크립트가 아닙니다. 서버에 요청을 보내고받는 계산 요청 값을 가진 양식이 필요합니다. 서버가 처리하고 계산 된 값을 다시 사용자에게 던집니다. ... 그래서, 양식 주위의 필드를 감싸 게시 (선호) 당신의 방법을 설정하고 또한

<?php 
    if(isset($_POST['submit_button_name'])) { //Use $_GET if it's a GET request 
     //Save the values in variable 
     $mnth_190 = $_POST['190_mnth']; 
     $rate_190 = $_POST['190_rate']; 

     //Calculate here 
     $total = $mnth_190 * $rate_190; 

     /* Now you can use $total either to echo straight in your page, 
     or inside another input field */ 
    } 
?> 

양식 게시하고, 검사를 계산하기 전에 데이터의 유효성을 검사해야합니다처럼 당신은 당신의 PHP 코드를 작성할 수있는 것보다 사용자 입력에 문자열이나 다른 특수 문자가 없는지 여부

3

PHP의 목적은 현재 페이지의 HTML을 업데이트하지 않고 표시 할 HTML을 생성하는 것입니다. 다른 페이지에 표시하기 위해 데이터를 제출하는 POST 요청을 작성할 수 있습니다. 현재 페이지의 총계를 동적으로 업데이트하려면 Javascript 또는 다른 프런트 엔드 언어를 사용해야합니다.

0
<? echo '190_mnth2' * '190_rate' ?> 

당신은 아마이 작동하도록하기 위해 190 * 190

로 PHP로 변환됩니다 두 개의 문자열을, 번식을 시도하고, 당신은 그것을해야 할 겁니다 별도의 두 단계 (어쨌든 PHP 사용). PHP는 서버 측 언어이므로 $ _POST [ '']를 사용해야하거나 쿼리 문자열의 일부로이 두 값을 제출하고 $ _GET [ '']를 사용하여 계산합니다.

이런 식으로하고 싶지 않다면 대신 JavaScript를 대신 처리하는 것이 좋습니다.

0

예를 들어이 작업을 수행 할 것입니다. 다음 사용

$190_mnth2 = 10; 
$190_rate = 190; 

$total = $190_mnth2 * $190_rate; 

: value=<? echo '$total'; ?>