Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Przedszkole _ [PHP]Zabezbieczanie danych z formularza (ChatGPT)

Napisany przez: sadistic_son 12.04.2024, 12:38:11

Cześć, podpytałem ChatGPT jak zabezpieczyć dane z formularza i wypluł mi takie coś:

  1. function sanitizeFormData($formData) {
  2. // Trim whitespace from all form fields
  3. foreach ($formData as $key => $value) {
  4. $formData[$key] = http://www.php.net/trim($value);
  5. }
  6.  
  7. // Prevent XSS attacks by escaping HTML entities
  8. foreach ($formData as $key => $value) {
  9. $formData[$key] = http://www.php.net/htmlspecialchars($value, ENT_QUOTES, 'UTF-8');
  10. }
  11.  
  12. // Prevent SQL injection by escaping special characters
  13. $filteredData = http://www.php.net/array();
  14. foreach ($formData as $key => $value) {
  15. $filteredData[$key] = mysqli_real_escape_string($your_db_connection, $value);
  16. }
  17.  
  18. return $filteredData;
  19. }

Co o tym sądzicie? Nie przesadził tutaj? Np mysqli_real_escape_string już się nie stosuje, bo zamiast tego bindowanie, prawda?

Napisany przez: nospor 12.04.2024, 13:03:13

po raz jedenasty: htmlspecialchars uzywa sie przed wyswietlaniem, anie po pobraniu z forma.

do wkladania do bazy uzywa sie BINDowania
i nie sanitanizuje sie wszystkich danych z forma jak leci, tylko jak trzeba, w zaleznosci co sie z nimi bedzie robilo. Pisanie takich uniwersalnych potworkoch bardzo szybko sie msci

Napisany przez: Salvation 13.04.2024, 12:57:54

Tu jest to czego potrzebujesz do odbierania danych z formularzy: https://www.php.net/manual/en/book.filter.php
A w szczególności zerknij na: https://www.php.net/manual/en/function.filter-input.php i https://www.php.net/manual/en/function.filter-var.php

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)