Ah ok allora ci siamo...pero' ancora non mi hai dato l'info più importante:

è normale che la SELECT dia più di un risultato? se si...quale devi prendere? il primo? l'ultimo? il più alto? il più basso?

facendo due esempi:

IL PRIMO:
Codice PHP:
INSERT INTO tabella1 (val1val2val3)
VALUES ('pippo''pluto', (SELECT val4 FROM tabella2 WHERE val5 1 LIMIT 1)) 
IL MASSIMO
Codice PHP:
INSERT INTO tabella1 (val1val2val3)
VALUES ('pippo''pluto', (SELECT MAX(val4FROM tabella2 WHERE val5 1)) 
etc...