You do not describe the attack model (i.e. what kind of things an attacker may want to achieve) so I have to do some guesswork here...
A first thing to note is that you are encrypting the "SiteName", which you also send in cleartext, so one has to assume that any attacker observing a message in transit knows the "SiteName". You also encrypt the current time, which is public data (the attacker has a clock, too). Encryption is meant to transform some data in a way which keeps things confidential, but here the input to the encryption function is only public data. So you are using an encryption system for something other than what it was designed for, and that's a worry.
As you describe it, what you seem to be after is a way to authenticate a timed message: you want machine B to make sure that whatever software runs on machine A deliberately produced a given blob, which includes the production time and date. This calls for a Message Authentication Code, not encryption. The usual MAC is HMAC which uses an underlying hash function (when in doubt, choose SHA-256); with PHP, see function hash_hmac(). It is possible to make a MAC out of an encryption system, but it is somewhat tricky and there is no a priori reason to believe that mcrypt_encrypt() does something which is a good MAC; not that I know how to break it, but it is better to use a tool which has been specifically designed and studied to be a good MAC, and that's HMAC. So you want the message from A to contain the SiteName, the message production time, and a MAC computed over SiteName and the message production time, with $key as key.
Of course, nothing prevents an attacker from replaying an existing message, which may or may not be a problem with you, depending on what machine B does when it receives a "valid request". As a side-note, relying on current time has some practical issues, because there are many users who are quite happy with a system clock off by a few years (I work in the field of digital signatures and X.509 certificates, which have validity dates, and an unset system clock is the number 1 reason of failure).