폼 결과 document.php 내보내기...

안녕하세요~~

문의사항 있어 이렇게 글 남깁니다~

우선 소스 먼저 첨부하도록 하겠습니다.~

                <script type="text/javascript">
        
        jQuery(function () {
    var fields = jQuery('#form1 :input').change(calculate);

    function calculate() {
        var price = 0;
        fields.each(function () {
            price += +jQuery(this).val();
        })
        var finalanswer=price.toString();
        jQuery('#kboard_option_price').html(finalanswer.replace(/\B(?=(\d{3})+\b)/g, ","));
        
        
        
        
    }
})
        </script>
        
        
        

        

<div id="form1" method="post" action="">

    <p>
        <select name="CPU" id="CPU">
            <option value="0" selected>CPU 선택</option>
            <option value="246000">Intel Core i5 4440 3.1GHz (3.3GHz Turbo) Quad Core</option>
            <option value="268800">Intel Core i5 4570 3.2GHz (3.6GHz Turbo) Quad Core CPU</option>
            <option value="282000">Intel Core i5 4570S 2.9GHz (3.6GHz Turbo) Quad Core CPU</option>
            <option value="294000">Intel Core i5 4670 3.4GHz (3.8GHz Turbo) Quad Core CPU</option>
            <option value="414000">Intel Core i7 4770 3.4GHz (3.9GHz Turbo) Quad Core CPU</option>
        </select>
    </p>
    <p>
        <select name="GPU" id="GPU">
            <option value="0">그래픽 카드 선택</option>
            <option value="1498800"<?php if($content->option->price == '1498800') { ?> selected<?php } ?>>EVGA GeForce GTX Titan 6GB Superclocked</option>
            <option value="958800"<?php if($content->option->price == '958800') { ?> selected<?php } ?>>Gigabyte GeForce GTX 780 Ti 3GB</option>
            <option value="754800">Gigabyte GeForce GTX 780 OC 3GB</option>
            <option value="502800">EVGA GeForce GTX 770 Superclocked 2GB</option>
            <option value="378000">EVGA GeForce GTX 760 ACX 2GB</option>
            <option value="262800">Gigabyte GeForce GTX 660 OC 2GB</option>
            <option value="250800">EVGA GeForce GTX 650 Ti Boost 2GB Superclocked</option>
            <option value="154800">EVGA GeForce GTX 650 1GB</option>
            <option value="130800">ASUS GeForce GT 640 2GB</option>
            <option value="814800">XFX Radeon R9 290X 4GB</option>
            <option value="598800">XFX Radeon R9 290 4GB</option>
        </select>
    </p>
    <p>
        <select name="HDD" id="HDD">
            <option value="0">HDD 선택
                <option value="70800">500gb</option>
                <option value="82800">1TB</option>
                <option value="118800">2TB</option>
                <option value="130800">1TB SSHD</option>
                <option value="166800">3TB</option>
                <option value="178800">2TB SSHD</option>
                <option value="238800">4TB</option>
        </select>
    </p>
    <p>
        <select name="RAM" id="RAM">
            <option value="0">RAM 크기 선택</option>
            <option value="66000">4gb</option>
            <option value="110400">8gb</option>
            <option value="202800">16gb</option>
            <option value="526800">32gb</option>
        </select>
    </p>
    <p>
        <select name="OD" id="OD">
            <option value="0">광학 디스크 선택</option>
            <option value="26400">DVD-RW</option>
            <option value="102000">Blu Ray</option>
        </select>
    </p>
    <p>
        <select name="PSU" id="PSU">
            <option value="0">파워 선택</option>
            <option value="58800">Aerocool VP450 450W True Power</option>
            <option value="70800">Aerocool VP550 550W True Power</option>
            <option value="94800">Aerocool VP650 650W Power Supply</option>
            <option value="106800">Aerocool VP750 750W True Power</option>
            <option value="210000">Silverstone Strider Plus 850W ST85F-P</option>
            <option value="214800">Antec High Current Gamer 900W Power Supply HCG-900</option>
            <option value="226800">Aerocool Strike-X 1100W</option>
            <option value="418800">Seasonic X-1250 80Plus Gold 1250W</option>
        </select>
    </p>
