Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Web Development
You last visited: Today at 03:07

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Nach SELECT * einzelne DB-Einträge verarbeiten

Discussion on Nach SELECT * einzelne DB-Einträge verarbeiten within the Web Development forum part of the Coders Den category.

Reply
 
Old   #1
 
Legithos's Avatar
 
elite*gold: 95
Join Date: Nov 2009
Posts: 669
Received Thanks: 47
Nach SELECT * einzelne DB-Einträge verarbeiten

Hallo zusammen,

hab mal wieder ne Frage zu PHP. Ist es denn möglich, wenn ich zB. alle User aus der user-db per
Code:
SELECT *
raushole, diese einzeln anzusprechen ?

Also wenn ich mir die Einträge per
Code:
SELECT * FROM user
hole und diese dann in ner Whileschleife ausgebe habe ich zB:

user_id - username - password

1 - Tester - test123
2 - Mann - mann123

Jetzt würde ich gerne mit dem username von der user_id 2 weiterarbeiten (die anderen Daten werden aber auch benötigt). Brauchts jetzt ne neue und speziellere Datenbankanfrage mit
Code:
WHERE user_id = 2
oder geht das auch irgendwie anders ?

Danke schonmal,

Legithos
Legithos is offline  
Old 03/25/2019, 20:06   #2


 
False's Avatar
 
elite*gold: 0
The Black Market: 243/0/0
Join Date: Apr 2011
Posts: 11,115
Received Thanks: 2,436
Quote:
Originally Posted by Legithos View Post
Hallo zusammen,

hab mal wieder ne Frage zu PHP. Ist es denn möglich, wenn ich zB. alle User aus der user-db per
Code:
SELECT *
raushole, diese einzeln anzusprechen ?

Also wenn ich mir die Einträge per
Code:
SELECT * FROM user
hole und diese dann in ner Whileschleife ausgebe habe ich zB:

user_id - username - password

1 - Tester - test123
2 - Mann - mann123

Jetzt würde ich gerne mit dem username von der user_id 2 weiterarbeiten (die anderen Daten werden aber auch benötigt). Brauchts jetzt ne neue und speziellere Datenbankanfrage mit
Code:
WHERE user_id = 2
oder geht das auch irgendwie anders ?

Danke schonmal,

Legithos
Vorab: Keine SQLs mit einem Sternchen (*) im livebetrieb (nur zum testen!).

Naja wenn du alle holst hast du natürlich auch den user mit der id 2, musst halt nur schauen wo der im Array ist.

Kannst du deine Frage konkretisieren ? Sprich wofür genau brauchst du erst alle und dann den Benutzer mit der Id 2 ?
False is offline  
Old 03/25/2019, 20:36   #3
 
type.'s Avatar
 
elite*gold: 74
Join Date: Aug 2017
Posts: 284
Received Thanks: 151
c:
type. is offline  
Old 03/25/2019, 21:41   #4
 
Legithos's Avatar
 
elite*gold: 95
Join Date: Nov 2009
Posts: 669
Received Thanks: 47
Quote:
Originally Posted by False View Post
Vorab: Keine SQLs mit einem Sternchen (*) im livebetrieb (nur zum testen!).

Naja wenn du alle holst hast du natürlich auch den user mit der id 2, musst halt nur schauen wo der im Array ist.

Kannst du deine Frage konkretisieren ? Sprich wofür genau brauchst du erst alle und dann den Benutzer mit der Id 2 ?
Ich hab folgendes Problem:

Lass es mich an einem Beispiel erklären. Ich habe einen Karton in den ich Informationen reinpacken will. Meinetwegen verschiedene Rezepte. Jetzt pack ich da erstmal nur Rezepte der Kathegorie selbstgemachte Nudeln rein. Für jedes Rezept muss ich diverse Inputs befüllen. Bei selbstgemachten Nudeln noch relativ simple, weil ich da ja immer die gleichen Zutaten nur halt in verschiedenen Mengen habe, z.B.

Bandnudeln
Mehl: 100g
Salz: 20g
Zucker: 5g
Wasser: 2l

Spaghetti
Mehl: 120g
Salz: 10g
Zucker: 2g
Wasser: 2l

So. Die Grammangaben soll der Benutzer beim Befüllen des Kartons selbst eingeben können. Karton zu und Rezept ist fertig. Jetzt können andere User den Karton in einem großen Suchsystem finden.

Kompliziert wirds jetzt wenn ich ein weiteres Rezept einer anderen Kathegorie hinzufüge, mit dem man den Karton befüllen kann. Wenn's nicht mehr um Nudeln geht, sondern zb um nen Eintopf, brauche ich andere Zutaten und somit andere Inputfelder. Ich muss also eine Datenbank schaffen, bei der ich Oberkathegorien hinzufügen kann, die Inputfelder aber dann variabel sind. Soweit so gut, hab ich auch noch gebacken bekommen. Rein vom theoretischen her dann in diese Richtung (hier am Beispiel jetzt nur mit einer Zutat):

