IT sviestapika » Posts for tag 'PHP'

Turpinot tēmu par varbūtību un dubultošanas metodi

Vakar papētīju kāda ir varbūtība nevinnēt vairākas reizes pēc kārtas arī pie varbūtības 50/50.
Rezultāts bija diezgan šokējošs- 29 reizes.
Tāpēc mājās pamodificēju skriptu, lai noskaidrotu kāda iespēja neuzminēt vairākas reizes pēc kārtas, ka iespēja laimēt ir 70% un 95%.
To izdarīju izmainot uz :

//$gad1=rand(1,100);
$gad2=rand(1,100); Talak »

50/50, aizraujošā informātika vai kāpēc nestrādā dubultošanas metode?

Nu tā, šodien pamodos un izdomāju pārbaudīt praksē visiem zināmo patiesību, kāpēc dubultošanas metode (gan kazino- rullete, utt) nestrādā.. vai varbūt strādā?

Man jau liekas loģiski, ja ir divas iespējas (piemēram, sarkans un melns), tad diezgan ātri vajadzētu pienākt reizei kad varētu uzminēt sarkanu vai melnu :) Talak »

Draugiem.lv pase priekš wordpress

Šorīt no rīta sagribējās izdarīt kaut ko paliekošu un sabiedrībai interesantu.

Pirmais, kas ienāca prāta bija uzrakstīt plugin priekš wordpress, kas ļautu ievietot komentārus ar draugiem.lv pasi.

Tā apņēmības un entuziasma pilns jau ķēros pie darba, kad ienāca prātā iemest google vai kāds meistars jau nav pacenties un vai netaisos izgudrot divriteni otrreiz..

Par nožēlu priekš manis pirmais rezultāts ievadot draugiem.lv pase wordpress izlec Ģirta Upīša rakstītais plugins.

Žēl..

Apskatot pēdējās relīzes (pagaidām divas 1.0 un 1.1) datumu- 2010.04.13 izdaru secinājumu, ka nokavēju tikai nedaudz.

Kāpēc šī ideja neienāca 1 mēnesi atpakaļ?

Nekas domāsim tālāk kā izpausties brīvos brīžos.

Aizstājam vai izmainām izvadāmo kodu izmantojot javascript

Veidojot vienu lapu radās neikdienišķa situācija- bija nepieciešams izmainīt jau php izveidoto kodu un aizstāt to ar citu, ja izvadītajā html kodā ir sastopams cits unikāls kods.

Kā vienīgais risinājums man ienāca prātā javascript.

Iespējams kādam tas liksies gaužām vienkārši, tomēr man, kas ir “uz jūs” ar javascript izveidot šīs pāris rindiņas bija diezgan ķepīgi un laikietilpīgi.

Nu tad, lūk, pati funkcija un paskaidrojumi:

<script type="text/javascript">

//izsaucam funkciju pie ielādes

window.onload=gethtml; Talak »

Atbrīvojamies no komentāru spama

WordPress piedāvā iebūvētu un vienkāršu veidu kā atbrīvoties no spama- Akisment, kura spēku var palielināt sadaļā:

Iestatījumi->Diskusijas ierakstot papildus frāzes vai IP adreses, kas liecinās par spamu. Dažas adreses, kuras nomocīja mani:

194.8.75.149

194.8.75.163

87.118.118.133

194.8.74.220

92.112.

92.113.

Bet pavisam nejauši uzdūros vecam pods.lv rakstam, kurā vienkārši ieteikts ar javascript palīdzību pamainīt komentu saņemšanas lapas adresi. Piemērs rakstīts wordpress, bet to tik pat vienkārši var pielāgot jebkurai citai lapai.

Kas tādā veidā tiks izdarīts?

Ja nebūs ieslēgts javascript atbalsts, tad ievadot komentāru tas tiks padots citai lapai, piemēram, /spaamms/ nevis comments.php. Tas sniedz rezultātu, jo daudzām spamotāju sistēmām nav ieslēgts javascript.

Lai izskatītos korektāk var arī izveidot šādu lapu ( dll.lv/spaammss), kurā populārzinātniski paskaidrotu, kas noticis.

