Alex: MySQL :: INSERT INTO

Hallo zusammen,

ich komme mit der folgenden Abfrage einfach auf keinen grünen Zweig

mysql_query("
INSERT INTO $tbl_co(co_id,co_user_id)
VALUES ((SELECT c_id FROM $tbl_c WHERE c_code = '$ccode' LIMIT 1),(SELECT user_id FROM $tbl_user WHERE user_session='".session_id()."' LIMIT 1))
") or die (mysql_error());

Mit dieser Abfrage will ich in eine tabelle $tbl_co 2 Werte einfügen.
und zwar die werte, die ich jeweils durch die abfragen

SELECT c_id FROM $tbl_c WHERE c_code = '$ccode' LIMIT 1
und
SELECT user_id FROM $tbl_user WHERE user_session='".session_id()."' LIMIT 1

allerdings kommt folgender fehler:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near

kann mir jemand helfen?

  1. Hallo

    warum ließt du dies nicht erstmal aus und fügst es dann ein?

    um an querys zu sparen ?

    ich würde es so machen

    Abfrage:

    SELECT A.c_id AS c_id, B.user_id AS user_id FROM $tbl_c AS A, $tbl_user AS B WHERE A.c_code='§ccode' AND B.user_session='.session_id.' LIMIT 1;

    und dann einfügen mir nem Normalen Query

    INSERT INTO $tbl_co (co\_id, co\_user\_i) VALUES ('$wert_2', '$wert_2') LIMIT 1;

    mfg

    1. Vielen Dank,

      hat geklappt.

      ich habs trotzdem in eine Abfrage gepackt ...
      der Hinweis meine 2 Selects in ein Select zu packen war sehr gut.

      nochmals Danke