Hallo!
Ich möchte eine Menü für die Konsole erstellen und steh vor folgendem Problem
Es wird eine Auswahl von verfügbaren Datenbanken dargestellt. in etwa so:
Verfuegbare Datenbanken: ------------------------ 1. information_schema 2. test 3. world
Nun soll der Nutzer mit Hilfe der Ziffer die Datenbank auswählen können. Sobald er aber eine Falscheingabe macht, wie z.B. eine 4 oder ein anderes Zeichen wie eine Ziffe, soll die Eingabeaufforderung wieder erfolgen. Nun habe ich verschiedene Versuche mit while schleifen ausprobiert und auch mit do until usw. So richtig zufrieden stellen ist dies alles nicht. Eigentlich bin ich kein liebhaber von goto und das gibt es auch offenbar nicht mehr in der Powershell. ICh habe leider keine Idee das Problem zu lösen.
Aktuell sieht es so aus. Beutetet aber, dass die Bedingung in while nicht erfüllt wird, da die Eingabe ja noch nicht erfolgt ist.
$connStrg=getConncetionStrg #Create connectionstring $databases=getDatabases($connStrg) #get Databases printDatabases($databases)# print databases while (-not (isNumeric($db_choice))-or ($db_choice -gt $databases.length)){ [Int]$db_choice= Read-Host "Auswahl der Datenbank" Write-Host "length"$databases.length }
Über einen Lösungsvorschlag für dieses Problem würde ich mich sehr freuen
VG niesel