PHP Daten aus Postgres Datenbank in HTML Dropdownmenü einfügen (SQL)
Hallo zusammen,
ich bin gerade dabei eine kleine WebApp zu entwickeln und habe eine Frage zu SQL. Ich habe Schon eine Datenbank verbindung zu meinem Datenbankserver hergestellt. Diese funktioniert auch.
Der Code soll aus der Datenbank Test -> Schema: ProzessBI -> Tabelle "pp_tbl_MD_Bereiche" -> Die Spalte 'stxt_Bereich' komplett im Dropdown Menü anzeigen. Leider macht er das aber nicht!
Meine Frage ist jetzt: Was habe ich hier bei meinem Befehl falsch gemacht?
Danke schon im Voraus für euere Hilfe!
ich bin gerade dabei eine kleine WebApp zu entwickeln und habe eine Frage zu SQL. Ich habe Schon eine Datenbank verbindung zu meinem Datenbankserver hergestellt. Diese funktioniert auch.
Der Code soll aus der Datenbank Test -> Schema: ProzessBI -> Tabelle "pp_tbl_MD_Bereiche" -> Die Spalte 'stxt_Bereich' komplett im Dropdown Menü anzeigen. Leider macht er das aber nicht!
Meine Frage ist jetzt: Was habe ich hier bei meinem Befehl falsch gemacht?
<div class="form-group">
<label class="col-sm-2 controle-label">
Bereich
</label>
<div class="col-sm-10">
<select name="Abteilung" id="Auswahlabteilung" class="form-control m-b">
<?
//pp_tbl_MD_Bereiche (Name der Tabelle)
$sql = SELECT * FROM "pp_tbl_MD_Bereiche";
$db_erg = pg_query( $db, $sql );
if ( ! $db_erg )
{
die('Ungültige Abfrage: ' . pgsqli_error());
}
while ($row = pg_fetch_array( $db_erg, PGSQL_ASSOC))
{
echo "<option>". $row['stxt_Bereich'] . "</option>";
}
pg_free_result( $db_erg );
?>
</select>
</div>
</div>
Danke schon im Voraus für euere Hilfe!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 319896
Url: https://administrator.de/contentid/319896
Ausgedruckt am: 19.11.2024 um 17:11 Uhr
7 Kommentare
Neuester Kommentar
Moin ITFlori,
muss in Zeile 17 nicht PGSQL_ASSOC als 3 Parameter angegeben werden statt als zweiter?
Jetzt;
IMHO:
oder nur:
Der Parameter2 ist doch (optional) die "row" des gewünschten Datensatzes.
Wenn du als Rownummer den Wert PGSQL_ASSOC übergibst, dann gibt es u. U. diesen Satz nicht.
Grüße
Biber
muss in Zeile 17 nicht PGSQL_ASSOC als 3 Parameter angegeben werden statt als zweiter?
Jetzt;
while ($row = pg_fetch_array( $db_erg, PGSQL_ASSOC))
IMHO:
while ($row = pg_fetch_array( $db_erg, NULL, PGSQL_ASSOC))
oder nur:
while ($row = pg_fetch_array( $db_erg))
Der Parameter2 ist doch (optional) die "row" des gewünschten Datensatzes.
Wenn du als Rownummer den Wert PGSQL_ASSOC übergibst, dann gibt es u. U. diesen Satz nicht.
Grüße
Biber
Hallo @ITFlori,
hier ein funktionierendes Beispiel:
Lagere gerne die Abfragen auf unterschiedliche Tabelle, etc. aus. Dazu kannst du wie oben bereits gezeigt einen Import machen.
Dann einfach einen Funktion zusammen tippern...
Die kann dann aufgerufen werden...
P.S. Am Ende nicht das Schließen vergessen..
Gruß und schönes Wochenende, Sascha
hier ein funktionierendes Beispiel:
<html>
<head>
</head>
<body>
<?php
include_once ('db/connect.php');
connect();
?>
<div class="form-group">
<label class="col-sm-2 controle-label">
Bereich
</label>
<div class="col-sm-10">
<select name="Abteilung" id="Auswahlabteilung" class="form-control m-b">
<?php
$sql = mysql_query("SELECT * FROM pp_tbl_MD_Bereiche");
while($db_erg = mysql_fetch_array($sql)){
echo '<option value="' . $db_erg['stxt_Bereich'] . '">' . $db_erg['stxt_Bereich'] . '</option>';
}
?>
</select>
</div>
</div>
</body>
</html>
Lagere gerne die Abfragen auf unterschiedliche Tabelle, etc. aus. Dazu kannst du wie oben bereits gezeigt einen Import machen.
Dann einfach einen Funktion zusammen tippern...
function myName(){
$sql = mysql_query("SELECT * FROM pp_tbl_MD_Bereiche");
while($db_erg = mysql_fetch_array($sql)){
echo '<option value="' . $db_erg['stxt_Bereich'] . '">' . $db_erg['stxt_Bereich'] . '</option>';
}
}
<div class="form-group">
<label class="col-sm-2 controle-label">
Bereich
</label>
<div class="col-sm-10">
<select name="Abteilung" id="Auswahlabteilung" class="form-control m-b">
<?php myName() ?>
</select>
</div>
</div>
Gruß und schönes Wochenende, Sascha
Hallo @ITFlori,
schön zu hören, dass es funktioniert. Sollte deine Anfrage damit gelöst sein, dann bitte auf gelöst setzen.
Danke und Gruß, Sascha
schön zu hören, dass es funktioniert. Sollte deine Anfrage damit gelöst sein, dann bitte auf gelöst setzen.
Danke und Gruß, Sascha