• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Walidacja danych z formularza PHP

Object Storage Arubacloud
0 głosów
95 wizyt
pytanie zadane 28 września 2023 w PHP przez dominik808 Nowicjusz (140 p.)

Witam, robie strone z zagadkami w php i mam problem ze sprawdzeniem czy odpowiedz na pytanie wpisana przez uzytkownika w formularzu na stronie, jest zgodna z odpowiedzia przypisana do tego pytania w bazie danych.

Aktualnie zapytanie wygląda tak jak poniżej i o ile gdy odpowiedzia bedzie jeden wyraz (np. "Kasia") to wszystko bedzie ok i skrypt zwroci informacje ze to poprawna odpowiedz, jednak problem pojawia sie gdy odpowiedzia jest konkretne zdanie (np. "łańcuch nie był do niczego przymocowany") a użytkownik wpisze pojedynczy wyraz ("łańcuch").

 

Zapytanie:

SELECT odpowiedzi.odp from zagadeczki, odpowiedzi WHERE odpowiedzi.id=zagadeczki.odp_id AND odp LIKE '%$odpowiedz%'

 

z góry dzięki za pomoc

1 odpowiedź

0 głosów
odpowiedź 29 września 2023 przez VBService Ekspert (253,420 p.)
edycja 29 września 2023 przez VBService

IMO, np.:

  • łańcuch nie był przymocowany
  • koń nie był uwiązany (w sensie za pomocą łańcucha)

w pewnym sensie też są prawidłowymi odpowiedziami, może zrób po prostu system jak na testach, odpowiedzi: a, b, c, d

a. Lorem ipsum
b. Lorem ipsum
c. łańcuch nie był do niczego przymocowany (poprawna odpowiedź)
d. Lorem ipsum

 

lub nawet: "Przy tym pytaniu, można uzyskać do 2pkt."

a. łańcuch nie był przymocowany (poprawna odpowiedź - 1pkt.)
b. Lorem ipsum
c. łańcuch nie był do niczego przymocowany (poprawna odpowiedź - 1pkt.)
d. Lorem ipsum

jeśli zaznaczy tylko a lub tylko c - 1pkt.
jeśli zaznaczy a i c - 2pkt.
jeśli tylko b lub tylko d, lub b i d - 0pkt.
jeśli a i d - 1pkt.   itd.

 

Inna sugestia, to sprawdzenie ile wyrazów z odpowiedzi użytkownika znajduje się w prawidłowej odpowiedzi

        1       2    3   4       5                  6
"łańcuch nie był do niczego przymocowany"

                                              1                                2   3            6
odpowiedź użytkownika: łańcuch leżał luźno nie był przymocowany - 4 trafienia z 6 można uznać za prawidłową

 

        1       2    3   4       5                  6
"łańcuch nie był do niczego przymocowany"  - priorytetowe wyrazy:  nie był, przymocowany

                                                        1                2
odpowiedź użytkownika: koń nie był przymocowany - zawiera 2 wyrazy priorytetowe = prawidłowa odpowiedź

 

można, też mieszać ile wyrazów i jaką cześć stanowią priorytetowe itp.

Podobne pytania

0 głosów
1 odpowiedź 1,349 wizyt
pytanie zadane 20 lipca 2018 w PHP przez dobre.rece Nowicjusz (200 p.)
0 głosów
2 odpowiedzi 1,328 wizyt
pytanie zadane 8 lutego 2017 w HTML i CSS przez hiper007 Stary wyjadacz (11,270 p.)
0 głosów
1 odpowiedź 114 wizyt
pytanie zadane 5 grudnia 2021 w PHP przez mat19 Obywatel (1,580 p.)

92,580 zapytań

141,432 odpowiedzi

319,664 komentarzy

61,965 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...