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

Datensätze in Tabelle aus MySQL Datenbank weiterverarbeiten

Frage Entwicklung PHP

Mitglied: M1a2t3t4i

M1a2t3t4i (Level 1) - Jetzt verbinden

05.10.2006, aktualisiert 18.10.2012, 5091 Aufrufe, 1 Kommentar

Hallo!

Ich habe die Suchfunktion schon mehrmals gestresst und finde nicht das richtige Ergebnis zu meinem Problem:

Ich habe eine Tabelle in einer Datenbank.
Diese Tabelle rufe ich per PHP ab. So erscheinen die Datensätze in einer Tabelle.
Meine zukünftigen Kunden sollen sich nun mit Hilfe von Checkboxen die einzelnen Datensätze aus der Tabelle auswählen können.
Mittels einem Button sollen die ausgewählten Datensätze in eine neue Tabelle übernommen werden.
Da die Kunden über mehrere Tabellen zum Endergebnis kommen sollen, müssten die ausgewählten Datensätze irgendwo zwischengespeichert werden?
Im Endergebnis sollen alle ausgewählten Datensätze der verschiedenen Tabellen in einer Tabelle angezeigt werden.

Frage: Wie kann ich die ausgewählten Datensätze der einzelnen Tabellen weiterverarbeiten?
Mitglied: Guenni
07.10.2006, aktualisiert 18.10.2012
@M1a2t3t4i

Hi,

hier
http://www.administrator.de/wissen/mit-checkboxen-selects-steuern-36535 ...

findest du ein Minibeispiel, wie man mit HTML-Tags Datensätze und
Spalten filtern kann.

Das Formular habe ich erweitert:
01.
<!-- Ein weiterer Button, um eine neue Tabelle anzulegen //--> 
02.
<input type="submit" name="cmd" value="Neu"> 
03.
<!-- Ein Textfeld für den Tabellennamen //--> 
04.
<input type="text" name="tabelle">
Erweiterung des Script:

