webForumDet fria alternativet

Problem vid kontroll av data

2 svar · 323 visningar · startad av webzonen

webzonenMedlem sedan feb. 2001370 inlägg
#1

Hittade ett exempel på kod som kontrollerar om det bara är giltiga tecken i ett fält,

$span_str = "abcdefghijklmnopqrstuvwxyz" . "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-";

        // One character
        if (strspn($_POST['login'],$span_str) == 0) {
        return false;
        }
        
        // Only legal
        if (strspn($_POST['login'],$span_str) != strlen($name)) {
        return false;
        }

Om jag förstått det rätt kontrollerar den första om det finns ett giltigt tecken i _post['login'], den andra ska vad jag förstår kolla om alla är rätt, men vad gör $name? hittar den ingen annan stans i koden. Kollade i manualen men jag förstod inte så bra.

PeddaMedlem sedan juni 20004 880 inlägg
#2

Byt ut $name mot $_POST['login'] så bör det ju fungera.

strspn kollar antalet tecken som är rätt.
Om du t.ex fyller i ordet webzo@nen i formuläret så ger strspn resultatet 5 (längsta strängen med rätt tecken, webzo)

webzonenMedlem sedan feb. 2001370 inlägg
#3

Fungerade, tack för hjälpen!

Genererad på 380 ms · cache AV · v20260730165559-full.f96bc7eb