Your best option may be to use the cleveref package. To include the "name" of the item being cross-referenced in the hyperlink target, you'll need to load it with the nameinlink option:
\usepackage[nameinlink]{cleveref}
Remember that it's necessary to load the cleveref package after the hyperref package (and any other packages that manipulate the \label macro). With this package loaded, and supposing you have two equations labelled, say, {eq:a} and {eq:b}, you would cross-refernce the first one by issuing the command \cref{eq:a}, or both at once with the command \cref{eq:a,eq:b}.
However, the fact that language of your documents would appear to be Polish raises (at least) two complications.
First, the default language the cleveref package employs for cross-referenced items ("equation", "figure", "table", "page", etc) is English. Currently, the package includes options to use about a dozen other languages to typeset the names of cross-referenced items, but Polish is not (yet) one of them. Aside: If you contacted Toby Cubitt (the author of the cleveref package) and sent him a list of item names in Polish, I'm sure he'd be delighted to set up a new, Polish, language option. (The items include: equation, figure, subfigure, table, subtable, page, part, chapter, section, appendix, enumi, footnote, theorem, lemma, corollary, proposition, definition, result, example, remark, note, algorithm, listing, and line!)
In the meantime, though, you'll have to use some of the low-level controls of the cleveref package to supply all the names (in nominative singular and nominative plural forms) yourself. E.g., in the preamble after loading the package, you'd have to enter commands of the form (using English just for this example)
\crefname{equation}{equation}{equations} %substitute Polish equivalents here...
\Crefname{equation}{Equation}{Equations}
\crefname{figure}{Figure}{Figures}
\Crefname{figure}{Figure}{Figures}
and so on.
Second, Polish is a language that declines nouns, i.e., the nominative, genetive, etc forms are generally different, right? The user guide for the cleveref has this to say for use of the cleveref package with such languages:
Note that if you're writing in a language in which nouns decline, the \cref and \cpageref commands may be less useful, as they always produce the cross-reference name
in the nominative case. In such languages, you may instead prefer to use the
\labelcref and \labelcpageref commands. Unlike \cref and \cpageref, these
don't produce the name in front of the cross-reference, so you must supply it (in
the appropriate case) yourself. But they do still cope with multi-references, so you
still gain some benefit from using cleveref.
In short, be prepared to use the \labelcref command at times and supply the associated noun's name yourself in the appropriate (non-nominative) case. Or, rephrase your sentences that contain cross-references so that they only use the nominative cases.
Addendum: To use \labelcref instead of \cref, you would type of Figures~\labelcref{fig:a,fig:b} instead of of \cref{fig:a,fig:b}. A side-effect of this construction is that the noun (here, Figures) that precedes the \labelcref command will not be part of the hyperlink even if the nameinlink option was set.
\autorefinstead of\ref. – canaaerus Jun 22 '12 at 7:35