Es gibt 2 Tabellen tbl_1 und tbl_2 einfach mal frei erfunden.
Nun habe ich bei der einen tbl_1 7 Spalten und tbl_2 6 Spalten.
tbl_1
id_pk
username
password
email
name
vorname
punkte
1
user1
sha1(pw)
mayr
dieter
50
2
user2
sha1(pw)
maier
hans
100
tbl_2
id_pk
piclink
headline
description
url
id_fk
1
qwert.png
Titel1
Ein Bild 1
http:/ /www.bi ld1.de
1
2
qwertz.png
Titel2
Ein Bild 2
http:/ /www.bi ld2.de
2
3
qwertzu.png
Titel3
Ein Bild 3
http:/ /www.b ld3.de
1
D.h. id_pk von tbl_1 ist verknüpft mit id_fk von tbl_2.
Nun fehlt mir die kreativität, bzw der Lösungsansatz, wie ich es löse, wenn z.B. User1 angemeldet ist, dass der id_fk in tbl_2 eingetragen wird von User1.
Ich hätte es vielleicht so gelöst:
PHP Code:
$idfk = '(SELECT id_pk FROM tbl_1 WHERE username = $_SESSION["username"])';
Code:
INSERT INTO tbl_2
(headline, description, url, picname, id_fk)
VALUES
('$headline','$description','$url','$dateiname','$idfk')
Oder gibt es da einen anderen Lösungsansatz? Über Tipps oder Verbesserungen würde ich mich freuen
Es gibt 2 Tabellen tbl_1 und tbl_2 einfach mal frei erfunden.
Nun habe ich bei der einen tbl_1 7 Spalten und tbl_2 6 Spalten.
tbl_1
id_pk
username
password
email
name
vorname
punkte
1
user1
sha1(pw)
mayr
dieter
50
2
user2
sha1(pw)
maier
hans
100
tbl_2
id_pk
piclink
headline
description
url
id_fk
1
qwert.png
Titel1
Ein Bild 1
http:/ /www.bi ld1.de
1
2
qwertz.png
Titel2
Ein Bild 2
http:/ /www.bi ld2.de
2
3
qwertzu.png
Titel3
Ein Bild 3
http:/ /www.b ld3.de
1
D.h. id_pk von tbl_1 ist verknüpft mit id_fk von tbl_2.
Nun fehlt mir die kreativität, bzw der Lösungsansatz, wie ich es löse, wenn z.B. User1 angemeldet ist, dass der id_fk in tbl_2 eingetragen wird von User1.
Ich hätte es vielleicht so gelöst:
PHP Code:
$idfk = '(SELECT id_pk FROM tbl_1 WHERE username = $_SESSION["username"])';
Code:
INSERT INTO tbl_2
(headline, description, url, picname, id_fk)
VALUES
('$headline','$description','$url','$dateiname','$idfk')
Oder gibt es da einen anderen Lösungsansatz? Über Tipps oder Verbesserungen würde ich mich freuen
Code:
INSERT INTO tbl_2 WHERE username = $_SESSION["username"]
(headline, description, url, picname, id_fk)
VALUES
('$headline','$description','$url','$dateiname','$idfk')
@ lnqlorlouz
Mit der WHERE Bedingung bekomme ich doch dann einen Fehler, weil in der tbl_2 ja keine Spalte username ist. Oder hab ich grad einen Denkfehler?
@Mikesch01
Ja stimmt das war oben nur theoretisch, hätte es rein aus Schönheit in ne Variable gepackt :P
Und es geht ja darum, dass die id_fk dem User entspricht, der die gleiche id_pk hat.
D.h. , wenn ich alle Bilder ausgeben will, die User1 hochgeladen hat, braucht das Bild ja die id_fk von dem User. Die soll eben eingetragen werden, wenn er/sie/es ein Bild hochlädt.
Und es geht ja darum, dass die id_fk dem User entspricht, der die gleiche id_pk hat.
D.h. , wenn ich alle Bilder ausgeben will, die User1 hochgeladen hat, braucht das Bild ja die id_fk von dem User. Die soll eben eingetragen werden, wenn er/sie/es ein Bild hochlädt.
Wie ich schon sagte. Man verwendet normalerweise zwei Session-Variablen. Einmal den Benutzernamen und einmal die userID. Diese representieren den aktuellen Benutzer.
Die userID aus der Session solltest du in einer Spalte bei der Tabelle für die Bilder beim Hochladen ablegen, wie du beschrieben hast.
Damit kannst du direkt alle Daten von einem Benutzer auslesen.
Wie ich schon sagte. Man verwendet normalerweise zwei Session-Variablen. Einmal den Benutzernamen und einmal die userID. Diese representieren den aktuellen Benutzer.
Die userID aus der Session solltest du in einer Spalte bei der Tabelle für die Bilder beim Hochladen ablegen, wie du beschrieben hast.
Damit kannst du direkt alle Daten von einem Benutzer auslesen.
Stichwort: Relationale Datenbanken
Ahhh sorry hab das zusätzlich überlesen^^
Ja das ist gut
MySQL INSERT INTO ... VALUES 03/10/2015 - General Coding - 1 Replies Hallo,
Ich frage mich ob es möglich ist die datensätze automatisch in die Tabellen einzufügen, bis jetzt geht die erste Zeile jeder CSV datei.
Und alles Manuell einzugeben ist bei 12000 Datensätzen einfach zu viel :(
Ich muss für jede Tabelle einen neuen Primärschlüssel erstellen, aber wie?
-- Anlagen der Datenbank und der Tabellen
DROP DATABASE IF EXISTS bundesliga;
-- CREATE DATABASE <datenbankname>
-- CHARACTER SET <zeichenkodierung>
[MySQL] insert nur, wenn Eintrag nicht existiert 12/15/2014 - Web Development - 28 Replies Moin,
ich suche eine recht schnelle und simple Methode um Einträge in MySQL nur dann hinzuzufügen, wenn sie bereits nicht existieren (nach einer ID identifizierbar), sonst wird der Eintrag aktuallisiert.
Natürlich könnte ich das mit PHP ganz einfach über 3 Befehle lösen ... aber bei mehreren hunderten Einträgen wäre das nicht gerade aus schnell.
Kennt da jemand eine schnelle Möglichkeit zu?
MfG
Mr.Tr33
PHP / MYSQL Insert REAGIERT NICHT 05/05/2014 - Web Development - 9 Replies Hallo leute,
wollte mittels eines PHP-Scripts Daten in meine Tabelle einfügen.
Es kommt auch keine Fehlermeldung wenn ich bsp. OR DIE ("Fail"); hinzufüge, allerdings
werden die Einträge einfach nicht in die Tabelle übertragen.
Erkennt ihr einen Fehler?
<html>
<head>
<title> Test </title>
[Release] MySQL Insert system 07/18/2010 - CO2 PServer Guides & Releases - 18 Replies Ello!
First of all, this is NOT sourcedependent, which means you can use this on any source without modifying the code.
This is an replacement for all of you who still uses normal MySQL queries. Use this code to clean up, make it easier and more orginazed.
Here's how it looks:
Example: (Original (LOTF for example))
[HELP]C# MySQL Command insert if not exsist? 09/04/2009 - CO2 Private Server - 8 Replies MySqlCommand Command = new MySqlCommand("INSERT INTO accounts(AccountID,LogonType) VALUES ('" + fillBox.Text + "','3')", Connection);
Now, I want it to check if the value of fillBox.Text doesn't excist before making the account, so It wont create the same account. I tried making it in a try, that didn't help, it just make several accounts with the same name.
~Bas