2016-09-22 1 views
0

간단한 html 입력 페이지를 만들어 나중에 사용할 수 있도록 mysql db에 데이터를 입력하고 싶습니다. 입력에 시간을 절약하기 위해 필자는 일부 필드를 자동 완성 필드로 만들고 싶습니다. 내가 스크립트 here를 발견하고이html5 및 mysql을 사용하여 여러 자동 완성 필드를 만드는 방법

<?php 
//connect to mysql database 
$connection = mysqli_connect("localhost","user","password","autocomplete_test") 
or die("Error " . mysqli_error($connection)); 

//fetch data from database 
$sql = "select distinct First_Name from data"; 
$result = mysqli_query($connection, $sql) or die("Error " . mysqli_error($connection)); 

?> 
<!DOCTYPE html> 
<html> 
<head> 
<title>Autocomplete Textbox in HTML5 PHP and MySQL</title> 
</head> 
<body> 
<label for="fname">First Name</label> 
<input type="text" list="firstname" autocomplete="off" id="fname"> 
<datalist id="firstname"> 
    <?php while($row = mysqli_fetch_array($result)) { ?> 
     <option value="<?php echo $row['First_Name']; ?>"><?php echo $row['First_Name']; ?></option> 
    <?php } ?> 
</datalist> 
<?php mysqli_close($connection); ?> 
</body> 
</html> 

이 하나 개의 필드에 대한 잘 작동하지만, 같은 일부 값을 조정 한 후 보이는 나도 두 번째 필드 자동 완성을 만드는 방법을 알아낼 수 없습니다 두 번째 필드를 추가 할 때. 내 예제에서는 'Last_Name'에 대한 두 번째 필드가 필요합니다. 그것은 데이터베이스에 있고 나는 동안 First_Name 및 Last_Name에 대한 모든 값을 호출 할 수 있으며 echo 부분은 html 부분 앞에있는 내용을 간단히 표시합니다. 내가 시도한 것은 무엇이든 첫 번째 필드 또는 두 번째 필드에 대한 자동 완성 또는 두 필드에 대한 db의 첫 번째 항목입니다. 도와주세요. 감사.

+0

당신이 – cmorrissey

답변

0

은 단순히 두 번 데이터베이스를 조회하고, 두 개의 입력을 출력에서 ​​당신을 중지 어디에도 없습니다 :

<?php 
//connect to mysql database 
$connection = mysqli_connect("localhost","user","password","autocomplete_test") 
or die("Error " . mysqli_error($connection)); 

//fetch data from database 
$sql1 = "select distinct First_Name from data"; 
$result1 = mysqli_query($connection, $sql1) or die("Error " . mysqli_error($connection)); 
$sql2 = "select distinct Last_Name from data"; 
$result2 = mysqli_query($connection, $sql2) or die("Error " . mysqli_error($connection)); 

?> 
<!DOCTYPE html> 
<html> 
<head> 
<title>Autocomplete Textbox in HTML5 PHP and MySQL</title> 
</head> 
<body> 
<label for="fname">First Name</label> 
<input type="text" list="firstname" autocomplete="off" id="fname"> 
<datalist id="firstname"> 
    <?php while($row = mysqli_fetch_array($result1)) { ?> 
     <option value="<?php echo $row['First_Name']; ?>"><?php echo $row['First_Name']; ?></option> 
    <?php } ?> 
</datalist> 
<label for="lname">Last Name</label> 
<input type="text" list="lastname" autocomplete="off" id="lname"> 
<datalist id="lastname"> 
    <?php while($row = mysqli_fetch_array($result2)) { ?> 
     <option value="<?php echo $row['Last_Name']; ?>"><?php echo $row['Last_Name']; ?></option> 
    <?php } ?> 
</datalist> 
<?php mysqli_close($connection); ?> 
</body> 
</html> 
+0

감사 다니엘을 Last_Name''을 위해 노력 코드를 추가하십시오가, 그 위대한 작품! – MartinB

+0

믿을 수 없지만, 실제로 실제로이 방법 (많은 시도 중 하나)을 가졌지 만 $ result2의 변수를 $ sql2로 변경하지는 않았지만 대신 $ sql1을 사용했습니다. 내가 아무것도 얻지 못했던 것도 당연하지. – MartinB

관련 문제