Jetzt kostenlos Anmelden!

Sumale.nin

unregistriert

1

Samstag, 23. Januar 2010, 20:22

[MYSQL] Insert in zwei verschiedenen Tabellen

Hallo zusammen,
folgenden Code verwende ich in einer register.php

MySQL-Abfrage(n)

1
2
3
4
5
$sql = "INSERT INTO ".USERS_TABLE."
        (".get_user_table_field("", "user_id").get_user_table_field(", ", "user_level").get_user_table_field(", ", "user_name").get_user_table_field(", ", "user_password").get_user_table_field(", ", "user_email").get_user_table_field(", ", "user_showemail").get_user_table_field(", ", "user_allowemails").get_user_table_field(", ", "user_invisible").get_user_table_field(", ", "user_joindate").get_user_table_field(", ", "user_activationkey").get_user_table_field(", ", "user_lastaction").get_user_table_field(", ", "user_lastvisit").get_user_table_field(", ", "user_comments").get_user_table_field(", ", "user_homepage").get_user_table_field(", ", "user_icq").$additional_field_sql.")
        VALUES
        ($user_id, $user_level, '$user_name', '".md5($user_password)."', '$user_email', $user_showemail, $user_allowemails, $user_invisible, $current_time, '$activationkey', $current_time, $current_time, 0, '$user_homepage', '$user_icq'".$additional_value_sql.")";
$result = $site_db->query($sql);


Das Funktioniert perfekt. Jetzt wollte ich aber eine weitere machen und zwar so nur mit folgenden Inhalt:

MySQL-Abfrage(n)

1
2
3
4
5
6
7
// Zweite Tabelle
$sql = "INSERT INTO ".NEWS_USERS_TABLE."
        (".get_user_table_field("", "user_id").get_user_table_field(", ", "user_name").get_user_table_field(", ", "user_password").get_user_table_field(", ", "user_email").$additional_field_sql.")
        VALUES
        ($user_id, '$user_name', '".md5($user_password)."', '$user_email'".$additional_value_sql.")";
$result = $site_db->query($sql);
// Zweite Tabelle


Sieht dann gesamt so aus:

MySQL-Abfrage(n)

1
2
3
4
5
6
7
8
9
10
11
12
$sql = "INSERT INTO ".USERS_TABLE."
        (".get_user_table_field("", "user_id").get_user_table_field(", ", "user_level").get_user_table_field(", ", "user_name").get_user_table_field(", ", "user_password").get_user_table_field(", ", "user_email").get_user_table_field(", ", "user_showemail").get_user_table_field(", ", "user_allowemails").get_user_table_field(", ", "user_invisible").get_user_table_field(", ", "user_joindate").get_user_table_field(", ", "user_activationkey").get_user_table_field(", ", "user_lastaction").get_user_table_field(", ", "user_lastvisit").get_user_table_field(", ", "user_comments").get_user_table_field(", ", "user_homepage").get_user_table_field(", ", "user_icq").$additional_field_sql.")
        VALUES
        ($user_id, $user_level, '$user_name', '".md5($user_password)."', '$user_email', $user_showemail, $user_allowemails, $user_invisible, $current_time, '$activationkey', $current_time, $current_time, 0, '$user_homepage', '$user_icq'".$additional_value_sql.")";
$result = $site_db->query($sql);
// Zweite Tabelle
$sql = "INSERT INTO ".NEWS_USERS_TABLE."
        (".get_user_table_field("", "user_id").get_user_table_field(", ", "user_name").get_user_table_field(", ", "user_password").get_user_table_field(", ", "user_email").$additional_field_sql.")
        VALUES
        ($user_id, '$user_name', '".md5($user_password)."', '$user_email'".$additional_value_sql.")";
$result = $site_db->query($sql);
// Zweite Tabelle


Bekomme aber Fehler wenn ich das einbaue:

MySQL-Abfrage(n)

