처음으로 호출 한 긴 시간 리스너. "로스터"라는 mysql 테이블에서 "Rep_IP"라는 열을 가져 와서 배열로 변환 한 다음 해당 배열을 사용하여 html로 드롭 다운을 채우는 데 문제가 있습니다. 나는 다른 장소뿐만 아니라 여기에 나열된 몇 가지 제안을 시도하고 나는 어떤 행운을 가지고 있지 않다. 페이지는 잘 보이지만 드롭 다운에는 선택할 옵션이 없습니다. 당신 중 한 명이 내가 여기서 잘못하고있는 것을 말해 줄 수있을 것이라고 생각했습니다.mysql 열을 배열로 바꾸고 배열을 드롭 다운에 사용
<html>
<body>
<form action="insert.php" method="post">
<p>Rep ID:</p>
<?php
$con = mysql_connect("localhost", "root");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("rep_stats", $con);
$query = "SELECT Rep_ID FROM roster";
$result = mysql_query($query) or die ("no query");
$result_array = array();
echo "$query"
while($row = mysql_fetch_assoc($result))
{
$result_array[] = $row;
}
?>
<select name="Rep_ID">
<?php
foreach($result_array as $rep)
{
echo "<option value=" . $rep['Rep_ID'] . ">" . $rep['Rep_ID'] . "</option>";
}
?>
</select>
Issues Handled: <input type="number" name="IssuesHandled">
Hours Worked: <input type="number" step="any" name="HoursWorked">
<input type="submit">
</form>
</body>
</html>
위에서 볼 수 있듯이 드롭 다운은 새 테이블에 항목을 만드는 데 사용되는 양식의 일부입니다. 나는 그것이 차이를 만들지 모르지만 나는 그것을 지적했다.
괜찮습니다. – Strawberry
1.'echo "$ query"'의 끝에 세미콜론이 없습니다. 2. 배열에 값을 넣는 것은 불필요한 단계입니다 .Ian에서 제안한 결과 세트를 탐색하면서 옵션을 렌더링하십시오. 새 코드에 mysql_ * 함수를 사용하지 마십시오. [PHP 5.5.0에서 더 이상 사용되지 않습니다.] (http://php.net/m anual/en/intro.mysql.php). 대신 [prepared statements] (http://goo.gl/vn8zQ)에 대해 배우고 [PDO] (http://php.net/pdo) 또는 [MySQLi] (http://php.net/mysqli)를 사용하십시오. . – peterm
개인적으로, 나는 mysql을하는 사람과 PHP를하는 사람이 별개의 사람이라고 가장하는 것을 좋아한다. mysqler는 phper에게 그들이 원하는 것을 사용할 수있는 배열을 전달합니다. 그래서 나를 위해, 배열 구축 단계는 완벽하게 훌륭합니다. – Strawberry