podmienka =1 (viac znakov)

Programovacie jazyky, rady, poradňa...
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

podmienka =1 (viac znakov)

Príspevok od používateľa buchticka221 »

Kód: Vybrať všetko

if($podmienka==1) 
Vieme že keď sa rovná podmienka 1 tak sa vykoná script...
Ak by to bolo možné... existuje spôsob ako zistiť či sa v podmienke nachádza číslo 1? napriklad podmienka by bola Sku1Ska tak by sa mi script nevykonal lebo sa v slove nachádza číslo 1... a ak by to náhodou bolo možné dajú sa tam vložiť trebars aj hranaté zátvory a vykricniky... Ďakujem pekne za odpovede :wink:
weroro
Flash coder
Flash coder
Používateľov profilový obrázok
Príspevky: 3206
Registrovaný: 14 feb 2009, 22:34
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: podmienka =1 (viac znakov)

Príspevok od používateľa weroro »

Čo sa snažíš dosiahnuť? Ak popíšeš tvoj zámer, budeme môcť lepšie pochopiť tvoj problém, ktorý chceš vyriešiť.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: podmienka =1 (viac znakov)

Príspevok od používateľa audiotrack »

áno, všetko sa dá. Ale ťažko poradiť, keď nemáme ani potuchy v akom jazyku. Vyzerá to na php, ale ani srnky netušia čo robíš
http://www.php.net/strpos
http://www.php.net/manual/en/function.preg-match.php
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: podmienka =1 (viac znakov)

Príspevok od používateľa buchticka221 »

mam formular do ktoreho zadam nieco... a to bude $podmienka a ked sa vlastne v tejto podmienke bude nachádzať trebars ! < / tak sa podmienka nevykona ano je to v php a nie nechcem to riesit cez formular lebo aj tak sa to da osalit...
S-player
Light Star
Light Star
Príspevky: 277
Registrovaný: 23 júl 2011, 22:30

Re: podmienka =1 (viac znakov)

Príspevok od používateľa S-player »

1. Nechápem prečo tú premennú nazývaš "podmienka", je to kompletne od veci.
2. Chceš zabrániť XSS alebo čo riešiš?
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: podmienka =1 (viac znakov)

Príspevok od používateľa buchticka221 »

audiotrack napísal:áno, všetko sa dá. Ale ťažko poradiť, keď nemáme ani potuchy v akom jazyku. Vyzerá to na php, ale ani srnky netušia čo robíš
http://www.php.net/strpos
http://www.php.net/manual/en/function.preg-match.php
Ďakujem... a ako tam dat viac pismen? a ako tam dat znak < alebo " alebo = ... dakujem

Kód: Vybrať všetko

<?php
$mystring = 'abc';
$findme   = 'b';
$pos = strpos($mystring, $findme);


if ($pos === false) {
    echo "The string '$findme' was not found in the string '$mystring'";
} else {
    echo "The string '$findme' was found in the string '$mystring'";
}
?>
print_name
Medium Expert
Medium Expert
Príspevky: 96
Registrovaný: 31 dec 2013, 15:11

Re: podmienka =1 (viac znakov)

Príspevok od používateľa print_name »

ked chces hladat viac pismen tak si tam daj viac tych $findme, $findme1, $findme2 ... a taktiez $pos, $pos1, $pos2 ...

a potom do if-u das:
if (($pos === false) || ($pos1 === false) || ($pos2 === false)) ...

alebo pohladaj ci je nejaka funkcia, ktora vie vyhladavat v retazci viac ako len jedno pismeno. Alebo si ju vytvor sam a jej argumentom bude vzdy ten znak, ktory chces hladat.
weroro
Flash coder
Flash coder
Používateľov profilový obrázok
Príspevky: 3206
Registrovaný: 14 feb 2009, 22:34
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: podmienka =1 (viac znakov)

Príspevok od používateľa weroro »

buchticka221

Kód: Vybrať všetko

function findString ($mystring, $findme)
{
    foreach($findme as $found)
    {
        if(strpos(strtolower($mystring), $found))
        {
            return true;
        }
    }
    return false;
}


if (findString ('nejaký text', ['ja', 'ex']))
{
    echo "The string '$findme' was found in the string '$mystring'";
}
else
{
    echo "The string '$findme' was not found in the string '$mystring'";
} 
S-player
Light Star
Light Star
Príspevky: 277
Registrovaný: 23 júl 2011, 22:30

