- function e($val)
- {
- global $con;
- return mysqli_real_escape_string($con, trim($val));
- }
Avko | 31.07.2020 09:57 |
---|---|
Predmet:zastita kod logiranja Nakon sto korisnik ispise podatke logiranja na login formi podaci se salju u upit i pretrazuje baza. Korisnik moze unijeti zlonamjeran kod i ostetiti bazu podataka. Iz toga razloga login podatke potrebno je filtrirati. Sada mi je napisana funkcija: PreuzmiIzvorni kôd (Text):
koja se poziva na nacin: PreuzmiIzvorni kôd (Text):
sada kada je varijabla $korisnik i $sifra procisceni mozemo izvrsiti mysql upit: $query = "SELECT * FROM korisnici WHERE korisnik='$korisnik' AND sifra='$sifra' LIMIT 1"; procitao sam da se jos koristi: PreuzmiIzvorni kôd (Text):
i PreuzmiIzvorni kôd (Text):
PreuzmiIzvorni kôd (Text):
PreuzmiIzvorni kôd (Text):
md5(sha1($salt.$password)); ili crypt($salt, md5($password)); Å ta je meni sve potrebno od ovoga gore i kako to sve sloziti u jednu funkciju? |
zxz | 03.08.2020 01:47 |
---|---|
Predmet:Re: zastita kod logiranja mysqli_real_escape_string - izbjegava posebne znakove u nizu za upotrebu u SQL upitu. Ova se funkcija koristi za stvaranje legalnog SQL niza koji se može koristiti u SQL izrazu. Funkcija htmlspecialchars () pretvara neke unaprijed definirane znakove u HTML entitete. Unaprijed definirani znakovi su: & (ampersand) postaje & amp; "(dvostruki navod) postaje & quot; '(jedna citata) postaje & # 039; <(manje od) postaje & lt; > (veći od) postaje & gt; addslashes() vraća niz s kosim crtama pred unaprijed definiranim znakovima. Unaprijed definirani znakovi su: jedan citat (') dvostruki navod (") kosa crta unazad (\) Ako si primjetio vecina funkcija rade jednu te istu stvar odnosno skoro jedno te isto. Sto se tice upisa u bazu najveci problem su znakovi koji se koriste na nivou sql-a odnosno predstavljaju nesto u skriptnom jeziku SQL. Nevidm da se bas moze ubaciti zlonamjeran kod i ostetiti bazu podataka. Naravno da moze doci do greske pri izvodjenju. Primjer: Neka nam je ime tabele korisnici koja ima polja ID,Korisnicko_ime, sifra. Ako iamo korisnicko_ime Marko a sifra '"1hs$ Sada da pokusamo napraviti select SQL string. SQL="SELECT ID, korisnicko_ime, sifra FROM korinici WHERE ime='Marko' AND sifra =' '"1hs$"; Sad se vidi o cemu se radi. Da bi poslali SQL string bazi moramo ga oiviciti sa znakom za string ali ta j znak imamo i samoj sifri tako da nism u mogucnosti ispravno napisati string. U ovom slucaju bi mogli iskoristiti funkciju mysqli_real_escape_string. Ako treba mogu jos ddati pojasnjenja. |
Avko | 03.08.2020 10:29 |
---|---|
Predmet:Re: zastita kod logiranja netreba pojasnjenje samo treba mi reci dali je dovoljno ovo dvoje: PreuzmiIzvorni kôd (Text):
i treba mi kod login forme ograniciti ime korisnika samo na brojeve. hvala |
zxz | 05.08.2020 08:58 |
---|---|
Predmet:Re: zastita kod logiranja PreuzmiIzvorni kôd (HTML): Ovaj ti bas i nije potreban.
brojeve mozes rijesiti n nivou html-a <input type="number" /> |