合同有公章没有法人签字是无效的。合同生效的条件:
1、订约主体为双方或多方;
2、具有法律规定的要约和承诺的两个阶段或过程;
3、对主要条款达成一致的意思表示。此外,对于实际合同,实际交付应作为成立要件。如果符合上述条件,合同可以成立。至于成立的合同是否有效,要看是否按规定成立。只要合同按规定成立,就有效。
【本文关联的相关法律依据】
《中华人民共和国民法典》
第四百九十条 当事人采用合同书形式订立合同的,自当事人均签名、盖章或者按指印时合同成立。在签名、盖章或者按指印之前,当事人一方已经履行主要义务,对方接受时,该合同成立。
法律、行规规定或者当事人约定合同应当采用书面形式订立,当事人未采用书面形式但是一方已经履行主要义务,对方接受时,该合同成立。