Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Mehrfachauswahl über Select Box und dann zur Datenbank senden

Frage Entwicklung PHP

Mitglied: burmy

burmy (Level 1) - Jetzt verbinden

22.11.2006, aktualisiert 23.11.2006, 9233 Aufrufe, 5 Kommentare

Mehrfachauswahl einer Select Box an die DB senden

Hallo Freunde

Ich bin Zurzeit dabei mein Formular zu erweitern, das heißt das ich eine Select Box habe die aus der Datenbank gefüllt wird und ich dann einen Wert auswählen kann den ich dann zurück als INSERT oder UPDATE zur DB schicken kann, das klappt sowit auch.

Nun möchte ich eine Mehrfachauswahl einer Select Box machen, indem ich 2 oder mehr Werte auswähle, die sollen dann zur DB gesendet werden, nun ist meine Frage geht das überhaupt aus einer DB gespeissten Select Box eine Mehrfachauswahl zu machen ? und wie wird das über den PHP Code gelöst ?

Meine Codes lauten wie folgt:


1. Die Funktion für die Select Box:

01.
<?php // Select Box Inhalt von DB 
02.
function select_box($vergleich){ 
03.
 $sql = ("select ID,NAME from Tabelle");  
04.
 $query = mysql_query($sql); 
05.
 ?> <select name="Wert"> 
06.
 
07.
 <?php while($liste = mysql_fetch_array($query)) {   
08.
 if($liste["ID"] == $vergleich) 
09.
 {  ?> <option value="<?= $liste["ID"] ?>" selected><?= $liste["NAME"] ?></option> <?php } 
10.
 else 
11.
 {  ?>  
12.
 
13.
<option value="<?= $liste["ID"] ?>"><?= $liste["NAME"] ?></option> <?php } 
14.
  
15.
	}  
16.
  }  
17.
?>
Die Funktion läuft Prima, dort kann ich eine einfache Auswahl treffen und die dann zurück zu DB senden.

Mein Code für die Select Box befindet sich in einer Tabelle und wird ja von der Funktion gespeist, sie lautet wie folgt:

01.
 
02.
<?php  
03.
select_box($NAME);  
04.
?> 
05.
 
Nun möchte ich wie gesagt mehrere Werte aus der Box wählen und zur DB senden, ich weiß wohl das es über arrays gemacht werden sollte.

01.
$Werte = array[$Wert1],[$Wert2],.....[Wertn]
Aber wie das in meine Funktion eingebaut wird weiß ich dann wieder nicht.

Und wie werden die Werte dann zurück in das Formular gegeben ?

01.
$row[$Wert1],[$Wert2] 
Wäre eine Toll wenn mir jemand helfen könnte.

Mit freundlichen Grüßen Burmy
Mitglied: Xaero1982
23.11.2006 um 07:06 Uhr
1. Die Funktion für die Select Box:

01.
> <?php // Select Box Inhalt von DB 
02.
> function select_box($vergleich){ 
03.
>  $sql = ("select ID,NAME from 
04.
> Tabelle");  
05.
>  $query = mysql_query($sql); 
06.
>  ?> <select name="Wert"> 
07.
> 
Fein du wählst alles aus der Tabelle aus.

01.
>  <?php while($liste = 
02.
> mysql_fetch_array($query)) {   
03.
>  if($liste["ID"] == $vergleich) 
04.
> 

Dann guckste ob liste["ID"] == vergleich ist also gleich dem aus Name.. meiner Ansicht nach kann dies nur gleich sein, denn was willste anderes auswählen wenn nur werte aus der db drin stehen.
{ ?> <option value="<?=
$liste["ID"] ?>"
selected><?= $liste["NAME"]
?></option> <?php }
</CODE>

</CODE>
else
{ ?>

<option value="<?=
$liste["ID"] ?>"><?=
$liste["NAME"] ?></option>
<?php }

}
</CODE>
Hier wirst du nie hinkommen!
}
?>
</CODE>


lass dir doch einfach mal das ausgeben was du beim select mehrerer bekommst ...
Im Moment weiß ich nicht so recht was du erreichen willst...
Vielleicht ja ein anderer ^^
Bitte warten ..
Mitglied: Guenni
23.11.2006 um 07:27 Uhr
@burmy

Hi,

Ein ganz einfaches Script:

01.
//Zusammensetzen der Abfrage 
02.
// Erstes Element des Arrays, siehe Form, zuweisen.... 
03.
$query="select $auswahl[0]";  
04.
$i=1; 
05.
// .... anschließend in einer Schleife ein Komma und das nächste Element anhängen.... 
06.
while($i<count($auswahl)){ 
07.
 $query.=",".$auswahl[$i]; 
08.
 $i++; 
09.
10.
// .... zum Schluß Abfrage vervollständigen 
11.
$query.=" from tabelle";  
12.
// Testausgabe  
13.
echo "Testausgabe"
14.
echo "$query";
01.
<html> 
02.
<head> 
03.
<title>Untitled</title> 
04.
</head> 
05.
<body> 
06.
<form action="select.php"> 
07.
<!-- Listboxname als Array deklarieren --> 
08.
<select multiple="yes" name="auswahl[]"> 
09.
<!-- Ein Element als ausgewählt deklarieren, sonst gibt es eine Fehlermeldung --> 
10.
<option selected="yes">Apfel</option> 
11.
<option>Birne</option> 
12.
<option>Banane</option> 
13.
<option>Kirsche</option> 
14.
<option>Erdbeere</option> 
15.
<input type="submit" value="Wählen"> 
16.
</select> 
17.
</form> 
18.
</body> 
19.
</html>
Du kannst mehrere Elemente in der Listbox an-/abwählen, in dem du
die STRG-Taste gedrückt hälst und mit der Maus die einzelnen Elemente
anklickst.

Nach Absenden des Formulars siehst du dann die Ausgabe deiner
Abfrage für die Datenbank.

Grüße
Günni
Bitte warten ..
Mitglied: burmy
23.11.2006 um 13:19 Uhr
@ Xaero1982, @Günni


ich werde Eure beiden Versionen mal testen, ich glaube das die zweite version wohl die bessere ist.

@Xaero1982

Ich möchte einfach nur 2 Werte aus der Select Bx die mir im Formular angezeigt bekomme auswählen und diese dann an die DB schicken.

Es ist für ein Formular die unsere Hardware der Firma beinhaltet, und bei einigen Siervern möchte ich aus der Select Box der IP eben mehrere IP Adressen einem Server zuweisen, da ein Server ja auch mehrere IP Adressen haben kann. Das ist einfach mein Ziel.

Vielen dank Euch beiden, ich melde mich vielleicht Morgen, um euch ein Feedback zu geben.

Gruß burmy
Bitte warten ..
Mitglied: Xaero1982
23.11.2006 um 13:53 Uhr
Bitte, aber es ging mir um dein vorhandenes Script ..
Ich habe dir keinen Vorschlag unterbreitet sondern eine Frage gestellt

Lies es noch mal
Bitte warten ..
Mitglied: burmy
23.11.2006 um 17:59 Uhr
@Günni

Hi Günni, du ich habe da eine Frage:

Wenn die Inhalte der Datenbank angezeigt werden müssen och auch die eindeutigen ID's mit übertragen werden, wenn ich eine Mehrfachauswahl treffe werden doch die Werte aus der Select Box an die DB gesendet und eigentlich auch die dazugehörige ID,

so habe ich es doch auch in meiner Abfrage gemacht, $Liste[ID] und $Liste[NAME] , sonst kann beim submit doch kein eindeutiger Wert zur DB gesendet werden, ich habe das geprüft, die ID muss auf jeden Fall mit in die Abfrage !!!!!

Freue mich auf Antwort

Gruß Burmy

@ Xaero1982

Ok mache ich, melde mich
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Exchange Server
Exchange 2007 Datenbank restore ohne Exchange zu verändern - SBS2008

Frage von pitamerica zum Thema Exchange Server ...

Outlook & Mail
Outlook 2013 stürzt beim Senden ab (8)

Frage von ForgottenRealm zum Thema Outlook & Mail ...

Exchange Server
SBS 2011 Exchange Multidomain kein senden über Outlook möglich (1)

Frage von pla112 zum Thema Exchange Server ...

Datenbanken
Datenbank API Automation

Link von Frank zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...