NULL czy NOT NULL - o to jest pytanie

2014-04-22 16:06:31

 

Przeglądając różne kody często widzę, iż programiści nie zwracają uwagi na to, czy ich pola są NULL czy NOT NULL. Ba, swego czasu mi to tam też było wsio rybka. Jednak jest to dość ważna kwestia.... No dobra, świat się przez nią nie skończy, ale dobrze jest na to zwracać uwagę.

NeptunIDE - edytor online

2013-07-25 13:40:39

 

Niedawno dostałem info o nowy edytorze online NeptunIDE. Co to jest? Wyręczę się informacją prasową:


NeptunIDE to polski startup, który tworzy zintegrowane środowisko programistyczne (IDE) dla PHP działające w chmurze.
[...]
NeptunIDE to środowisko programistyczne, które stawia na szybkość działania, podpowiadanie składni i wsparcie dla frameworka CakePHP.
Przeprowadziliśmy ankietę wśród ponad 500 programistów PHP z całego świata. Odpowiedzi były niemal jednomyślne: dla zdecydowanej większości programistów najważniejsze jest jak najbardziej precyzyjne podpowiadanie kodu, w każdym możliwym momencie, a najbardziej denerwującą rzeczą w używanym przez nich oprogramowaniu jest szybkość, zużycie pamięci i responsywność. Oczywiste wiec dla nas było, że na te dwie potrzeby użytkowników musimy postawić tworząc NeptunIDE. Trzecia cecha naszego produktu - specjalne wsparcie dla CakePHP - to nasza własna propozycja.

Klasa widoku - poprawki

2013-06-17 12:24:26

 

Z racji, że było kilka uwag do klasy View, wprowadziłem parę poprawek. Klasa niestety nie jest kompatybilna wstecz, głównie ze względu na wprowadzenie namespaceów. Głowne zmiany/dodatki:

  • Wprowadzenie namespace
  • Likwidacja właściwości statycznych
  • Możliwość ustawienia by klasa rzucała wyjątkami zamiast zwykłymi błędami jak do tej pory
  • Dodanie metod pozwalających akcji na dodawanie własnych kodów js/css/meta w nagłówku strony (przykład w akcji login.php)
  • Możliwość definiowania core'owych pluginów. Na chwilę obecną dołączam jeden plugin HtmlOptions, który na podstawie tablicy danych generuje OPTION dla pola SELECT

Najnowsza wersja posiada numerek 1.1 i jest do pobrania w dziale download.

Klasa widoku

2013-06-13 08:37:14

 

Często na Waszych stronach wstawiacie jakiś system szablonów, np. Smarty. A potem biegacie po forach z pytaniami a jak zrobić to a jak tamto w takim Smarty. Dodatkowo taki system to jedna wielka kobyła, która na dobrą sprawę w niczym nie usprawnia życia, a wręcz czasami komplikuje. Często wpadacie na pomysł, by napisać własny system szablonów. Ale to również nie jest zbyt dobry pomysł. Zadam Wam pytanie: ale po co w ogóle bawić się w system szablonów? Odpowiecie zapewne: by oddzielić wygląd aplikacji od jej logiki. Tak, po to. Ale po co bawić się w system szablonów, który oprócz wprowadzanie własnej nowej składni nie robi tak naprawdę nic użytecznego. Może poprostu wprowadzić system, który będzie operował jedynie na czystym HTML oraz PHP. Wówczas nie trzeba poznawać żandej nowej składni ani bawić się w dzikie parsowania szablonów. I taką właśnie klasę widoku chcę Wam dziś pokazać.

Dowcipy o informatykach

2013-04-26 10:14:58

 

Przedstawiam Wam mój nowy serwis jokes.nospor.pl. Możecie tam poczytać dowcipy o programistach i informatykach. Oprócz czytania, możecie umieszczać własne dowcipy oraz przyznawać punkty tym, które Wam się spodobały, a zabierać tym, które Waszym zdaniem są kiepskie Tak więc zapraszam do korzystania

pr0.nospor.pl

2013-04-09 10:55:31

 

