[SQL] 어떻게 데이터베이스에서 값을 채우기 HTML 드롭 다운 목록에
SQL어떻게 데이터베이스에서 값을 채우기 HTML 드롭 다운 목록에
HTML 양식의 일부로 나는 내 데이터베이스의 모든 사용자 이름을 표시하는 드롭 다운 목록을 가지고 싶다 만드는 오전.
누군가가 내가 잘못 뭘하는지 저를 도와 수 - 나는 트릭하지만 드롭 다운 목록을 할 것이다 다음 코드가 비어 생각? 감사.
<tr>
<td>Owner</td>
<td>
<select name="owner">
<?php
$sql = mysqli_query($connection, "SELECT username FROM users");
while ($row = $sql->fetch_assoc()){
?>
<option value="owner1"><?php echo $row['username']; ?></option>
<?php
// close while loop
}
?>
</td>
</tr>
해결법
-
==============================
1.내 생각 엔 당신이 루프 후 선택 태그를 닫지 않기 때문에 당신은 문제가 있다는 것입니다. 그 트릭을 할 수 있을까요?
내 생각 엔 당신이 루프 후 선택 태그를 닫지 않기 때문에 당신은 문제가 있다는 것입니다. 그 트릭을 할 수 있을까요?
<select name="owner"> <?php $sql = mysqli_query($connection, "SELECT username FROM users"); while ($row = $sql->fetch_assoc()){ echo "<option value=\"owner1\">" . $row['username'] . "</option>"; } ?> </select>
-
==============================
2.코드가 좋은 아래 .. 그것은 누군가가 다른 사람의 이름으로 주어졌다 이 포럼에서 aaronbd
코드가 좋은 아래 .. 그것은 누군가가 다른 사람의 이름으로 주어졌다 이 포럼에서 aaronbd
<?php $conn = new mysqli('localhost', 'username', 'password', 'database') or die ('Cannot connect to db'); $result = $conn->query("select id, name from table"); echo "<html>"; echo "<body>"; echo "<select name='id'>"; while ($row = $result->fetch_assoc()) { unset($id, $name); $id = $row['id']; $name = $row['name']; echo '<option value="'.$id.'">'.$name.'</option>'; } echo "</select>"; echo "</body>"; echo "</html>"; ?>
-
==============================
3.나는 몇 가지 디버깅 단계에 따라 좋을 것.
나는 몇 가지 디버깅 단계에 따라 좋을 것.
먼저 DB에 직접 쿼리를 실행합니다. 확인은 다시 결과를 가져오고있다. 심지어이 같은 간단하게 뭔가 당신은 당신이 실수를 한 찾을 수 있습니다, 또는 테이블이 비어, 또는 somesuch 이상한이다.
당신이 DB에 직접 뭐가 일치하는지 확인 - 위의 확인 인 경우, 반복하고는 mysql_query 다시를 받고 한 내용을 확인하기 위해 HTML로 바로 직접 $ 행의 내용을 메아리보십시오.
데이터가 출력 페이지에있는 경우, 다음 HTML 서식에 잘못 무슨 일이 일어나고 있는지 살펴 봅니다.
아무것도 $ 행의 출력이없는 경우는 mysql_query가 예를 들어, 작동하지 않는 이유 그러나, 다음 파악 사용자가 DB 쿼리에 해당 권한이 있는가, 당신이 열려있는 DB 연결을 수행 등등 DB에 연결하는 웹 서버는 [이 라인에 뭔가가 종종있을 수있는 잡았다] 수
약간 쿼리 변경
$sql = mysql_query("SELECT username FROM users") or die(mysql_error());
오류를 강조하는 데 도움이 될 수 있습니다 : PHP 매뉴얼을
-
==============================
4.
<select name="owner"> <?php $sql = mysql_query("SELECT username FROM users"); while ($row = mysql_fetch_array($sql)){ echo "<option value=\"owner1\">" . $row['username'] . "</option>"; } ?> </select>
-
==============================
5.
<?php $query = "select username from users"; $res = mysqli_query($connection, $query); ?> <form> <select> <?php while ($row = $res->fetch_assoc()) { echo '<option value=" '.$row['id'].' "> '.$row['name'].' </option>'; } ?> </select> </form>
-
==============================
6.대신 OOP 개념을 사용합니다. 기능을 가진 클래스를 만듭니다
대신 OOP 개념을 사용합니다. 기능을 가진 클래스를 만듭니다
class MyClass { ... function getData($query) { $result = mysqli_query($this->conn, $query); while($row=mysqli_fetch_assoc($result)) { $resultset[] = $row; } if(!empty($resultset)) return $resultset; } }
다음 코드에서 호출 함수에 클래스 객체를 사용
<?php $obj = new MyClass(); $row = $obj->getData("select city_name from city"); ?> <select> <?php foreach($row as $row){ ?> <option><?php echo $row['city_name'] ?></option> <?php } ?> </select>
전체 코드와 설명을 여기에서 찾을 수 있습니다
from https://stackoverflow.com/questions/8022353/how-to-populate-html-dropdown-list-with-values-from-database by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] MySQL은 / SQL : 업데이트 된 테이블 자체에서 상관 하위 쿼리와 업데이트 (0) | 2020.05.09 |
---|---|
[SQL] 영숫자는 PostgreSQL을 함께 정렬 (0) | 2020.05.09 |
[SQL] 열 값이 변경 선택 행 (0) | 2020.05.09 |
[SQL] 어떻게 첫번째 COL의 존재 자동 증가와 MySQL의에서 DATA INFILE을로드하려면? (0) | 2020.05.09 |
[SQL] 어떻게 작업의 상태를 확인할 수 있습니까? (0) | 2020.05.09 |