karton_db
karton_id - user_id - category - ingrediants_id - amount - value_id

ingrediants_db
ingrediants_id - ingrediants_name

value_db
value_id - value_name

Damit ich mir jetzt alle meine Kartons (also überall wo meine user_id drinnen steht) mit den verschiedenen Informationen anzeigen lassen kann, brauch ich ne SQL-Abfrage mit INNER JOIN, auch das klappt. Wenn ich das mache zeigt er mir zB. folgendes an:

Karton 1
Karton_id: 1
User_id: 1
Category: Nudeln
Ingrediants_id: 1 (Mehl)
Amount: 250
Value_id: 1 (Gramm)

Karton 2
Karton_id: 2
User_id: 1
Category: Eintopf
Ingrediants_id: 2 (Wasser)
Amount: 2
Value_id: 2 (Liter)

Jetzt habe ich wie ich wollte alle meine Kartons angezeigt. Kann ich jetzt irgendwie rein auf den zweiten Karton zugreifen, ohne eine neue SQL-Abfrage mit einer WHERE-Bedingung zu starten ? Und wenn ich wie hier alle Daten brauche, wie soll ich dann * im Livebetrieb vermeiden ?

Danke !
Legithos is offline  
Old 03/25/2019, 21:53   #5


 
False's Avatar
 
elite*gold: 0
The Black Market: 243/0/0
Join Date: Apr 2011
Posts: 11,115
Received Thanks: 2,436
Quote:
Originally Posted by Legithos View Post
Ich hab folgendes Problem:

Lass es mich an einem Beispiel erklären. Ich habe einen Karton in den ich Informationen reinpacken will. Meinetwegen verschiedene Rezepte. Jetzt pack ich da erstmal nur Rezepte der Kathegorie selbstgemachte Nudeln rein. Für jedes Rezept muss ich diverse Inputs befüllen. Bei selbstgemachten Nudeln noch relativ simple, weil ich da ja immer die gleichen Zutaten nur halt in verschiedenen Mengen habe, z.B.

Bandnudeln
Mehl: 100g
Salz: 20g
Zucker: 5g
Wasser: 2l

Spaghetti
Mehl: 120g
Salz: 10g
Zucker: 2g
Wasser: 2l

So. Die Grammangaben soll der Benutzer beim Befüllen des Kartons selbst eingeben können. Karton zu und Rezept ist fertig. Jetzt können andere User den Karton in einem großen Suchsystem finden.

Kompliziert wirds jetzt wenn ich ein weiteres Rezept einer anderen Kathegorie hinzufüge, mit dem man den Karton befüllen kann. Wenn's nicht mehr um Nudeln geht, sondern zb um nen Eintopf, brauche ich andere Zutaten und somit andere Inputfelder. Ich muss also eine Datenbank schaffen, bei der ich Oberkathegorien hinzufügen kann, die Inputfelder aber dann variabel sind. Soweit so gut, hab ich auch noch gebacken bekommen. Rein vom theoretischen her dann in diese Richtung (hier am Beispiel jetzt nur mit einer Zutat):

karton_db
karton_id - user_id - category - ingrediants_id - amount - value_id

ingrediants_db
ingrediants_id - ingrediants_name

value_db
value_id - value_name

Damit ich mir jetzt alle meine Kartons (also überall wo meine user_id drinnen steht) mit den verschiedenen Informationen anzeigen lassen kann, brauch ich ne SQL-Abfrage mit INNER JOIN, auch das klappt. Wenn ich das mache zeigt er mir zB. folgendes an:

Karton 1
Karton_id: 1
User_id: 1
Category: Nudeln
Ingrediants_id: 1 (Mehl)
Amount: 250
Value_id: 1 (Gramm)

Karton 2
Karton_id: 2
User_id: 1
Category: Eintopf
Ingrediants_id: 2 (Wasser)
Amount: 2
Value_id: 2 (Liter)

Jetzt habe ich wie ich wollte alle meine Kartons angezeigt. Kann ich jetzt irgendwie rein auf den zweiten Karton zugreifen, ohne eine neue SQL-Abfrage mit einer WHERE-Bedingung zu starten ? Und wenn ich wie hier alle Daten brauche, wie soll ich dann * im Livebetrieb vermeiden ?

Danke !
Sorry aber dein Vergleich mit Kartons und Rezepten hatt mich noch mehr verwirrt, wieso nicht einfach das reale Beispiel ?

Naja wenn du genau das hast was du willst (alle Kartons) dann kannst du einfach den Satzen aus dem Array holen den du brauchst..

Sprich z.B.
PHP Code:

$kartons 
//hole alle Kartons

$KartonZwei $kartons[2]; 
Ist jetzt natürlich nur minimal gehalten und im realen fall nicht möglich, da du dafür die Kartons erst mit deren Id sortieren müsstest du dann die Id als Key nutzen müsstest.