1
2
3
4
5
6
7
// Zweite Tabelle
$sql = "INSERT INTO ".NEWS_USERS_TABLE."
         (".get_user_table_field("", "user_id").get_user_table_field(", ",  "user_name").get_user_table_field(", ",  "user_password").get_user_table_field(", ",  "user_email").$additional_field_sql.")
        VALUES
         ($user_id, '$user_name', '".md5($user_password)."',  '$user_email'".$additional_value_sql.")";
$result =  $site_db->query($sql);
// Zweite Tabelle


Wie macht man sowas?

[size=18]Edit://[/size]
Das habe ich zum Thema gefunden, aber kann damit nichts anfangen!
http://forum.fachinformatiker.de/258159-post2.html

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Sumale.nin« (23. Januar 2010, 20:53)

  • Zum Seitenanfang
  • Zum Seitenende

maXus Männlich

Grafik Künstler

Beiträge: 1 092

Geschlecht: Männlich

Wohnort: Berlin

PHPKIT Version: 1.6.03

2

Samstag, 23. Januar 2010, 21:44

Um dir helfen zu können, muss man schon wissen, wie denn die Fehlermeldung lautet, denn meistens sagt die ja aus, wo der Fehler liegt ;)
Was deine komische Abfrage da machen soll kapiere ich eh nicht ganz. Was macht denn die Funktion get_user_table_field eigentlich? Zieht ziemlich kompliziert gedacht aus, was du da anstellst.
  • Zum Seitenanfang
  • Zum Seitenende

Sumale.nin

unregistriert

3

Sonntag, 24. Januar 2010, 09:30

Die Fehklermeldung lautet:

Zitat

An unexpected error occured. Please try again later.
Mal sehen ob ich noch etwas genaueres herausbekomme!

Das ist die ganze Meldung:

Zitat

Bad SQL Query: INSERT INTO 4images_news_users
(user_id, user_name, user_password, user_email)
VALUES
(2, 1, 'testuser1', '827ccb0eea8a706c4c34a16891f84e7b', 'test@test.de')
Column count doesn't match value count at row 1
[size=18]Edit.//[/size]
Habe es dann wohl doch geschafft, musste den Code so abändern:

MySQL-Abfrage(n)

1
2
3
4
5
	$sql = "INSERT INTO ".NEWS_USERS_TABLE."
	    	(user_id, user_name, user_password, user_email)
        	VALUES
        	($user_id, '$user_name', '".md5($user_password)."', '$user_email'".$additional_value_sql.")";
	$result = $site_db->query($sql);


Nun klappt es.

Und dieses: get_user_table_field
ist von dem CMS selber. Keine Ahnung was das genau ist. Aber das musste da definitiv weg :D

Dennoch Danke!

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Sumale.nin« (24. Januar 2010, 09:41)

  • Zum Seitenanfang
  • Zum Seitenende

-=LCL=-|BuLLeT| Männlich

#1.6.1 - still alive #

Beiträge: 1 356

Geschlecht: Männlich

Wohnort: Leipzig

PHPKIT Version: 1.6.1

4

Sonntag, 24. Januar 2010, 13:20

VALUES
(2, 1, 'testuser1', '827ccb0eea8a706c4c34a16891f84e7b', 'test@test.de')

die ersten beiden werte sollten auch in ' erfasst sein
  • Zum Seitenanfang
  • Zum Seitenende

Sumale.nin

unregistriert

5

Sonntag, 24. Januar 2010, 15:50

Das ist alles geschehen und funktioniert nun!
  • Zum Seitenanfang
  • Zum Seitenende

maXus Männlich

Grafik Künstler

Beiträge: 1 092

Geschlecht: Männlich

Wohnort: Berlin

PHPKIT Version: 1.6.03

6

Montag, 25. Januar 2010, 10:08

Ich sag ja, die Fehlermeldung sagt ja scon alles aus :D
  • Zum Seitenanfang
  • Zum Seitenende