2011-05-12 3 views
1

두 개의 테이블이 있습니다 : 하나는 hostgroup_host이고 다른 하나는 hostgroups입니다. 호스트 그룹은 모든 호스트 그룹의 이름을 나타내며 세 가지 중요한 값 (hostgroup_id, 이름 및 별칭)을 갖습니다. hostgroup_host는 그룹과 호스트 사이의 연결을 만들고 두 값 (hostgroup_id 및 host_id)을가집니다. 예 : hostgroup_id = 1host_id = 3 이는 ID가 3 인 호스트가 id = 1 (특정 이름) 인 호스트 그룹에 속함을 의미합니다.MySQL에서 2 개의 데이터베이스를 연결하도록 쿼리하십시오

나는 가지고있다 :

$ name = $ _ POST [ 'name']; $ alias = $ _ POST [ 'alias']; $ address = $ _ POST [ 'address']; $ hostgroup = $ _ POST [ 'hostgroup'];

mysql_connect ('localhost : /usr/local/groundwork/mysql/tmp/mysql.sock', $ username, $ password); @mysql_select_db ($ database) 또는 죽습니다 ("데이터베이스를 선택할 수 없습니다");

$ query = "INSERT INTO (호스트 ID, 이름, 별칭, 주소, hosttemplate_id) VALUES ('', '$ 별명', '$ 주소', '1' VALUES ((name = '$ hostgroup'인 hostgroups에서 hostgroup_id를 선택하십시오.) (name = '$ name'이라는 호스트에서 SELECT host_id)); mysql_query ($ query);

mysql_close(); ?>

왜 작동하지 않습니까?

+0

입니까? 당신이 얻고있는 오류는 무엇입니까? – khany

답변

0

$result = mysql_query('INSERT...', $linka); 

또는

$result = mysql_query('INSERT...', $linka); 

사용하지만 난 완전히 당신의 질문을 오해 할 수있다 두려워 : 를 예 :

INSERT INTO TABLE_A (id,name,alias); 
INSERT INTO TABLE_B (id,name); 

; 내 SQL에서 별도의 명령입니다 쿼리를 실행할 때 기본적으로 두 삽입 문이 실행됩니다.

+0

[mysql_query] (http://php.net/manual/en/function.mysql-query.PHP)는 하나의 쿼리 만 실행하므로 (여러 쿼리는 지원되지 않음) 별도의 호출로 모든 쿼리를 실행해야합니다. – wimvds

0

약간 혼란 스럽지만 한 개 이상의 링크 리소스를 사용하십시오.

$linka = mysql_connect('server1', 'mysql_user', 'mysql_password'); 
$linkb = mysql_connect('server2', 'mysql_user', 'mysql_password'); 

그럼 그냥 삽입 문을 가입, 음 ...

+0

grim은 호스트 추가를 위해 한 페이지를 상상해 봅니다. 3 개의 텍스트 상자 (이름, 별칭 및 주소) 및 사용 가능한 모든 그룹을 나열하는 드롭 다운 메뉴가 있습니다 (추가되는 호스트는 그룹 중 하나에 속할 것임). 제출 후 나는 모든 행동을하는 다른 PHP 파일을 가지고있다. 방금 드롭 다운 메뉴 (그룹 이름)에서 이름과 관련된 hostgroup_id를 선택하고 호스트 ID와 관련된 hostgroup_host에 삽입 할 수 있는지 알고 싶습니다. – aocferreira

0

내가 누락되었거나 hostgroup_id 및 host_id를 드롭 다운의 옵션 값으로 사용하는 것이 더 좋지 않습니까?

<select name="hosts"> 
    <option value="1">Host 1</option> 
    ... 
</select> 

<select name="hostgroups"> 
    <option value="15">Host with 15 as ID</option> 
    ... 
</select> 

그럼 그냥 정확히 작동하지 않는 것을 후 값

관련 문제