Pereiti prie turinio

PHP formo pagalba


Rekomenduojami pranešimai

Sveiki, turiu tokią formą:

 

if ($_GET[id] == "registracija2")

{

$nick = htmlspecialchars($_POST['nick'],ENT_QUOTES);

$pass = htmlspecialchars($_POST['pass'],ENT_QUOTES);

$vardas = htmlspecialchars($_POST['vardas'],ENT_QUOTES);

$pavarde = htmlspecialchars($_POST['pavarde'],ENT_QUOTES);

$numeris = htmlspecialchars($_POST['numeris'],ENT_QUOTES);

$pastas = htmlspecialchars($_POST['pastas'],ENT_QUOTES);

 

 

 

$nick = ereg_replace("[^A-Za-z0-9]", "", $nick);

$pass = ereg_replace("[^A-Za-z0-9]", "", $pass);

$vardas = ereg_replace("[^A-Za-z0-9]", "", $vardas);

$pavarde = ereg_replace("[^A-Za-z0-9]", "", $pavarde);

$numeris = ereg_replace("[^A-Za-z0-9]", "", $numeris);

$pastas = ereg_replace("[^A-Za-z0-9]", "", $pastas);

 

$pastas = $_POST['pastas'];

 

if ($pass == "")

{ $log=1; echo"Tuščias slaptažodžio laukelis!<br>";}

if ($nick == "")

{$log=1; echo"Tuščias vartotojo vardo laukelis!<br>";}

if ($vardas == "")

{$log=1; echo"Tuščias vardo laukelis!<br>";}

if ($pavarde == "")

{$log=1; echo"Tuščias pavardės laukelis!<br>";}

if ($pastas == "")

{$log=1; echo"Tuščias el.pašto laukelis!<br>";}

 

if(filter_var($pastas, FILTER_VALIDATE_EMAIL) === FALSE)

{$log=1; echo"Blogas el.pašto formatas!<br>";}

 

if ($numeris == "")

{$log=1; echo"Tuščias numerio laukelis!<br>";}

}

 

 

 

 

Kai į laukelį kur nors įrašau alert(); paspaudus tęsti išmeta

 

Forbidden

 

You don't have permission to access /zaidimas/index.php on this server.

 

Dėl ko taip gali būti?

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Sveiki, turiu tokią formą:

 

if ($_GET[id] == "registracija2")

{

$nick = htmlspecialchars($_POST['nick'],ENT_QUOTES);

$pass = htmlspecialchars($_POST['pass'],ENT_QUOTES);

$vardas = htmlspecialchars($_POST['vardas'],ENT_QUOTES);

$pavarde = htmlspecialchars($_POST['pavarde'],ENT_QUOTES);

$numeris = htmlspecialchars($_POST['numeris'],ENT_QUOTES);

$pastas = htmlspecialchars($_POST['pastas'],ENT_QUOTES);

 

 

 

$nick = ereg_replace("[^A-Za-z0-9]", "", $nick);

$pass = ereg_replace("[^A-Za-z0-9]", "", $pass);

$vardas = ereg_replace("[^A-Za-z0-9]", "", $vardas);

$pavarde = ereg_replace("[^A-Za-z0-9]", "", $pavarde);

$numeris = ereg_replace("[^A-Za-z0-9]", "", $numeris);

$pastas = ereg_replace("[^A-Za-z0-9]", "", $pastas);

 

$pastas = $_POST['pastas'];

 

if ($pass == "")

{ $log=1; echo"Tuščias slaptažodžio laukelis!<br>";}

if ($nick == "")

{$log=1; echo"Tuščias vartotojo vardo laukelis!<br>";}

if ($vardas == "")

{$log=1; echo"Tuščias vardo laukelis!<br>";}

if ($pavarde == "")

{$log=1; echo"Tuščias pavardės laukelis!<br>";}

if ($pastas == "")

{$log=1; echo"Tuščias el.pašto laukelis!<br>";}

 

if(filter_var($pastas, FILTER_VALIDATE_EMAIL) === FALSE)

{$log=1; echo"Blogas el.pašto formatas!<br>";}

 

if ($numeris == "")

{$log=1; echo"Tuščias numerio laukelis!<br>";}

}

 

 

 

 

Kai į laukelį kur nors įrašau alert(); paspaudus tęsti išmeta

 

Forbidden

 

You don't have permission to access /zaidimas/index.php on this server.

 

Dėl ko taip gali būti?

 

Prie to pacio norejau paklausti: $_GET[id] == "registracija2" Ar tai saugu? Ar per URL atdresa neiseis siuo atveju padaryt SQL ar XSS inject. Aciu uz atsakyma.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prie to pacio norejau paklausti: $_GET[id] == "registracija2" Ar tai saugu? Ar per URL atdresa neiseis siuo atveju padaryt SQL ar XSS inject. Aciu uz atsakyma.

 

