New file |
| | |
| | | <?php |
| | | namespace App\Models; |
| | | |
| | | use PDO; |
| | | use Framework\Model; |
| | | class Contact extends Model { |
| | | //protected ?string $table = "product"; |
| | | |
| | | public function controlloSpamEmail(string $email, ): bool { |
| | | $spam = false; |
| | | $query = "SELECT email, dtm_richiesta FROM Contact WHERE email = '$email' AND dtm_richiesta BETWEEN DATE_SUB(NOW(), INTERVAL 1 DAY) AND NOW();"; |
| | | $connection = $this->database->getConnection(); |
| | | |
| | | $result = $connection->query($query); |
| | | |
| | | $rowcount = count($result->fetchAll(PDO::FETCH_ASSOC)); |
| | | var_dump($rowcount); |
| | | |
| | | |
| | | if ($rowcount > 0) { |
| | | $spam = true; |
| | | } |
| | | |
| | | return $spam; |
| | | } |
| | | protected function validate(array $data): void { |
| | | |
| | | if(empty($data["email"])) { |
| | | $this->addError("email","email is required"); |
| | | } |
| | | if(empty($data["telefono"])) { |
| | | $this->addError("telefono","cell number is required"); |
| | | } |
| | | if($this->controlloSpamEmail($data["email"])) { |
| | | $this->addError("spam", "non puoi mandare la stessa mail, aspetta un pò di tempo"); |
| | | } |
| | | |
| | | |
| | | |
| | | var_dump($this->getErrors()); |
| | | } |
| | | |
| | | |
| | | |
| | | } |