Przedstawiam Wam mój nowy serwis pr0.nospor.pl. Możecie tam poczytać o co ciekawszych/śmieszniejszych kodach i pytaniach pojawiających się na forach programistycznych. A oprócz czytania, możecie umieszczać własne kawałki, które gdzieś tam widzieliście. Tak więc zapraszam do korzystania

Mulący eclipse podczas przełączania zakładek

2012-12-14 10:27:55

 

Do pracy używam eclipse z PDT. Co rusz pojawiają się nowe aktualizacje więc staram się być na bieżąco. Zauważyłem jednak, że z każdą kolejną aktualizacją, podczas przełączania między plikami php, proces ten odbywa się coraz wolniej. Doszło do tego, że musiałem czekać na przełączenie się na nowy plik ok 6 sekund. Było to szczególnie dokuczliwe, gdy chciałem szybko coś zobaczyć w innym pliku i zaraz wrócić do aktualnego - no szlag człowieka trafiał....

Źle rysujący imagefilledpolygon

2012-11-22 16:43:16

 

Niedawno bawiąc się biblioteką pChart, służącą do rysowania wykresów, natrafiłem na pewien błąd. Rysując wykres kołowy 3d z dużą ilością danych, gdzie kilka z nich miały procentowy udział około 1% okazało się, że wykres jest źle rysowany. Dla mało procentowych wartości ich kawałek wykresu był rysowany jakby z przerwami. Od razu uznałem, że jest to błąd klasy pChart, która nie radzi sobie z małymi danymi i tam właśnie zacząłem szukać błędu. Okazało się jednak inaczej....

Skrypty za "50zł" na przykładzie "demotywatory by lerto.pl"

2011-10-24 23:15:51

 

Wiele razy widziałem oferty skryptów, czy też nawet "poważnych" serwisów za przysłowiowe 50zł (często dosłownie za 50zł). Nigdy jakoś nie zwracałem na nie specjalnej uwagi - wiadomo raczej było, że jaka cena taka jakość. W tej "jakości" spodziewałem się podatności na SQLInjection, na XSS czy też ogólnie średnio optymalnie napisanego kodu. Jednak to co zobaczyłem parę dni temu przeszło moje najśmielsze wyobrażenia i postanowiłem na tym przykładzie opisać jak wyglądają skrypty za 50zł. Wahałem się trochę czy o tym pisać czy nie ale o tym na końcu.

Automatyczne sortowanie JSON przez Operę i Chrome

2011-09-27 16:26:30

 

Niedawno napotkałem na dość ciekawy problem. Pobierałem sobie ajaxem dane w postaci JSON a następnie wyświetlałem je w takiej kolejności, w jakiej otrzymałem. Jednak pewnego dnia klient zgłosił mi błąd, że dane wyświetlają się odwrotnie pod Chrome. Jak się później okazało podobny problem był również z Operą. A by przedstawić Wam dokładnie problem, pokażę przykładowy kod i dane, które powodują błąd.

Kod js:

1
2
3
4
5
6
7
8
$.ajax({
  url: 'testjs.php',
  dataType : 'json',
  success: function( data ) {
    for (var i in data) alert(i);
  }
});

oraz plik testjs.php

1
2
3
4
<?php
$ar 
= array(3=>'bla',2=>'ola',1=>'costam');
echo 
json_encode($ar);
?>

Jak widzicie, plik testjs.php generuje mi dane w kolejności 3,2,1. Niestety Opera i Chrome odbiera te dane w kolejności posortowanej 1,2,3. FireFox czy też IE nie sortują danych.

Rozwiązaniem tej sytuacji okazało się niestosowanie indeksów numerycznych tylko tekstowych, np.

1
2
3
4
<?php
$ar 
= array('c3'=>'bla','c2'=>'ola','c1'=>'costam');
echo 
json_encode($ar);
?>

Zamiast literki 'c' można wstawić dowolny tekst. Jeśli jednak ktoś z różnych przyczyn nie może zrobić takiego obejścia, to pozostaje jedynie sortowanie danych w js.

1  2  3  4  5  6  7    >