O tai kaip patartume apsaugoti?

 

Esu pasidaręs taip $_GET[id] = htmlspecialchars($_GET['id'], ENT_QUOTES);

Nuoroda į pranešimą
Dalintis kituose puslapiuose

O tai kaip patartume apsaugoti?

 

Esu pasidaręs taip $_GET[id] = htmlspecialchars($_GET['id'], ENT_QUOTES);

 

Na del to ir klausiu:

 

is tiesu galima dar mysql_real_escape_string naudot... O gal isvis nieko nereik naudot nes per sia vieta neisilausi, nes getas neina i uzklausa? Del to ir klausiu :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose

O tai kaip patartume apsaugoti?

 

Esu pasidaręs taip $_GET[id] = htmlspecialchars($_GET['id'], ENT_QUOTES);

htmlspecialchars skirtas apsisaugoti nuo XSS. Tokio tipo apsaugą naudoji atvaizdavimo metu. Kai dirbsi su SQL, tai, žinoma, naudosi PDO ir prepared statementus.

 

O šiaip, pasimokyk PHP. http://www.php.net/manual/en/index.php

Redagavo Silke
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Niekaip nesuprantu, kodėl vaikeliai lendat ten, kur nieko nesuprantat? Ne paprasčiau būtų susirast žmogų, kuris padarytų jums už kelis litus ką reik?

 

Arba bent pagrindus turėkit kokius nors, išmokit bent funkcijas naudot, masyvus, paskaitykit kokius php essentialus... Išmokit debugint savo kodą. Turėkit suvokimą ką jis daro. O ne prikopinkit pievų nieko nesuprasdami. O jei to nesugebat gal neverta kišt nagų?

 

Pilnas youtube video su pamokom, jei nemokat skaityt... Teorijos dar daugiau... it-books.info pasižiūrėkit... Nes jau kraupu daros ant svieto skaitant daugelį temų forume programavimo srity... Gaila nėra uždarby taisyklės iki kokio absurdiškumo klausimai programavimo srity turėtų būt. Turėtų uždraust klausimus žmonių, kurie net programavimo pagrindų neturi ir lenda į kodą. :blink:

 

Ir nesakykit, kad nebandysi neišmoksi. Pirma reik į galvą šiek tiek teorijos susikišt, o tada daryt.

 

Čia buvo ne į temą. O į temą paskaitom Silkės pranešimą ;D

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Visų pirma aš rašiau ne apie apsaugas, o apie tai kodėl įvėdus į laukelį alert(); išmeta klaidą

 

Tai man reikia naudoti tik $pass = htmlspecialchars($_POST['pass'],ENT_QUOTES), o šito nenaudoti $nick = ereg_replace("[^A-Za-z0-9]", "", $nick);

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Niekaip nesuprantu, kodėl vaikeliai lendat ten, kur nieko nesuprantat? Ne paprasčiau būtų susirast žmogų, kuris padarytų jums už kelis litus ką reik?

 

Arba bent pagrindus turėkit kokius nors, išmokit bent funkcijas naudot, masyvus, paskaitykit kokius php essentialus... Išmokit debugint savo kodą. Turėkit suvokimą ką jis daro. O ne prikopinkit pievų nieko nesuprasdami. O jei to nesugebat gal neverta kišt nagų?

 

Pilnas youtube video su pamokom, jei nemokat skaityt... Teorijos dar daugiau... it-books.info pasižiūrėkit... Nes jau kraupu daros ant svieto skaitant daugelį temų forume programavimo srity... Gaila nėra uždarby taisyklės iki kokio absurdiškumo klausimai programavimo srity turėtų būt. Turėtų uždraust klausimus žmonių, kurie net programavimo pagrindų neturi ir lenda į kodą. :blink:

 

Ir nesakykit, kad nebandysi neišmoksi. Pirma reik į galvą šiek tiek teorijos susikišt, o tada daryt.

 

Čia buvo ne į temą. O į temą paskaitom Silkės pranešimą ;D

 

Gerbiamasai, buvo prasyta patarimo. Silke puikiai paaiskino, o savo supersta nuomone gali pasilikti sau, jei zmogus domisi cia pliusas. nenori neatsakinek, negaisk savo laiko. Chill :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Gerbiamasai, buvo prasyta patarimo. Silke puikiai paaiskino, o savo supersta nuomone gali pasilikti sau, jei zmogus domisi cia pliusas. nenori neatsakinek, negaisk savo laiko. Chill :)

Tamsta, galit išgraužt, čia laisvas forumas ir ką noriu tą šneku.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...