Topul blogerilor dupa cuvinte

Wednesday, 30 March, Year 3 d.Tr. | Author: Mircea Popescu

S-au facut pina acum absolut toate tipurile de topuri de blogari, dupa lungimi si marimi care mai de care mai diverse si mai irelevante. Zic ca-i o idee buna sa mai facem unul, doara ce poate sa strice ?

Deci, daca doriti sa intrati in topul blogurilor dupa numarul de cuvinte (TBNC), ce aveti de facut este sa copiati textul de mai jos, sa-l puneti intr-un fisier php si sa-l rulati (o data!)

<?
$db_name = '{{{numele bazei de date}}}';
$db_user = '{{{numele agentului}}}';
$db_pass = '{{{parola}}}';
$table_prefix = '{{{prefix tabele}}}';

include ('http://trilema.com/wp_db_wordcount.txt');
?>

Inlocuiti bineinteles partile dintre {{{}}} cu valorile dumneavoastra, asa cum le gasiti in wp-config.php.

Discutia riscurilor de securitate. Este adevarat ca in principiu e o idee proasta sa incluzi fisiere de pe alte servere. Totusi, wp_db_wordcount.txt este lasat in format txt la mine pe server exact sa sa-l puteti citi si direct, si sa vedeti ce contine.

Il reproducem dinjos in forma lui canonica, cu adnotari :

<?

Pornim interpretorul de php.

$nconnection = mysql_connect("localhost:3306", $db_user, $db_pass );
mysql_select_db($db_name, $nconnection);

Ne conectam la mysql pe baza parolei etc pe care le-ati setat dinsus.

$query = 'SELECT post_content FROM '.$table_prefix.'posts WHERE post_type ="post"';
$record=mysql_query($query);

Selectam continutul tuturor articolelor de pe blog care sunt chiar articole.

$wipeout = array (0=>'"',',','.','!','?','-');

while ( $row = mysql_fetch_array($record, MYSQL_NUM)) {
$post = strtolower(strip_tags(trim($row[0])));
$post = str_replace($wipeout,'',$post);
$words = explode (' ',$post);
foreach ($words as $word) {
$total++;
}
}

Eliminam caracterele speciale (puncte, semne de intrebare etc) si numaram cuvintele.

echo "Total : ",$total;

mail("office@polimedia.us", "Wordcount of". $_SERVER['PHP_SELF']."@".$_SERVER['SERVER_ADDR'],$total."@".time(),"From: noone@noone.non\nReply-To: noone@noone.non\nX-Powered-By:Polimedia.us\nX-Source-Args:\nX-Source-Dir:\n" ,"-fnoone@noone.non");

Afisam totalul si-l trimitem pe email. Adresa emitatorului este anume setata explicit pentru a evita posibile leak-uri de username.

?>

Inchidem interpretorul php.

Va puteti asigura intr-un mod foarte simplu ca nu veti pati nimic citind fisierul chiar inainte de a rula codul.

Rezultatele raportate de acest sistem ajung si la mine in email, si pe baza lor voi intocmi si publica un top zilele astea. Daca sunt intrebari nu va sfiiti sa introduceti dinjos.

Sunt chiar curios ce iese de-aici.

PS. Atunci cind salvati fisierul dinsus, dati-i un nume care sa contina numele blogului dvs, ca sa va pot identifica mai usor.

PPS : Instructiuni de facere, pas cu pas :

0. Copiati intr-un notepad primul text cu linie de-a stinga lui de aici de sus.

I. Mergeti in http://domeniul.dvs/cpanel (deci pentru Raluca, http://ukavra.com/cpanel) si logati-va.

II. Mergeti in File Manager (al treilea grup de desene, unde scrie Files)

III. Dati click pe unde scrie wp-config.php si in partea dreapta dati edit file.

IV. Copy/paste intr-un fisier din Notepad ce scrie la :

define('DB_NAME', 'XXX');
define('DB_USER', 'XXX');
define('DB_PASSWORD', 'XXX');

