Categories

Archives

About

This blog mostly presents different approaches, methods and practices in software and web development, but also contains some "out of main topic" articles. MOYA (MOleYArd) products are presented here as well.

It’s definitely a good practice to use prepared statements for SQL queries. Apart from other things, SQL injections are eliminated without necessity to escape data. For PHP and MySQL mysqli prepared statements are probably the most common prepared statements solution. But I don’t like one of their aspects.

In this article I will present you a way how to download complete Facebook photoalbums or profile photos with OWIDIG tools. Unlike most solutions that provide downloading Facebook albums, with OWIDIG tools you don’t need to install any additional software or browser plug-ins. All you need is your internet browser. Opera, Google Chrome and Microsoft Internet Explorer are supported.

OWIDIG is an online image grabber and downloader of website images. I introduced it last month in this article. Since then several more features were added. This article contains detailed review of OWIDIG functionality.

With OWIDIG service you can grab images from any website, view them, filter them, get information about them or download them. You may include or exclude images which are repeated. Moreover, CSS images (located inside style tags, external stylesheets (via link or import) and also inside inline styles) are supported as well. Images can be grabbed from sites with standard HTTP protocol as well as secure HTTPS protocol.

At the end of the previous part of this tutorial we briefly introduced echo command and I promised that we will deal with creating batch files in the command prompt. Actually, creating batch files is the second step. The first step is to create an arbitrary file.

I am currently working on OWIDIG (Online Webpage Image Downloader and ImageInfo Grabber). You can see its current published state here – OWIDIG. It has “old” inside URL, as I plan to keep this quasi-beta version available online.

Sometimes you need to use (X)HTML element attributes that are not part of any W3C standard doctypes. Or you may want to use strict version of doctype with some attributes that are only in transitional version of doctype. Well, it certainly has its reasons (I will mention it) why they were removed and if you would like to use strict doctype then you shouldn’t use them.

Most of the time, you can follow this rule. In fact, you should use strict doctype instead of transitional doctype where possible. In strict versions of doctypes presentation attributes are removed and are expected to be replaced with CSS properties. I prefer strict doctypes. Apart from other things modern browsers use their most standards compliant rendering mode and therefore it is easier to make appearance of the site look exactly the same in various browsers. (commonly spaces between elements may be problematic)

You will probably not argue that relative URLs (Uniform Resource Locators) are very useful feature of websites, especially as for web creation process. If once some webpage had to move somewhere else (and it usually has to at least from developer’s localhost to production environment), it would be a tedious process to rewrite it, so using relative addresses is very convenient.

But there are situations when absolute URLs better fit our needs, or when they are even essential. A typical example is when you want to copy the source of some website or its part. There are relative URLs for images and included styles. Of course, you want to use it in another domain, so relative URLs are not what you want, if you don’t want to also copy all included content. Another example of usage is when you want to download that included content. Again, you need to have its absolute URL.

So the task is to convert all relative URL addresses to their absolute counterparts. But before I show you how to this, let’s discuss occurences and all possible forms of relative URLs. We will deal with HTTP(S) scheme URLs.

I decided to write a series about Windows commands targeted to less skilled users (there will be nothing new for the advanced Windows users, so if you belong to this group, you may skip this article )

This series is not intended to be a complete tutorial, its intent is just to show some of the most useful tricks. However, since as I already mentioned, it is targeted to rookies, so in this first part we will deal with the very basics – how to actually work with commands, command line and batch files in general.

Let me introduce MOYA’s new card game Pepan Durak. Pepan Durak is a variant of popular card game. While standard Russian Durak is played with a deck o 36 cards, Pepan Durak is based on variant that is played with 32 cards, which is count typical for German cards. It is a LAN game, it can be played on LAN (physical or virtual such as Hamachi) network. For more information visit game’s homesite.

There are some ways to get the original source of any HTML element in JavaScript. And they work fine in most situations. However, there are situations where these ways are not really sufficient and I especially mean not cross-browser enough.

innerHTML property is probably the most frequently used method, but it has some well-known drawbacks. First of all, innerHTML property does not contain (X)HTML written by original author of (X)HTML page. Instead, it contains some sort of browser specific Document Object Model string representation. Especially in IE this representation is quite ugly (missing quotes, capital letters of tags, …). And thus we encounter another problem – content of innerHTML property differs in different browsers!

But why is this important that it differs? Should we care? Maybe, we should. There might be situations when we may need the same value of innerHTML property for all browsers. There are always some tricks to get around this need and make it in other way, or simply make different solutions for different browsers. But wouldn’t it be nice to have function that not only returns same content in all modern major browsers, but moreover returns exactly the content that was created by author of webpage? Getting truly original source code is in fact another thing that might be sometimes useful.