Papildus tam pirms komentēšanas formas tiks izvadīs paziņojumu, ka jābūt ieslēgtam javascript, lai komentētu.

Lai to izdarītu atrodam wordpress templeita comments.php failu, kas atrodas “web root/wp-content/themes/temas_nosaukums/comments.php”

Atrodam šādu rindiņu:

<form action="<?php echo get_option('siteurl'); ?>/wp-comments-post.php” method=”post” id=”commentform”>

un aizstājam to ar:

<form action="<?php echo get_option('siteurl'); ?>/spaamms/" method="post" id="commentform">

<script type="text/javascript">

document.getElementById('commentform').action = "<?php echo get_option('siteurl'); ?>/wp-comments-post.php";

</script>

<noscript>

<p><strong class="postdate">Lai izmantotu koment&#275;&#353;anas iesp&#275;ju, p&#257;rl&#363;k&#257; j&#257;b&#363;t iesl&#275;gtam JavaScript atbalstam!</strong>. Kaut k&#257; ta&#269;u ir j&#257;m&#275;&#291;ina c&#299;n&#299;ties ar koment&#257;ru piedrazot&#257;jiem.</p>

</noscript>

Papildus tam, lai daži spamotāji pa taisno neievietotu komentārus, nomainīju komentāru apstrādājamā faila nosaukumu tai pašā failā:

document.getElementById('commentform').action = "<?php echo get_option('siteurl'); ?>/wp-comments-post.php";

uz:

document.getElementById('commentform').action = "<?php echo get_option('siteurl'); ?>/wp-comments-post_n123.php";

un, protams, tad arī pats komentāru apstrādājošais fails jāpārsauc- atrodas web root/wp-comments-posts.php uz wp-comments-post_n123.php

Es tagad tiešām ceru, ka ar to pietiks…

Kā izgriezt simbolu no WEB lapas..

Viena uzdevuma veikšanai vajadzēja izgriezt no mājaslapas un izvadīt simbolu virkni, kas atradīsies starp noteiktiem tagiem(kuri nav XML).
Uz ātro neatradu gatavu risinājumu tāpēc uzrakstīju funkciju.
Nepretendēju uz pašu asprātīgāko risinājumu, bet varbūt kādam noder..

function griezam($Content,$str_pirms,$str_pec){

$garums_pirms=strlen($str_pirms);
$pec = strstr($Content, $str_pirms);
//nogriežam visu lidz sakumama
//nomemam visu lidz firmai
$pec= substr(“$pec”, $garums_pirms);
//nogriežam
$pec1=strstr($pec, $str_pec);

//saskaitam cik ir atlikusaja rinda un pirms nogriezt beigas
$sk_pec=strlen($pec);
$sk_pirms=strlen($pec1);

$sk=$sk_pec-$sk_pirms;

$rezultats=substr(“$pec”, 0,$sk);

echo “$rezultats”;
}

//ierakstam lapu no kuras gribam izgriezt kaut ko

$Content = file_get_contents(“http://dll.lv”);

//ierakstam stringu kas ir pirms vēlamā elementa. Piemers ir vienkārš, tai pat laikā tā vietā var būt piemēram <div style=”color:#00FF00″>,  galvenais, lai tas būtu pirmais unikālais un beidzas pirms vēlamā

$str_pirms=’<title>’;

//ierakstam stringu, kas ir pec velamā elementa

$str_pec = ‘</title>’;

//izsaucam funkciju

griezam($Content,$str_pirms,$str_pec);

Lapas redirect

Ja nepieciešams pārsūtīt uz citu lapu tās ielādes laikā, var izmantot php funkciju:

<?
$URL="http://localhost/…";
header ("Location: $URL");

?>

Taču gadījumos, kad jāaizsūta uz citurieni izpildāmā koda vidus daļā(pie noteiktiem notikumiem), nekas neatliek kā izsaukt javascript:

echo “<script language=\”javascript\”>”;
echo “window.location = \”http://localhost/…”;
echo “</script>”;

Tas gan nenostrādās, ja pārlūkā būs atslēgts javascript

PHP funkcija, kas atgriež tekošo URLI

function curPageURL() { Talak »