Healthcare records management system has been revolutionized over the last decade aiming to provide accurate, efficient and enhanced patient care. The existing management system is either based on a client/server approach where each hospital maintains its own database or on a cloud approach where the health records are stored in a cloud server and managed by a third-party cloud service provider. However, these approaches suffer from the issues of security, privacy, data vulnerability and fragmentation. Furthermore, healthcare providers and patients are unable to have a unified view of a patient's medical history from all visited medical care centers. This results in additional treatment costs, repeated medical tests and increased time to diagnosis. The data traceability, immutability, transparency, replication, security and privacy traits of the emerging blockchain technology have a promising potential in the healthcare domain addressing these issues. In this paper, we propose BlockHR, a patient-centric healthcare records management system for efficient medical care at an optimal cost. The system enables healthcare providers to enter the patients' medical record data to the blockchain network and allows patients to enter their social data such as sleeping habits, physical activities, and current location. Consequently, BlockHR provides support to doctors for better diagnosis and prognosis. We evaluate the performance of BlockHR in terms of execution time and the total amount of data transferred for ledger update with an increasing number of hospitals and blocks in the network.