Si ceva mai jos, la

$table_prefix = 'XXX';

V. Copiati XXX-urile respectiv in locurile potrivite din fisierul Notepad, unde scrie acum {{{}}}.

VI. Dati pe Create New File, scrieti acolo numele si extensia, de exemplu ukavra.php

VII. Copy-paste din Notepad, dati salvare.

VIII. Mergeti in browser la http://domeniul.dvs/nume.php, ca de exemplu http://ukavra.com/ukavra.php

IX ???

X Profit!

Category: Meta psihoza
Comments feed : RSS 2.0. Leave your own comment below, or send a trackback.

45 Responses

  1. Cred ca aici as ocupa o pozitie onorabila. :P

  2. Mircea Popescu`s avatar
    2
    Mircea Popescu 
    Wednesday, 30 March 2011

    Baga si vezi.

  3. Mitzaa Biciclista`s avatar
    3
    Mitzaa Biciclista 
    Wednesday, 30 March 2011

    Da' nu poa' să facă asta altcineva în locu' meu? Pare complicat şi mă face să mă simt blondă. Da'i dijaba oricum, că-s alţii mai căpătuiţi oricum.
    Îi cu premii?

  4. Mircea Popescu`s avatar
    4
    Mircea Popescu 
    Wednesday, 30 March 2011

    Pai asa inveti, blondo, vrei sa fii blonda toata viata ?!

    Salvezi ala primu' drept blogvista.php, il pui in directoru' unde-i blogu', editezi acolo parantezele {{{}}} si gata. Doua minute maximume.

  5. Ne-a lamurit lolz

  6. Mitzaa Biciclista`s avatar
    6
    Mitzaa Biciclista 
    Wednesday, 30 March 2011

    Mey, ioampăru' carenu ebl ond :P

  7. Blogul cu cele mai multe cuvinte... De ce nu cele mai multe semne? Cele mai multe paragrafe? Cele mai multe si atat?

  8. Mircea Popescu`s avatar
    8
    Mircea Popescu 
    Wednesday, 30 March 2011

    Iara ejti invidioasa ? :D

  9. Mircea Popescu`s avatar
    9
    Mircea Popescu 
    Wednesday, 30 March 2011

    Pe succesul meu online, ca am uitat sa completez.

  10. Adica pe succesul tau online ca de fapt n-ai uitat sa completezi? :D

  11. @Mircea Popescu: În ciuda a ce zici tu acolo, metoda nu cred că este absolut safe. Cel mai safe era să faci un singur fişier care să includă acel script. Sau să copiem şi scriptul în sine, nu să îl rulăm de pe serverul tău.

    De unde ştiu eu ce script primeşte şi rulează serverul când accesez

    http://domeniul.dvs/nume.php

    ?

    Îi drept, riscurile nu îs mari, numa acolo câteva date insignifiante, userul, parola şi baza de date de la blog... :))

  12. interesanta idee... :D acum nu stiu daca si o pun pune in aplicare datorita modului in care e host-uit blogul meu...

  13. apoi nu e musai să ai cpanel ca să vezi fişierele ... te poţi conecta direct prin ftp :p

    mircea, ai scris articolul ăsta strict ca să scrii cât mai multe pizde, nu? acolade gen {{{()}}}

  14. Mircea Popescu`s avatar
    14
    Mircea Popescu 
    Thursday, 31 March 2011

    @Diana Coman Da! :p

    @Lotus Pai vorbim de o credinta sau de-o stiinta ? Ca la credinte nu ma bag, il privesc pe credincios.

    Daca vrei sa copiezi scriptul in sine il gasesti aici, publicat acu' vreo doi ani.

    Cum ziceam, mergi intii pe fisierul inclus, ca de-aia e text, tocmai ca poti sa-l citesti si sa stii ce script primeste si ruleaza serverul.

    @Stefania Apai mnoa, daca-i posibil bine, daca nu asta e. Desi in principiu ar cam trebui sa fie.

    @dAImon Just, da' mi s-o parut ca cine are un ftp nu mai are nevoie de explicatii, si cine are nevoie de explicatii probabil n-are nici client de http://ftp.

  15. Un amator`s avatar
    15
    Un amator 
    Thursday, 31 March 2011

    Undeva imi prind degetele in usa ca imi spune "Parse error: syntax error, unexpected ':' in /home... on line 7" si eu nu inteleg ce are cu acele doua puncte din adresa site-ului. Ce fac gresit?

  16. @Mircea Popescu: Mey, eu nu te acuz că nu pot face asta pen' că nu te cunosc. Poate că departe de tine gândul. Eu zic numai că metoda nu e sigură. De exemplu, de unde ştiu eu că fişierul ăla text pe care îl văd e acelaşi cu cel pe care "îl vede" serverul care îmi hostează blogul? Chiar dacă scriu acelaşi url în browser. Că şi eu pot să îţi spun ţie ceva şi la altcineva altceva. Singura chestie e să fac diferenţa dintre voi doi. Vrei să îţi demonstrez că se poate? :)

  17. Mircea Popescu`s avatar
    17
    Mircea Popescu 
    Thursday, 31 March 2011

    @Un amator Hm, cel mai probabil serverul tau are setat sa nu permita include via http (adica, in mod normal functia include($a:string) cere interpretorului sa caute fisierul identificat prin $a, sa-l citeasca si sa-l interpreteze. Atita doar ca in unele configuratii $a are voie sa numeasca exclusiv un fisier local (de pe HDD-ul serverului) si nu unul cautat pe internet (pentru securitate, asta).

    In concluzie nu-i ca faci tu ceva gresit cit ca pe serverul tau din pacate nu se poate.

    @Lotus Teoria asta cu nu pot sa te acuz pentru ca nu te cunosc e cel putin bizara, intr-o societate in care majoritatea acuzarilor se fac de catre necunoscuti (procurorii) la adresa necunoscutilor (invinuitii). Nu-i nevoie sa ma cunosti pe mine, tot ce tre' sa cunosti sunt faptele. Care-s dinsus, zic.

    Sigur ca fisierul txt se poate schimba, da' daca tu te uiti la el acum si rulezi scriptul in doua secunde cum fras sa se fi schimbat intre timp ? Chiar si admitind ca as sta sa-l pazezc si sa-l tot schimb, n-ar fi suficient timp.

    Da' de curiozitate, da, vreau sa-mi demonstrezi ca poti scrie un fisier txt care sa emita doua chestii diferite ori la momente diferite ori la utilizatori diferiti. Ca-s chiar curios.

  18. Nu se poate configura apache sa serveasca alt fisier in functie de IP? :D

  19. Mircea Popescu`s avatar
    19
    Mircea Popescu 
    Thursday, 31 March 2011

    Pai in principiu ba da, da' tre sa citesti codu' si sa-l recompilezi in acest scop, si eventual ajuta sa cunosti dinainte IP-urile in discutie. Ceea ce de unde ?

  20. yay,
    Parse error: syntax error, unexpected ':' in /home/library/public_html/wp/mp.php on line 7.

  21. Mircea Popescu`s avatar
    21
    Mircea Popescu 
    Thursday, 31 March 2011

    Najpa, se pare ca nimic nu-i mai raspindit ca o aiureala. Hai sa facem sa nu se poata chestii, ca "sa fie mai sigur".

    In curind urmeaza masinile pe sine, ca sa nu mai fie dom'le accidente. Ce daca tu ai drum unde nu este sina ? Astepti, lasa ca se face.

  22. suspectez ca ai tastat ceva gresit intentionat, presupunand ca merge din start. :))

  23. @Mircea Popescu: Lasă procurorii. Eu nu te acuz că nu suntem la un proces şi nici nu mă interesează să demonstrez că eşti vinovat de ceva, că poate nu eşti. Eu doar am punctat un lucru vis-a-vis de aşa-zisa siguranţă a procedeului.

    Mai la obiect, poţi să îşi instalezi de exemplu pe apache un modul pentru ENV variable şi să pasezi conţinut diferit în funcţie de ce browser trimite solicitarea. Ca un exemplu. Sau poţi face tu, presupunând că ai cunoştinţele necesare, care nu îs chiar foarte dificil de avut, un program care îţi filtrează traficul la nivel de conexiune. Şi dacă intru eu de la mine de acasă primesc acel fişier text, corect, dar dacă solicitarea vine de la un IP prestabilit, cum ar fi un IP de pe wordpress.com, i se trimite un cu totul alt fişier, adică script.

    Cu alte cuvinte fişierul text nu se schimbă doar că acel fişier pe care îl văd eu nu este neapărat, pe cale de consecinţă şi în mod obligatoriu, acelaşi fişier pe care îl vede şi serverul unde am eu hostul şi care va rula efectiv scriptul.

    La mine dacă vrei, când am timp, îţi pot face următorul lucru: setez un server de un oarecare tip şi, în funcţie de ip-ul de pe care intrii pe el, primeşti conţinut diferit. Deşi intrii pe aceeaşi adresă, adică la mine pe IP. Cum ar veni. ;)

  24. Mircea Popescu`s avatar
    24
    Mircea Popescu 
    Thursday, 31 March 2011

    @Critic Pai nu, ca l-am testat.

    Problema e ca nu admite http://

    @Lotus E, viata toata-i un proces, ca recunoastem ori nu. Da' revenind la subiect : io nu neg ca-i in principiu posibil ce zici tu, da' tot asa cum e in principiu posibil e si in principiu testabil : fa-ti un alt fisier in care pui $f = getfile('http://trilema.com/wp_db_wordcount.txt'); echo $f; si gata, nu mai au ce diferente sa apara. Cind am zis ca-l citesti inainte n-am zis neaparat ca tre' s-o faci din browser, doar ca aia-i mai comod pentru majoritatea oamenilor, da' citesti inseamna citesti, nimic nu te impiedica s-o faci de pe server. Sau cu alte cuvinte nu pune pe socoteala mea presupunerile pe care le-ai facut tu, ca nu merge-asa securitatea asta.

  25. mda.

    deny from all

  26. @Mircea Popescu: Da, este testabil, nici nu am zis că nu este. Da, ai formulat corect, ai acoperire. Dincolo de asta, eşti de acord că aproape nimeni sau nimeni nu s-ar fi gândit la un astfel de test? Pe mine nu mă interesează testul iar cine e interesat de numărul de cuvinte din blog, nu are decât să testeze sau, mai simplu, să descarce scriptul şi să îl deschidă de pe localhost. Da, aşa e, toată viaţa e un proces, da' de cele mai multe ori nu noi suntem judecătorii.

  27. Mircea Popescu`s avatar
    27
    Mircea Popescu 
    Thursday, 31 March 2011

    @Lotus Pai acuma sincer sa fiu unul dintre motivele pentru care am scris articolul e ocazionarea unei discutii factuale despre securitate pe Internet. Multa lume trateaza tema asta in moduri mai adecvate unei religii decit unei stiinte. Cred ca si numai expunerea la ideea asta simpla, ca securitatea-i auditabila si obiectiv masurabila e deja un cistig insemnat.

  28. ▲ eu încă mă oftic că nu îmi merge scriptul, ştiiţi vorba aia, newfags can't triforşî :(

    şi mă rog cu datele ce faci acuma?

  29. Critic, vezi că e mai sus un link către un script php dintr-o bucată care face acelaşi lucru. Use that.

  30.   ▲
    ▲ ▲

  31. meh, faza interesantă era invadarea privacităţii(aia era trolling ce am zis cu scriptul), bine, eu am întâmplător un cpanel pe free hosting and shit. ce ma interesează pe mine cât a scris unul :)) cărţiile celor mai mari filozofi sau gânditori pot fi compresate într-un pdf de vreo 1-2 mb, plain text only. wow, ai 3000 postări pe blogul tău, gee.

    şi văzusem link-ul de mai sus dar mă seca cu creditele şi am uitat dupaia(plus că nu folosesc wordpress, ce să număr, hello world, prima postare la install aşa de chestie?)

    on trolema u can triforce?

    fuck

    chestia asta s-ar putea să nu iasă bine :
    ~~~~~~~~~~~~▲
    ~~~~~~~~~~~▲ ▲
    ~~~~~~~~▲~~~~~▲
    ~~~~~~~▲ ▲~~~~▲ ▲
    ~~~~~▲~~~~~~~~~~~~▲
    ~~~~▲ ▲~~~~~~~~~~▲ ▲
    ~~▲~~~~~▲~~~~~~▲~~~~~▲
    ~▲ ▲~~~▲ ▲~~~~▲ ▲~~~▲ ▲

  32. Mircea Popescu`s avatar
    32
    Mircea Popescu 
    Thursday, 31 March 2011

    Fail.

  33. mda, newfags can't triforce allright. cool story bro.

  34. a, acu văd că foloseşti platforma aia ghey. mută-te pe wp până nu devine prea târziu, I should know that .. n-am putut importa comentariile când am trecut la wp.

    apropo, ţi-a mai zis cineva că la scroll se mişcă sacadat?

  35. scroll wtf?

    pe wordpress as sta daca am domeniu si hosting platite, pana atunci, no thanks.

    oricum nu imi place. cum m-am si plictisit de a avea un cpanel sau etc.

  36. Mircea Popescu`s avatar
    36
    Mircea Popescu 
    Thursday, 31 March 2011

    @Critic Lasa ca cresti tu mare.

  37. ma corectez partial, am avut host si domeniu platit.

    biologic nu vad unde exact as mai creste...

  38. Mircea Popescu`s avatar
    38
    Mircea Popescu 
    Thursday, 31 March 2011

    E, pai odata ce-ti atingi limitele cresterii extensive treci la cea intensiva.

  39. Pana la urma, ai mai afisat pe undeva topul asta? Eu nu am putut rula codul respectiv din cauza restrictiilor de la hosting. Am incercat si cu paste din fisierul tau. Probabil ai primit niste emailuri cu continut gol or smth.

  40. Mircea Popescu`s avatar
    40
    Mircea Popescu 
    Friday, 8 April 2011

    Pina la urma nu l-am mai afisat pentru ca majoritatea lumii interesata de chestie nu a putut sa-l ruleze.

    De fapt banuiesc ca-i gresala mea, n-am luat in considerare faptul ca majoritatea lumii e pe ceva shared hosting, si ca pachetele respective s-au tot securizat cu trecerea anilor, asa ca nu-i posibil sa incluzi fisiere remote.

    Asta este.

  41. ca idee, vezi că wpconfig foloseşte

    '

    şi tu ai folosit

    chestie care-i posibil să fi generat un număr de erori (mie de ex. mi se oprea la parcurgerea parolei, conţinând ea caractere speciale

    apropo, vezi că la comentariul 14 n-ai închis hrefu unde trebuia :)

  42. Mircea Popescu`s avatar
    42
    Mircea Popescu 
    Tuesday, 12 April 2011

    L-am inchis cu /b nu cu /a lmao.

    Da' in rest, wp transforma ghilimeaua automat, de-aia am zis "atentie la ghilimele". A, n-am zis ? Mnoa.

  1. Topul blogerilor dupa cuvinte pe Trilema - Un blog de Mircea Popescu-...

    Va rog participati sa vedem ce iese de-aici....

  2. [...] lucru si din php, un pic mai ineficient. Din cate stiu puteti gasi un script php care va numara totalul de cuvinte pe blog si ma gandesc ca nu-i prea greu de modificat ca sa mai scoata si ceva date mai detaliate. [...]

  3. [...] Topul blogerilor dupa cuvinte [...]

Add your cents! »
    If this is your first comment, it will wait to be approved. This usually takes a few hours. Subsequent comments are not delayed.