</div>


<div class="kboard-attr-row">
<label class="attr-name" for="kboard_option_price">합계:</label>
<div class="attr-value">

    <form method="post" action="document.php">
    
    <div id="kboard_option_price" name="kboard_option_price" value="<?php echo $content->option->price?>"></div>
    
    </form>
        </div>

 

 

컨택트 폼에 이렇게 가격합산 스크립 삽입해서 폼 제작중에 있습니다.

일단 가격합산 결과 뽑는 부분까진 해결이 되었는데...문제는

이 합산된 결과를 document.php 로 내보내야 하는데.....결과가 가지질 않네요;;;

어누부분에서 문제가 있는건지 싶어 조언 구합니다~

 

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
  • 안녕하세요~^^

    우선 먼저 아래의 코드를 찾아서

    <form method="post" action="document.php">
    		<div id="kboard_option_price" name="kboard_option_price" value="<?php echo $content->option->price?>"></div>
    </form>

    아래의 코드로 교체해보세요. (<form></form> 태그 삭제)

    <input type="text" id="kboard_option_price" name="kboard_option_price" value="<?php echo $content->option->price?>">

    저장후 글수정 화면에서 가격합산 결과가 저장이 되는지 확인해보시겠어요?

    저장이 됐다면

    document.php 파일에서는 아래 코드를 사용해서 결과값을 출력할 수 있습니다.

    <?php echo $content->option->price?>

     

    올려주신 코드에서 몇가지 수정해야할 부분이 있습니다.

    <div id="form1" method="post" action="">

    위 코드에서 method와 action은 <form> 태그에서 사용하셔야 됩니다.

     

    고맙습니다.

  • 안녕하세요~^^ 우선 감사드립니다~...

    근데 음.....합산결과가 인풋창에 받질 못하네요 ㅠㅠㅠㅠㅠㅠ.......

  • document.php 파일에서 출력 먼저

    editor.php 파일에서 합산결과가 저장이 안 되는 것인지 파악해보시겠어요?

  • editor.php 

    먼저 합산결과과 출력이 안됩니다~


    합계:  <div id="kboard_option_price"></div>

    이렇게 그냥 div 값만 주었을땐 합산결과과 

     

    이렇게 뜨긴 한데 

    인풋 소스삽입후에는 이렇게

    빈칸으로 합산결과를 인풋칸에 받지 못합니다...ㅠㅠㅠㅠㅠㅠ

    도큐먼트 쪽으로도 전달이 안되고요~;;;;;;
        

    일단 현재 합산결과 부분 소스 입니다.

    <div class="kboard-attr-row">
    <label class="attr-name" for="kboard_option_price">합계:</label>
    </div>


    <input type="text" id="kboard_option_price" name="kboard_option_price" value="<?php echo $content->option->kboard_option_price?>">

  • 그럼 기존의 <div id="form1" method="post" action=""> 코드에서

    id="form1" 부분도 지우셨는지요? 이 부분은 있어야 동작될 듯합니다.

    이건 자바스크립트 문제구요.

  • 그부분은 그대로 입니다~.!

    지워서도 해보고 그대로 둔상태로도 해보았습니다....ㅠㅠㅠㅠㅠ

    일단 인풋에서 <div id="kboard_option_price"></div> 받지않으니....ㅠㅠㅠㅠㅠ...음...

  • 안녕하세요~^^

    <input> 태그를 다시 추가하시고 script를 아래 코드로 교체해보세요.

    <script type="text/javascript">
    jQuery(function () {
    	var fields = jQuery('#form1 :input').change(calculate);
    	function calculate() {
    		var price = 0;
    		fields.each(function () {
    			price += +jQuery(this).val();
    		})
    		var finalanswer=price.toString();
    		jQuery('#kboard_option_price').val(finalanswer.replace(/\B(?=(\d{3})+\b)/g, ","));
    	}
    })
    </script>

     

    <input> 태그에 대한 value 값은 jQuery('#아이디').val() 코드를 통해 접근할 수 있습니다.

    자세한 내용은 아래 링크를 참고해보세요.

    http://api.jquery.com/val/

    고맙습니다.

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기