Also nochmal die Frage was genau willst/hast du ?
Wenn ich eine Benutzerliste habe und dann hole ich mir auch erst alle Informationen die ich haben will und wenn ich auf den Button "Bearbeiten" klicke und auf die neue Seite komme hole ich mir auch nur die Werte des Benutzers anhand der Id.

Wenn du aktuell alle Spalten brauchst dann statt * einfach alle spalten kommasepariert auflisten, wenn du jetzt neue Spalten einbaust die du nicht braust werden die nicht automatisch mit geladen => bessere Ladegeschwindigkeit.
False is offline  
Old 03/26/2019, 00:13   #6
dotCom
 
Devsome's Avatar
 
elite*gold: 9842
The Black Market: 107/0/0
Join Date: Mar 2009
Posts: 16,854
Received Thanks: 4,680
Oder du holst erst alle Elemente, cached diese und machst dann mit einem click oder was auch immer (weiter Verarbeitung) ein select mit der {$id} von dem Element was du gerade bearbeitest, so könntest du in der neuen Abfrage mit Joins arbeiten.
Oder wie @False sagte, lade alle und arbeite dann mit $kartons[ArrayId] weiter.
Devsome is offline  
Old 03/26/2019, 19:12   #7
 
elite*gold: 0
Join Date: Oct 2007
Posts: 93
Received Thanks: 15
ich würde ein neuen sql schreiben und anhand der ID laden. Warum möchtest du das überhaupt vermeiden ?
Da du alle Daten schon geladen hast kannst du damit natürlich auch weiter arbeiten...
Anhand deinens Kochbeispiel hätte ich die Daten übrigens so aufgebaut
krankheit is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
[PHP] ca. 90 000 Datensätze verarbeiten
07/03/2014 - Web Development - 9 Replies
Moin, ich hab mir nen SQL Query gebastelt womit ich ne Statistik anlegen will und grafisch darstellen will über Aufrufe in den letzten 24 Stunden. PHP gecoded ist alles soweit, nur scheint es so, als ob PHP nicht mit der Menge der Datensätze klar kommt und irgendwann einfach sagt: Ne ist nicht, ich gib dir nen 500er zurück. Gibts da vielleicht ne alternative das Result meiner Query zu verarbeiten? Aktuell: $db = @new mysqli($server, $user, $pass, $database); if(mysqli_connect_errno()...
Kräuter verarbeiten mit 5.4?
10/18/2013 - World of Warcraft - 10 Replies
Hey leute, ich frage mich, was man momentan bei Patch 5.4 mit seinen MOP Kräutern noch anfangen soll? Die Dunkelmond Karten braucht eh keiner mehr, da man da meines Wissens nach nur noch 476er Schmuck bekommt -> nix' mehr wert bei uns, Schulterinschriften beim NPC verkaufen ist auch sinnlos und so viel Tinte wird nicht benötigt, als das man diese gescheit im AH verkaufen könnte, also was macht Ihr so mit euren MOP - Kräutern im aktuellen Content? Ich meine vor allem die Massenabnehmer? ...
[Java] 2 Comboboxen gleichzeitig verarbeiten
11/28/2012 - General Coding - 2 Replies
Hey Leute, ich habe momentan ein kleines Problem und zwar habe ich ich 2 Comboboxen. Anhand dessen, was in den 2 Comboboxen ausgewählt wurde, soll eine Rechnung durchgeführt werden. Sieht theoretisch so: Wenn in Box 1 der Index 2, in Box 2 der Index 3 ausgewählt ist, soll die Rechnung 5*5 durchgeführt werden. Box 1 Index 1, Box 2 Index 2, dann 6+10 oder so ^^
c++ Winapi - Bitmap Farbarray verarbeiten
01/16/2012 - C/C++ - 4 Replies
Folgendes Problem: Ein Abbild vom Desktop wird erstellt und die Bits werden mit passenden Bitmapheadern erfolgreich als Bitmap gespeichert. Sprich ich bin schonmal sicher, dass ich die Bildinformationen richtig einlese und speicher. Die Bits befinden sich also im Array pbBits. Bitmap-typisch sind die Bildinformationen schon upside-down im Array, daher geben auch pbBits, pbBits und pbBits Farbinformationen (BGR) des linken Pixel der untersten Zeile. Auch die restlichen Pixel dieser...
AfterEffects kan .mov nicht verarbeiten!
09/04/2011 - Technical Support - 2 Replies
Hallo, ich habe an meinen Workstation MAC ein Intro erstellt mit AE CS5. In dem Intro sind auch einige .mov´s drinnen,die lassen sich am PC eigentlich verarbeiten wenn man QuickTime installiert hat,tun Sie aber bei mir jetzt irgendwie nicht mehr. Ich habe es schon mit Reparieren,De/Neu-Installation versucht,aber nichts hilft!



All times are GMT +1. The time now is 03:08.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.