2012-03-25 8 views
0

다음 코드를 사용하여 html 버튼을 통해 검색 값을 게시했습니다. 하지만 onlick이 작동하지 않는 것 같습니다. 버튼을 클릭했는지 여부에 관계없이 값이 게시됩니다. 이 문제를 어떻게 해결할 수 있습니까 ??Onlick 버튼은 항상 html 버튼의 값을 게시합니다.

<form method="post" action="urban.php" id="search_form"> 
     <input type="button" class="button" name="search" value="Urban" onlick="<?php $_POST['search'] = 'Urban'; ?>"> 
</form> 

    <?php if(isset($_POST['search']) && !empty($_POST['search'])) 
     { 
      include('searchfunction.php'); 

      if(count($data) > 0) 
      { 
    ?> 
         <script type="text/javascript"> 
         $(document).ready(function(){ 

         var description = ''; 
         var myPlaylist = [ 
    <?php 
          echo(implode(',', $data)); 
    ?> 
       ]; 

         $('#main').ttwMusicPlayer(myPlaylist, { 
         autoPlay:false, 
         description:description, } 
         ); 

         }); 
         </script> 
    <?php 
      } 
      else 
      { 
       echo ('No sounds found.'); 
      } 
     } 
    ?> 
+0

:

여기에 빠른 수정입니다. onclick = "doSearch()"와 같은 것입니다. 꽤 이상한 당신이 거기서 무엇을하고 있는지, 나는 정말로 이해하지 못합니다. –

+0

'onlick = "''-이 코드는 무엇입니까? – David

+0

버튼 값을 게시하기 만하면됩니다. 나는 다른 범주를 가지고 있으며 단추 또는 범주를 누를 때 결과가 표시되도록하려고합니다. –

답변

2

PHP & JS 동시에 실행되지 않습니다 : PHP는 HTML 코드를 생성, 서버 측을 실행 . Javascript는 모든 HTML이 이미 렌더링 된 클라이언트 측에서 실행됩니다. 당신이 자바 스크립트 함수를 호출 온 클릭으로

<form method="post" action="urban.php" id="search_form"> 
     <input type="hidden" name="search" value="<?php echo 'Urban';?>" 
     <input type="submit" value="Search"> 
</form> 
<?php if(isset($_POST['search']) && !empty($_POST['search'])) 
    { 
     include('searchfunction.php'); 

     if(count($data) > 0) 
     { 
?> 
        <script type="text/javascript"> 
        $(document).ready(function(){ 

        var description = ''; 
        var myPlaylist = [ 
<?php 
         echo(implode(',', $data)); 
?> 
      ]; 

        $('#main').ttwMusicPlayer(myPlaylist, { 
        autoPlay:false, 
        description:description, } 
        ); 

        }); 
        </script> 
<?php 
     } 
     else 
     { 
      echo ('No sounds found.'); 
     } 
    } 
?> 
+0

고마워, 실제로 내 문제를 해결하지는 못했지만 해결책에 더 가까워졌습니다. 마지막에 버튼 대신 단순히 제출 버튼을 사용했습니다.

2

PHP와 HTML을 혼합하고 있지만 원하는대로 작동하지 않습니다. html이 사용자 브라우저에서 "실행"되는 동안 PHP 코드는 서버에서 해석됩니다. 양식을 제출하고 값을 서버에 제공 할 수 있습니다.

a를 바로 온 클릭 기능

<input type="button" class="button" name="search" value="Urban" onlick="this.parentNode.submit();"> 
에게 버튼을

<input type="submit"> 

를 제출하거나 추가 사용

관련 문제