Pereiti prie turinio

Neaiškumai [PHP]


Rekomenduojami pranešimai

O jei prisireiktų daugiau ženklų, tai juo ir vardint toliau po brūkšnio?
Tiesiog dedi "\" (be kabučių) ir ženklą. Kai kuriems ženklams (kaip "/", ".", "[", "]" etc) yra būtinas tas "\" prieš juos, tačiau prieš kai kuriuos (like +, #, @ etc.) nereikia dėti nieko.

Turėtų maždaug taip atrodyt:

$text = preg_replace("/[^a-zA-Zą-žĄ-Ž0-9\-\.\/+#]/", "", $text);

(pridėjom dar šiuos ženklus: - . / + #)

Gal kurioje vietoje ir klystu, pataisykit, kaip jau minėjau, dar neįvaldžiau PCRE. :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 2 savaičių...
Tikrai nuosirdziai dekoju uz sia informacija. :P Viska perskaiciau ir dabar jau normaliai suprantu pcre. :D
Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 1 mėnesio...

Kaip padaryti jog radus neleistinų ženklų mestų klaidą. Žinau jog reikia preg_match() funkciją ir if() sąlygą naudoti, bet nežinau kaip. Leistini simboliai būtų lotyniški skaitmenys(0-9) bei brūkšnys(-).

 

Taip pat norėčiau kaip padaryti jog paėmus rezultatus iš MySQL DB viena eilutė būtų vienam fone, kita kitam ir t.t. Būtų galima pagal ID daryt, lyginiai viena spalva, o nelyginiai kita, bet taip kokį nors ištrinus gali pasitaikyti tokia pat spalva kelis kartus iš eilės.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

if(preg_match("![^a-zA-Z0-9]!", $x)) echo"blogi ženklai";

 

Spėju kad duomenis darai su while tad

 

while($row = mysql_fetch_assoc($sql)){
static $i=0;
$class = ++$i%2==1 ? 'pirma' : 'antra';
echo'<div class='.$class.'>....</div>';
}

 

EDIT, % atitinka paskalio mod, patikrina liekana

Redagavo ziogas
Nuoroda į pranešimą
Dalintis kituose puslapiuose
Ne taip perskaičiau, pagalvojau kad ir raides reik įtraukt :D
Taip, tikrai idomiai parasyta: "lotyniski skaitmenys". Perskaicius "lotyniski" iskart kyla asociacijos su raidemis, kadangi musu skaiciai siaip tai arabiski, o ne lotyniski. ;)

 

Bet, manau, kad pats jau gales pasikoreguoti uzklausa: tarp [ ir ] rasomas zenklas ^, o toliau visos simboliu "aibes" - kaip a-z, A-F ir pan. Atskirus simbolius tiesiog itraukiame juos iterpdami, taciau pries kaikuriuos (kaip kad ir bruksni) reikia deti zenkla \.

Placiau apie simboliu iterpima parasyta sioje temoje siek tiek anksciau. :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Taip, tikrai idomiai parasyta: "lotyniski skaitmenys". Perskaicius "lotyniski" iskart kyla asociacijos su raidemis, kadangi musu skaiciai siaip tai arabiski, o ne lotyniski. :P

 

Bet, manau, kad pats jau gales pasikoreguoti uzklausa: tarp [ ir ] rasomas zenklas ^, o toliau visos simboliu "aibes" - kaip a-z, A-F ir pan. Atskirus simbolius tiesiog itraukiame juos iterpdami, taciau pries kaikuriuos (kaip kad ir bruksni) reikia deti zenkla \.

Placiau apie simboliu iterpima parasyta sioje temoje siek tiek anksciau. :D

 

Atsiprašau dėl tų lotyniškų skaitmenų, susimaišiau... :P

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 3 savaičių...

code]

$class = ++$i%2==1 ? 'pirma' : 'antra';

[/code]

 

Gal kas gali parašyti šią eilutę su if() ir else, nes tokio optimizuoto kodo nelabai suprantu ir kad išsiaiškinčiau reikia ir paprastąjį variantą pamatyt. :?

 

P.S. Gali būt, kad maišau dėl to if() ir else ir ši eilutė neišreiškiama kaip aš įsivaizduoju, tada būkit geri ir pataisykit mane bei perrašykit kodą į paprastesnę išraišką.

Redagavo Gytis B.
Nuoroda į pranešimą
Dalintis kituose puslapiuose

code]

$class = ++$i%2==1 ? 'pirma' : 'antra';

[/code]

 

Gal kas gali parašyti šią eilutę su if() ir else, nes tokio optimizuoto kodo nelabai suprantu ir kad išsiaiškinčiau reikia ir paprastąjį variantą pamatyt. :?

 

P.S. Gali būt, kad maišau dėl to if() ir else ir ši eilutė neišreiškiama kaip aš įsivaizduoju, tada būkit geri ir pataisykit mane bei perrašykit kodą į paprastesnę išraišką.

Paprasciausiai tai taip:

 

$class = ++$i % 2 == 1;

if ($class) { echo 'pirma'; } else { echo 'antra'; }

 

Tikrina ar $i yra lyginis ir ji padidina vienetu. :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 1 mėnesio...

case '1': $operacijos = $_POST['operacijos'];
			   $operacijos2 = ctype_digit($operacijos) ? 'true': 'false'; // patikrina ar įvestas operacijų skaičius susideda iš skaitmenų
			   $pirmas = 1;
			   switch($operacijos2)  {
					   case 'true': echo'<form action="'.$_SERVER['PHP_SELF'].'?s=2&operacijos='.$operacijos.'" method="post">
										 Operandas nr.: <b>'.$pirmas.'</b>:<br/>
										 <input type="text" name="operandas_'.$pirmas.'" value=""/><br/>';
									while($pirmas <= $operacijos)  {  // ciklas atvaizduoti reikiamam operacijos veiksmų kiekiui
											echo'Veiksmas nr.: <b>'.$pirmas.'</b>:<br/>
												 <select name="veiksmas_'.$pirmas.'">
												   <option value ="+">Pridėti</option>
												   <option value ="-">Atimti</option>
												   <option value ="*">Dauginti</option>
												   <option value ="/">Dalinti</option>
												   <option value ="(">Atidaryti skliaustus</option>
												   <option value =")">Uždaryti skliaustus</option>
												 </select><br/>';
											$pirmas++;
											echo'Operandas nr.: <b>'.$pirmas.'</b>:<br/>
												 <input type="text" name="$operandas_'.$pirmas.'" value=""/><br/>';
									}
									echo'<input type="submit" value="Skaičiuoti"/></form><br/>
										 <a href="'.$_SERVER['PHP_SELF'].'">Į pradžią</a>';
									break;
					   case 'false': echo'Operacijų skaičius nurodytas netinkamu formatu. Galima rašyti tik skaičius!<br/>
										  <a href="'.$_SERVER['PHP_SELF'].'">Į pradžią</a>'; break;
			   } break;

 

Kaip matote šis skirtas iš į jį duomenis atsiunčiančio puslapio paima reikiamą veiksmų kiekį, tas kieki yra dinaminis(n). Skriptas surenka(vartotojas įveda į įvesties langelius) n veiksmų ir n+1 operandų. Kaip man visus veiksmus ir operandus su $_POST[] paimti puslapyje į kurį jie perduodami?

 

Kad ir kaip neaiškiai parašiau klausimą, bet tikiuosi kas nors supras ir atsakys :P

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ą...