Re: podmienka =1 (viac znakov)

Príspevok od používateľa S-player »

buchticka221: Mohol by si napísať čo vlastne chceš robiť, načo ti to je a neoháňať sa tu príkladmi? Bude ti to nakoniec síce fungovať tak ako chceš no možno to riešiš zbytočne komplikovane...
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: podmienka =1 (viac znakov)

Príspevok od používateľa buchticka221 »

S-player napísal:buchticka221: Mohol by si napísať čo vlastne chceš robiť, načo ti to je a neoháňať sa tu príkladmi? Bude ti to nakoniec síce fungovať tak ako chceš no možno to riešiš zbytočne komplikovane...
jak som uz napisal chcem zakazat pouzivat znaky <, " , >, /, !, a pod. vo formularoch... ale nechcem to riesit pramo vo formulari ale po jeho odoslani...
S-player
Light Star
Light Star
Príspevky: 277
Registrovaný: 23 júl 2011, 22:30

Re: podmienka =1 (viac znakov)

Príspevok od používateľa S-player »

Chceš to ,ale zakázať len tak aby tieto znaky nemohol klient používať alebo to zakazuješ z bezpečnostných dôvodov?
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: podmienka =1 (viac znakov)

Príspevok od používateľa buchticka221 »

Kód: Vybrať všetko

<?php
$mystring = '<d>f';
$findme   = 'f';
$pos = strpos($mystring, $findme);
$findmee   = 'p';
$poss = strpos($mystring, $findmee);


if ($pos === false && $poss === false) {
    echo "sa nenachadza";
} else {
    echo "sa nachadza";
}
?>
Takto to funguje len sa chcem opytat ci existuje lachsi alebo lepsi sposob...
jorg22
Medium Professional
Medium Professional
Používateľov profilový obrázok
Príspevky: 1087
Registrovaný: 12 aug 2006, 20:39
Kontaktovať používateľa:

Re: podmienka =1 (viac znakov)

Príspevok od používateľa jorg22 »

Ano da. Citaj dokumentaciu: http://www.php.net/htmlentities
S-player
Light Star
Light Star
Príspevky: 277
Registrovaný: 23 júl 2011, 22:30

Re: podmienka =1 (viac znakov)

Príspevok od používateľa S-player »

buchticka221 napísal:

Kód: Vybrať všetko

<?php
$mystring = '<d>f';
$findme   = 'f';
$pos = strpos($mystring, $findme);
$findmee   = 'p';
$poss = strpos($mystring, $findmee);


if ($pos === false && $poss === false) {
    echo "sa nenachadza";
} else {
    echo "sa nachadza";
}
?>
Takto to funguje len sa chcem opytat ci existuje lachsi alebo lepsi sposob...
Áno chceš sa opýtať? A čo keby si odpovdal na moju poslednú otázku kde sa ti s tým snažim pomôcť ,ale už ma to pomaly prechádza.
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: podmienka =1 (viac znakov)

Príspevok od používateľa buchticka221 »

S-player napísal:Chceš to ,ale zakázať len tak aby tieto znaky nemohol klient používať alebo to zakazuješ z bezpečnostných dôvodov?
ano chcem to zakazat len tak aby tieto znaky nemohol klient pouzivat a ano zakazujem to z bezpecnostnych dôvodov...
S-player
Light Star
Light Star
Príspevky: 277
Registrovaný: 23 júl 2011, 22:30

Re: podmienka =1 (viac znakov)

Príspevok od používateľa S-player »

Hurá... tipujem ,že to riešiš práve kvôli XSS. Obmedzovať užívateľa takýmto spôsobom nieje dobré. Čo ,ak bude chcieť poslať šípku (->) alebo nejaký link (http://www.xxx.xx/xxx.xx) alebo niečo iné...? To čo potrebuješ je http://www.php.net/htmlentities už ako jorg22 napísal. Čiže tvoj zdroják bude vyzerať nejako takto:

Kód: Vybrať všetko

$formData = htmlentities($_GET["form"], ENT_QUOTES);
// Odporúčam ti prejsť si dokumentáciu & poznámky: http://www.php.net/htmlentities
Napísať odpoveď