2016-10-07 3 views
0

에서 선택한 것을 기반으로 데이터베이스 검색 두 콤보 상자에서 선택한 텍스트를 사용하여 간단한 검색을 수행하려고합니다. 나는이 권리를 얻기 위해 고투하고있다. 내 코드는 다음과 같습니다. 제안하고 도움을 주시면 대단히 감사하겠습니다!2 combobox - php

<form method="POST" action="" > 
<label for="From"> From : </label> 
<select id="cmbfrom" name="from" onchange="document.getElementById('selected_text').value=this.options[this.selectedIndex].text" > 
<option value=""></option> 
<option value="C">C</option> 
<option value="F">F</option> 
<option value="H">H</option> 
<option value="V">V</option> 
</select> 
<label for="To"> To: </label> 
<select id="cmbto" name="to" onchange="document.getElementById('selected_text2').value=this.options[this.selectedIndex].text" > 
<option value=""></option> 
<option value="F">F</option> 
<option value="V">V</option> 
<option value="H">H</option> 
<option value="C">C</option> 
</select> 

<input type="submit" name="search" value="Search"> 
</form> 


<?php 
if(isset($_POST['search'])) { 

$source = mysql_real_escape_string($_POST['from']); //from value 
echo $source; 
} 
$sql = mysql_query("select * from trips where tripfrom ='$source'");  

while ($row = mysql_fetch_array($sql)){ 
echo '<br/> ID: '.$row['id']; 
echo '<br/> First Name: '.$row['firstname']; 
echo '<br/> Last Name: '.$row['lastname']; 
echo '<br/> Phone: '.$row['phonenum']; 
echo '<br/> From: '.$row['tripfrom']; 
echo '<br/> To: '.$row['tripdest']; 
echo '<br/> Seats: '.$row['seats']; 
echo '<br/><br/>'; 
    } 

?>

내 의도는 아마도 그 아래에 콤보 상자와 같은 페이지에 표시 할 결과 콤보 상자 선택을 사용하여 데이터베이스로부터 검색하는 것입니다.

잘 모르겠습니다. 오류 방법 :

PHP는 오류가 발생했습니다를

심각도 :

메시지주의 : 정의되지 않은 변수 : 소스

파일 이름 :보기/search.php

줄 번호 : (122)

도와주세요. 나는 PHP에 매우 익숙하지 않다.

+0

처리됩니다 누르면 다음 PHP는 모든 것을 알아서합니다 텍스트를 입력 값 인수로? –

+0

아니요, 어떻게해야합니까? – user396123

+0

코드를 다시 읽었습니다. 당신은 JS가 그렇게하고있다. 그것은 당신이 "onchange"에서 쓴 것입니다. 코드가 작동해야합니다. 시도 할 때 어떤 일이 발생하는지 설명 할 수 있습니까? –

답변

1

좋아. 코멘트에서 말한대로 검색 후 실행해야하는 PHP 코드를 새 파일 ('search-action.php')로 옮겨야합니다. 그런 다음 <form>에이 같은 action='search-action.php'를 추가해야합니다

<form action='search-action.php'> 

당신이 선택한두고 JS의 어떤 종류가 있습니까 제출 버튼을

+0

동일한 페이지에서 결과를 얻을 수 있도록 코드를 수정하려면 어떻게해야합니까? 나는 그것이 꼭 필요한 것임을 분명히 요구한다. – user396123

+0

예전의 접근 방식은 코드와 뷰 파일, 액션 파일 모두에 코드를 복사하는 것이다. 현대적인 접근 방식은 Javascript와 JSON을 사용하여 비동기 적으로 수행하는 것입니다. 아마도 JQuery를 사용했을 것이다. 원한다면 그 튜토리얼을 알려줄 수 있습니다. –

+0

예. 나는 오래된 학교 방식을 시도했지만 해결 방법을 모른다는 오류가 있습니다. 내가 코멘트 영역에서 그 일을 할 수 없기 때문에 편집 된 코드를 처음에 질문에 추가했습니다. 오류는 다음과 같습니다 메시지주의 : 정의되지 않은 변수 : 소스 파일 이름 :보기/search.php 줄 번호 : (122) PHP는 오류 심각도 을 발생했습니다 – user396123