01.
if($cmd=="Neu"){ 
02.
 $conn=mysql_connect("localhost","guenni","guenni"); 
03.
 $db=mysql_select_db("test"); 
04.
 if(count($pcinfo)){ 
05.
  $query="select "
06.
  $query.=$pcinfo[0]; 
07.
  $i=1; 
08.
09.
 while($i<count($pcinfo)){ 
10.
  $query.=",".$pcinfo[$i]; 
11.
  $i++; 
12.
13.
 if($alle){ 
14.
  $query.=" from computer"
15.
 }else
16.
 			 $query.=" from computer where computer='$computer'"
17.
18.
 if(count($pcinfo)){ 
19.
  echo "Ihre Anfrage: $query
20.
"; // Ausgabe zum Test 
21.
22.
 $result=mysql_query($query,$conn); 
23.
 $query="create table $tabelle($pcinfo[0] varchar(64) "
24.
 $i=1; 
25.
 while($i<count($pcinfo)){ 
26.
  $query.=",".$pcinfo[$i]." varchar(64) "
27.
	$i++; 
28.
29.
 $query.=")"
30.
 $db=mysql_select_db("daten"); // Zur Datenbank wechseln, in der die neue Tabelle erzeugt werden soll 
31.
 mysql_query($query,$conn); // Tabelle anlegen 
32.
  
33.
 while($row=mysql_fetch_array($result,MYSQL_BOTH)){ 
34.
  $query="insert into $tabelle values("
35.
	$query.="'$row[0]'"
36.
	$i=1; 
37.
	while($i<count($row)/2){ 
38.
	 $query.=","."'$row[$i]'"
39.
	 $i++; 
40.
41.
	$query.=")"
42.
	mysql_query($query,$conn); // Datensatz einfügen 
43.
	echo $query."
44.
"; //Ausgabe zum Test 
45.
46.
 mysql_close(); 
47.
}
Anschließend, Fortsetzung des Script.

Du kannst nun verschiedene Tabellen anlegen, mit verschiedenen Spalten
aus einem oder allen Datensätzen.

Script zur Ausgabe der Tabellen:

01.
$conn=mysql_connect("localhost","guenni","guenni"); 
02.
$db=mysql_select_db("daten"); 
03.
$tabellen=mysql_list_tables("daten"); 
04.
$i=0; 
05.
while($i < mysql_num_rows($tabellen)){ 
06.
 $tablename=mysql_tablename($tabellen,$i); 
07.
 echo "Tabelle: $tablename
08.
"; 
09.
  
10.
 $query="select * from $tablename"
11.
 $result=mysql_query($query,$conn); 
12.
 echo "<table border=\"1\">"
13.
 $row=mysql_fetch_array($result, MYSQL_ASSOC); 
14.
 while($field=key($row)){ 
15.
  echo "<th>$field</th>"
16.
  next($row); 
17.
18.
 echo "</tr>"
19.
 echo "<tr><td>"
20.
 echo implode("<td>", $row); 
21.
 echo "</tr>"
22.
 while($row=mysql_fetch_array($result, MYSQL_ASSOC)){ 
23.
  echo "<tr><td>"
24.
  echo implode("<td>", $row); 
25.
 echo "</tr>"
26.
27.
 echo "</table>"
28.
 $i++; 
29.
}
Du kannst auch nur ganze Datensätze auswählen.

Siehe
http://www.administrator.de/wissen/tabellen-sortieren-mit-php-23446.htm ...

Dieses Script, Anhang I, zeigt dir den Inhalt einer Tabelle.

Erweiterungen:

Die gesamte Tabelle wird in das Formular übernommen.
In dem Formular werden, wie oben, ein Submit-Button, ein Textfeld eingefügt:

01.
<input type="submit" name="cmd" value="Übernehmen"> in Tabelle 
02.
<input type="text" name="tabelle">
An die Ausgabe der Spaltenköpfe wird ein Feld angehangen
Hier werden die Spaltenköpfe angezeigt
Begin des Tabellenkopfes
echo "<tr>";
while($field=key($row)){
echo "<th><a href=\"sort.php?sort=$field&dir=$dir\">$field</a></th>";
next($row);
}
echo "<th></th>";
Eine Spalte anfügen
echo "</tr>";
Ende Tabellenkopf

An jedem Datensatz wird eine Checkbox angehangen, Inhalt der Checkbox ist die
ID des Datensatzes.
Da durch die Anweisung $row=mysql_fetch_array($result, MYSQL_ASSOC)); bereits der
erste Datensatz "geholt" wurde, muß er separat ausgegeben werden
echo "<tr><td>";
echo implode("<td>", $row);
echo "<td><input type=\"checkbox\" name=\"choice[]\" value=$row[id]></td>";
echo "</tr>";
Dann erfolgen die restlichen Datensätze mit der while-Schleife
while($row=mysql_fetch_array($result, MYSQL_ASSOC)){
echo "<tr><td>";
echo implode("<td>", $row);
echo "<td><input type=\"checkbox\" name=\"choice[]\" value=$row[id]></td>"; Nach Ausgabe der Spalten
wird eine Checkbox als Array ausgegeben.
echo "</tr>";

Scripterweiterung:

01.
if($cmd=="Übernehmen"){ 
02.
 $conn=mysql_connect("localhost","guenni","guenni"); 
03.
 $db=mysql_select_db("test"); 
04.
 if(count($choice)){ 
05.
  $query="create table $tabelle select * from tabelle where id=$choice[0]"
06.
	mysql_query($query,$conn); 
07.
	$i=1; 
08.
	while($i<count($choice)){ 
09.
	 $query="insert into $tabelle select * from tabelle where id=$choice[$i]"
10.
	 mysql_query($query,$conn); 
11.
	 $i++; 
12.
13.
14.
}
Anschließend, Fortsetzung des Script.

Den Wechsel zur einer anderen Datenbank hab' ich mir im 2. Beispiel gespart, es ging
ja nur um die Demo, ganze Datensätze zu übernehmen.

Im Endergebnis sollen alle ausgewählten Datensätze der verschiedenen Tabellen
in einer Tabelle angezeigt werden.

Um das umzusetzen, wird's ein bißchen komplizierter.

Tabellen sind nun mal verschieden breit(Anzahl Spalten).

Du müßtest nun alle Abfragen speichern,
$result1=mysql_query......
resultlt2=mysql_query... usw.,
eine Tabelle erstellen mit allen Spalten abgefragter Tabellen,
und die Ergebnisse, $result1, $result2 usw. gezielt eintragen.

Das ist mir jetzt 'n bißchen zuviel, sorry.

Grüße
Günni
Bitte warten ..
Ähnliche Inhalte
Datenbanken
MySQL - Aktuellste Datensätze aus Tabelle ermitteln
Frage von mabue88Datenbanken4 Kommentare

Hallo, ich habe eine Tabelle "aktionen_log" mit den folgenden Spalten In der Tabelle werden Aktionen von Benutzern abgelegt. Das ...

Datenbanken
Excel2007 - Excel VBA Tabelle in MySQL Datenbank schreiben
gelöst Frage von moribundusDatenbanken2 Kommentare

Hallo Zusammen, ich versuche vergebens eine komplette Tabelle in eine MySQL Datenbank zu schreiben bekomme aber immer wieder folgenden ...

PHP
MySQL Update eines Datensatz mit Variable
gelöst Frage von Jens4everPHP4 Kommentare

Hallo zusammen, ich habe jetzt 2 h gesucht und versucht und komme gerade nicht weiter Ich habe eine Mail-Verifizierung ...

PHP
PHP soll Datensätze in der Datenbank überprüfen
Frage von YanmaiPHP2 Kommentare

Hallo ihr Administratoren ;) Ich habe eine Datenbanktabelle "Freundschaftsanfragen". Wenn Benutzer a Benutzer b eine Freundschaftsanfrage schickt, dann wird ...

Neue Wissensbeiträge
Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 9 MinutenWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 25 MinutenWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 12 StundenInternet4 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registrierung von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Verschlüsselung & Zertifikate

19 Jahre alter Angriff auf TLS funktioniert immer noch

Information von BassFishFox vor 19 StundenVerschlüsselung & Zertifikate1 Kommentar

Interessant zu lesen. Der Bleichenbacher-Angriff gilt unter Kryptographen als Klassiker, trotzdem funktioniert er oft noch. Wie wir herausgefunden haben, ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Von rj11 auf rj45
Frage von jensgebkenLAN, WAN, Wireless19 Kommentare

Hallo Gemeinschaft, könnt ihr mir vielleicht bei der anfertigung eines Kabels helfen - habe ein rj 11 stecker und ...

Netzwerkmanagement
NAS über zwei weitere Ethernet Anschlüsse verbinden
gelöst Frage von Sibelius001Netzwerkmanagement17 Kommentare

Sorry - ich bin hier wahrscheinlich als kompetter IT Trottel unterwegs. Aber eventuell kann mir jemand ganz einfach helfen: ...

Netzwerkmanagement
Firefox Profieles im Roaming
gelöst Frage von Hendrik2586Netzwerkmanagement17 Kommentare

Hallo liebe Leute. :) Ich hab da ein kleines Problem, welches anscheinend nicht unbekannt ist. Wir nutzen hier in ...

LAN, WAN, Wireless
Häufig Probleme beim Anmelden in WLAN
Frage von mabue88LAN, WAN, Wireless15 Kommentare

Hallo zusammen, in einem Netzwerk gibt es relativ häufig (1-2 mal pro Woche) Probleme mit der WLAN-Verbindung. Zunächst mal ...