Heim  >  Artikel  >  Backend-Entwicklung  >  Wie fülle ich Dropdown-Listen mit Enum-Werten aus MySQL?

Wie fülle ich Dropdown-Listen mit Enum-Werten aus MySQL?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-27 08:39:301002Durchsuche

How to Populate Dropdowns with Enum Values from MySQL?

Enumerationswerte in MySQL für Dropdown-Auffüllung abrufen

Eine häufige Herausforderung bei der Generierung dynamischer Formulare besteht darin, Dropdowns mit Enumerationswerten zu füllen, die aus einer Datenbank abgerufen werden. MySQL bietet eine praktische Methode zum Extrahieren dieser Werte.

Enum-Werte mit SQL abrufen

Um die möglichen Enum-Werte aus einer Datenbanktabelle abzurufen, führen Sie die folgende Abfrage aus:

<code class="sql">SHOW COLUMNS FROM [table_name] WHERE Field = '[field_name]'</code>

Enum-Werte aus Abfrageergebnis extrahieren

Die Spalte „Typ“ des Abfrageergebnisses enthält die Enum-Werte in einfachen Anführungszeichen. Um sie zu extrahieren, können Sie den folgenden Code verwenden:

<code class="php">$type = $row['Type'];
preg_match('/^enum\(\'(.*)\'\)$/', $type, $matches);
$enum = explode("','", $matches[1]);</code>

Beispielfunktion

Die folgende Funktion kombiniert die oben genannten Schritte, um Aufzählungswerte abzurufen:

<code class="php">function get_enum_values($table, $field)
{
    $type = fetchRowFromDB("SHOW COLUMNS FROM {$table} WHERE Field = '{$field}'")->Type;
    preg_match("/^enum\(\'(.*)\'\)$/", $type, $matches);
    $enum = explode("','", $matches[1]);
    return $enum;
}</code>

Diese Funktion kann in Verbindung mit Ihrer Formulargenerierungslogik verwendet werden, um Dropdowns automatisch mit aus der Datenbank abgerufenen Enumerationswerten zu füllen.

Das obige ist der detaillierte Inhalt vonWie fülle ich Dropdown-Listen mit Enum-Werten aus MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn