Top-Themen

Aktuelle Themen (A bis Z)

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

Ausgabeproblem aus Datenbankabfrage

Mitglied: LuckyLuke

LuckyLuke (Level 1) - Jetzt verbinden

25.11.2008, aktualisiert 29.11.2008, 2296 Aufrufe, 1 Kommentar

Hallo liebe PHP'ler,

ich sehe so langsam vor lauter Bäumen den Wald nicht mehr. Ich habe ein ganz einfaches Formular, mit dem ich Datensätze Schritt-für-Schritt von der Datenbank abfrage.
Auf der letzten Seite angekommen, sollen die Optionen von Produkten angezeigt werden. Dies funktioniert auch soweit richtig, aber NUR, wenn ich es nur für EIN Produkt anfordere. Wird es mehr, ist die Ausgabe nicht mehr richtig. Mittlerweile habe ich auch festgestellt, dass es an den Foreach-Schleifen liegt. Wie kann ich es denn anders Programmierne, dass die Ausgabe richtig erfolgt?

Hier der Auszug aus dem Code:
01.
  
02.
foreach ($_POST['prdkindzu'] as $kindid => $prdkindid)  
03.
04.
	foreach ($prdkindid as $zusatzid => $prdkind_name)  
05.
	{	 
06.
		$kindopt=mysql_db_query("edv_produktdatenbank",  
07.
		"SELECT PRDKINDOPT.prdgrp_id, PRDKINDOPT.prdfam_id, PRDKINDOPT.prdkind_id, PRDKINDOPT.prdkindzusatz_id, PRDKINDOPT.prdkind_option_id, PRDKINDOPT.prdkind_option 
08.
		FROM edv_produktkind_option PRDKINDOPT 
09.
			WHERE PRDKINDOPT.prdkind_id = $kindid 
10.
			  AND PRDKINDOPT.prdkindzusatz_id = $zusatzid 
11.
			ORDER BY PRDKINDOPT.prdkind_option ASC"); 
12.
	 
13.
		while($row_kindopt=mysql_fetch_array($kindopt,MYSQL_NUM))  
14.
15.
			$kindopt_grpid[]	  = $row_kindopt[0]; 
16.
			$kindopt_famid[]	  = $row_kindopt[1]; 
17.
			$kindopt_kindid[]     = $row_kindopt[2]; 
18.
			$kindopt_kindzuid[]   = $row_kindopt[3]; 
19.
			$kindopt_kindoptid[]  = $row_kindopt[4]; 
20.
			$kindopt_kindoption[] = $row_kindopt[5]; 
21.
22.
23.
}	 
24.
 
25.
echo'  
26.
<p class="Stil4"><u>3. Schritt: Produkt-Option auswählen</u></p> 
27.
<form method="POST" action="04_auswahl_anzeigen.php" /> 
28.
<table border="0" width="600" class="Stil3">'; 
29.
foreach ($_POST['prdkindzu'] as $kindid => $prdkindid)  
30.
31.
	foreach ($prdkindid as $zusatzid => $prdkind_name)  
32.
	{	 
33.
		echo
34.
		<tr> 
35.
		<td class="Stil4">'.$prdkind_name.'</td> 
36.
		</tr>'; 
37.
		for($i=0;$i<count($kindopt_kindoption);$i++) 
38.
39.
			echo
40.
			<tr> 
41.
			<td class="Stil4"><input type="checkbox" name="prdkindopt['.$kindopt_kindoptid[$i].']" value="'.$kindopt_kindoptid[$i].'">'.$kindopt_kindoption[$i].'</td> 
42.
			</tr>'; 
43.
		}	 
44.
45.
46.
echo
47.
</table> 
48.
<input type="submit" value="Auswahl anzeigen" /> 
49.
</form>'; 
50.
?>
Zur Veranschaulichung hier die Ausgabe:
3c7ce5cbc1619eab866a05a27777a511-problem - Klicke auf das Bild, um es zu vergrößern

Über einen Tipp wäre ich euch dankbar, ist sicherlich einfacher als man sich das Ganze vorstellt.


Gruß, Lucky.
Mitglied: Arano
29.11.2008 um 14:58 Uhr
In Zeile 20 befüllst du ja das Array mit den Optionen immer und immer weiter.
Ab Zeile 37 lässt du alle Elemente des Arrays wieder ausgeben. (Dieses enthält mittlerweile natürlich die Optionen beider Kinder weil das Array ja einfach nur befüllt wird, weiter und immer weiter)

Lass dir nach dem Auslesen und vor dem Ausgeben die Inhalte aus deinen Arrays ausgeben (print_r(),var_pump())

Mein Vorschlag wäre ein anderes Arraydesign:
01.
$kinder=array
02.
 0=array
03.
  'group_id'=>, 
04.
  'famili_id'=>, 
05.
  'kind_id'=>, 
06.
  'zu_id'=>, 
07.
  'option_id'=>, 
08.
  'options'=>array
09.
   0=>'Option 12'
10.
   1=>'Option 23'
11.
   2=>'Option 52'
12.
   3=>'Option 53' 
13.
  ), 
