programing

드롭다운에서 공백 뒤에 데이터 목록이 완전한 이름을 표시하지 않음

linuxpc 2023. 7. 30. 17:26
반응형

드롭다운에서 공백 뒤에 데이터 목록이 완전한 이름을 표시하지 않음

데이터 목록에서 공백 뒤에 전체 이름을 인쇄하지 않습니다.공간 뒤에 완전한 이름을 무시하고 이름의 첫 단어를 제공하는 것입니다.이름은 데이터베이스에서 가져옵니다.뱅크 이름이 "XYZ 글로벌 뱅크"라고 가정하면 드롭다운에 "XYZ"만 표시되고 나머지 이름은 표시되지 않습니다.여기서 저를 도와주세요.

$query = "SELECT name FROM issuer";
$result = $conn->query($query);
if(!$result) die($conn->error);
$rows=$result->num_rows;
echo "<datalist id='bankNames'>";
for($i=0; $i<$rows; $i++)
{
$result->data_seek($i);
$row = $result->fetch_array(MYSQLI_ASSOC);
echo "<option value='".$row['name']."'>";
 }
 echo "</datalist>";

안녕하세요, 이 코드를 사용하면 공간에 대한 모든 문제를 해결할 수 있습니다.참고로 이미지 파일 하나를 첨부했으니, 당신에게 많은 도움이 될 것입니다.

<?php
 $conn = new mysqli('localhost', 'username', 'password', 'database-name') 
              or die ('Cannot connect to db');
 $result = $conn->query(" SELECT DISTINCT name FROM issuer;");
   echo "<select name='name' class='required-entry form-control' id='name' >";
     while ($row = $result->fetch_assoc()) {
           unset($name);
           $name = $row['name'];
           echo '<option value=""></option>';
           echo '<option value="'.$name.'">'.$name.'</option>';
       }
       echo "</select>";
?>

출력 이미지 표시 방법.

$name = htmlentities($row['name']);
echo "<option value='$name'>";

질문 세부 정보로는 명확하지 않지만, 경험한 문제가 특정 브라우저와 관련이 없는 경우 옵션 값에 구문 분석 문자가 포함되어 있거나 입력 태그 구문에 결함이 있을 수 있습니다.

Rick James가 답변에서 설명했지만 설명을 게을리한 것처럼 HTML 문서에 인쇄되는 동적 값에서 벗어나 모든 것이 올바르게 채워지고 렌더링되는지 확인해야 합니다.

mysqli 쿼리에서 반환된 결과 집합 개체를 안전하게 반복할 수 있습니다. 이렇게 하면 호출할 필요가 없습니다.fetch()순환하여

코드: (PHize 데모)

<label for="bankname">Name of Bank: </label>
<input id="bankname" list="bank_names" name="bank_name">
<datalist id="bank_names">
<?php foreach ($conn->query("SELECT name FROM issuer") as $row) { ?>
    <option value="<?php echo htmlentities($row['name']); ?>">
<?php } ?>
</datalist>

양식 내에서 유사한 식별 속성과 해당 속성의 관계에 주의를 기울입니다.

  1. <label>술래잡기for="bankname"에 대한 참조<input>술래잡기id="bankname".
  2. <input>술래잡기list="bank_names"에 대한 참조<datalist>술래잡기id="bank_names".
  3. <input>술래잡기name="bank_name"제출 페이로드 배열에서 제출된 값의 키로 사용됩니다.다음을 통해 제출된 값에 액세스합니다.$_GET['bank_name']또는$_POST['bank_name']양식 방법에 따라 다릅니다.

추가 참조:

  1. https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist
  2. https://www.techonthenet.com/html/elements/datalist_tag.php

언급URL : https://stackoverflow.com/questions/43006936/datalist-is-not-showing-complete-name-after-space-in-dropdown

반응형