Phishing is an attempt by an individual or a group of person to steal personal information such as password, banking account and credit card information, etc. Most of these phishing web pages look similar to the real web pages in terms of website interface and uniform resource locator (URL) address. Many techniques have been proposed to detect phishing websites, such as Blacklist-based technique, Heuristic-based technique, etc. However, these techniques are still inefficient. While Blacklist-based techniques cannot detect the phishing sites that are not in the blacklist database, the weights of the heuristic in the heuristic-based approach significantly depend on the statistics from the training dataset. Therefore, a new phishing detection approach in which either the new phishing websites can be detected or the weights of the heuristic are derived objectively is necessary. In this paper, an efficient approach for detecting phishing websites based on the single-layer neural network is proposed. Specifically, the proposed technique calculates the value of heuristics objectively. Then, the weights of heuristic are generated by a single-layer neural network. The proposed technique is evaluated with a dataset of 11,660 phishing sites and 10,000 legitimate sites. The results show that the technique can detect over 98% phishing sites.