14.
 1=array
15.
  'group_id'=>, 
16.
  'famili_id'=>, 
17.
  'kind_id'=>, 
18.
  'zu_id'=>, 
19.
  'option_id'=>, 
20.
  'options'=>array
21.
   0=>'Option 12'
22.
   1=>'Option 23'
23.
   2=>'Option 52'
24.
   3=>'Option 53' 
25.
26.
);
So hast du alle Daten separat, jeweils in einem eigenem Array gespeichert.

Ob man es auch so bei dir machen kann weiss ich nicht, blike nicht ganz durch dein Skript...

Schönes Wochenende
Arano
Bitte warten ..
Ähnliche Inhalte
Datenbanken
Hilfe bei Datenbankabfrage
gelöst Frage von e51bomagDatenbanken11 Kommentare

Hallo liebe Community, hab gerade ein Blackout bzgl. Realisierung einer Abfrage. Folgende Datenbank: noten: nid, loginname, fid, note, type ...

Batch & Shell
Datenbankabfrage Powershell
gelöst Frage von internet2107Batch & Shell3 Kommentare

Ich versuche auf eine Datenbank zuzugreifen, was auch soweit klappt. Jedoch möchte ich gerne alle Tabellen listen, die sich ...

VB for Applications

VBS Scrip - Datenbankabfrage für Netz-Laufwerke spezifizieren

gelöst Frage von Ah3n0bar6usVB for Applications9 Kommentare

Hallo zusammen, Ich habe folgenden Code: Hier werden alle Netz-Lw ausgelesen und ausgegeben. Wie kann ich das jedoch auf ...

Microsoft

Datenbankabfrage an MS SQL 2014 aus Sharepoint 2013 senden

Frage von EvilmachineMicrosoft

Hallo Kollegen, ich arbeite mich momentan so ein bisschen in das Thema Sharepoint 2013 ein. Nun hab ich hier ...

Neue Wissensbeiträge
Erkennung und -Abwehr

Ups: Einfaches Nullzeichen hebelte den Anti-Malware-Schutzt in Windows 10 aus

Information von kgborn vor 5 StundenErkennung und -Abwehr

Windows 10 ist das sicherste Windows aller Zeiten, wie Microsoft betont. Insidern ist aber klar, das es da Lücken, ...

Windows 10

Windows 10 on ARM: von Microsoft entfernte Info - Klartext, was nicht geht

Information von kgborn vor 7 StundenWindows 10

Windows 10 on ARM ist ja eine neue Variante, die Microsoft im Verbund mit Geräteherstellern am Markt etablieren will. ...

Microsoft
TV-Tipp: Das Microsoft-Dilemma
Information von kgborn vor 7 StundenMicrosoft7 Kommentare

Aktuell gibt es in Behörden und in Firmen eine fatale Abhängigkeit von Microsoft und dessen Produkten. Planlos agieren die ...

Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 2 TagenWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 (1709) Tastur und Maus wieder einschalten?
Frage von LochkartenstanzerWindows 1026 Kommentare

Moin, Ich habe von einem Kunden einen Win10-Rechner bekommen, bei dem weder Tastatur noch Maus geht. Die Hardware funktioniert ...

Firewall
RB2011 Firewall Rule eine bestimmte Mac oder IP Adresse nicht zu blockieren
Frage von lightmanFirewall15 Kommentare

Hallo liebes Forum mit ihren Spezialisten. Ich habe meine Firewall so konfiguriert das kein Endgerät ohne meine Speziellen Erlaubnis ...

Humor (lol)
Was könnte man mit einem Server machen? Idee gesucht
Frage von 2SeitenHumor (lol)15 Kommentare

Hey Zusammen Ich habe einen alten HP G2 Rackserver zu Hause rumliegen. 28GB Ram, 1xAMD Prozi mit etwa 2GHz. ...

Server
Route-Befehl Unterstützung (unter CMD)
Frage von FKRR56Server12 Kommentare

Guten Tag , i.M. habe ich Probleme über den CMD-Route-Befehl ein Routing auf einen entfernten Server zuzulassen. Der Server ...