The adding php script works fine. However when a contact is removed manually from owners UI page. The same email address is not added back again. Why? and how to overcome this???
2) Remove email@example.com manually from the list contacts page
3) Add firstname.lastname@example.org
The second time and following on email@example.com does not appear in the contacts list.
I believe the reason that this is happening to you is because once a contact has been added to the account, it will always be in the account. When you remove the contact, it is either going into the Removed list, or the Do Not Mail list. Because the contact is still technically in the account, and just not in an active list, you would need to do an Update instead of an add.
If the customer is on the Removed list, you would update the contacts XML so that it is in at least one list. You can learn more about this process on this page.
Also, I see that you said you were using our php script. Are you using the sample code or the Sign Up Form Generator? If you are using the sample code you can use the editSubscriber function to do this.