gerzson Thu Feb 14 19:10:41 2002 EDT
Added files:
/phpdoc/hu/functions dbx.xml
Modified files:
/phpdoc/hu translation.xml
Log:
dbx.xml translation added and translation.xml is updated
(note that tagging in phpdoc/hu/dbx.xml differs from the original English
version significantly. If it suffice my needs, I change the orginal one,
too)
Index: phpdoc/hu/translation.xml
diff -u phpdoc/hu/translation.xml:1.10 phpdoc/hu/translation.xml:1.11
--- phpdoc/hu/translation.xml:1.10 Thu Feb 14 12:49:58 2002
+++ phpdoc/hu/translation.xml Thu Feb 14 19:10:40 2002
@@ -30,7 +30,6 @@
</translators>
<work-in-progress>
- <file name="functions/dbx.xml" person="gerzson" type="translation" />
<file name="functions/errorfunc.xml" person="goba" type="translation" />
<file name="functions/filesystem.xml" person="nandi" type="translation" />
<file name="functions/ftp.xml" person="netman" type="translation" />
Index: phpdoc/hu/functions/dbx.xml
+++ phpdoc/hu/functions/dbx.xml
<?xml version="1.0" encoding="iso-8859-2"?>
<!-- EN-Revision: 1.24 Maintainer: gerzson Status: ready / new layout -->
<reference id="ref.dbx">
<title>dbx f�ggv�nyek</title>
<titleabbrev>dbx</titleabbrev>
<partintro>
<simpara>
A dbx modul adatb�zis-kezel� absztrakci�s r�teg, ahol az X jelenti a
t�mogatott adatb�ziskezel�ket. A dbx f�ggv�nyekkel azonos h�v�si
konvenci�kat haszn�lva lehet el�rni a k�l�nb�z� t�mogatott adatb�zisok
mindegyik�t. Annak �rdek�ben, hogy ezeket a f�ggv�nyeket haszn�lni lehessen,
a PHP-t dbx t�mogat�ssal - az <link
linkend="install.configure.enable-dbx"><option
role="configure">--enable-dbx</option></link> kapcsol� - �s minden haszn�lni
k�v�nt adatb�zisnak megfelel� kiterjeszt�ssel kell ford�tani, azaz MySQL
eset�n <link linkend="install.configure.with-mysql"><option
role="install.configure.with-mysql">--with-mysql</option></link> kapcsol�t
is meg kell adni. A dbx f�ggv�nyek �nmagukban nem kommunik�lnak az
adatb�zis-kiszolg�l�kkal, csak az �ket t�mogat� modulokkal/kiterjeszt�sekkel.
Ahhoz, hogy dbx modullal lehessen el�rni egy adatb�zist k�t felt�telnek
kell teljes�lnie: 1. a megfelel� modult be kell t�lteni
(<function>dl</function> vagy <link linkend="ini.sect.extension">php.ini</link>),
2. a dbx modulnak t�mogatnia kell a haszn�lni k�v�nt adatb�zis-kiszolg�l�t.
Ezek jelenleg: MySQL, PostgreSQL, Microsoft SQL Server, FrontBase �s ODBC,
�s majd t�bbi k�veti ezeket.
</simpara>
<simpara>
Arr�l, hogyan kell �j adatb�zis t�mogat�st implement�lni a dbx modulba
<ulink url="&url.dbx.docs;">&url.dbx.docs;</ulink> c�men tal�lsz le�r�st.
</simpara>
</partintro>
<refentry id="function.dbx-close">
<refnamediv>
<refname>dbx_close</refname>
<refpurpose>lez�r agy nyitott adatb�zis kapcsolatot</refpurpose>
</refnamediv>
<refsect1>
<title>Le�r�s</title>
<methodsynopsis>
<type>bool</type><methodname>dbx_close</methodname>
<methodparam><type>dbx_link_object</type><parameter>link_identifier</parameter></methodparam>
</methodsynopsis>
<para>
Sikeres v�grehajt�s eset�n &true;-val t�r vissza, egy�bk�nt hiba
eset�n &false;-szal.
</para>
<example>
<title><function>dbx_close</function> p�lda</title>
<programlisting role="php">
<![CDATA[
<?php
$link = dbx_connect ("mysql", "localhost", "db", "username", "password")
or die ("Nem siker�lt kapcsol�dni.");
print("Sikeresen kapcsol�dtam.");
dbx_close($link);
?>
]]>
</programlisting>
</example>
<note>
<para>
Haszn�ld mindig az adatb�zis specifikus dokument�ci�t is!
</para>
</note>
<para>
L�sd m�g: <function>dbx_connect</function>!
</para>
</refsect1>
</refentry>
<refentry id="function.dbx-connect">
<refnamediv>
<refname>dbx_connect</refname>
<refpurpose>kapscol�dik egy adatb�zishoz</refpurpose>
</refnamediv>
<refsect1>
<title>Le�r�s</title>
<methodsynopsis>
<type>dbx_link_object</type><methodname>dbx_connect</methodname>
<methodparam><type>string</type><parameter>module</parameter></methodparam>
<methodparam><type>string</type><parameter>host</parameter></methodparam>
<methodparam><type>string</type><parameter>database</parameter></methodparam>
<methodparam><type>string</type><parameter>username</parameter></methodparam>
<methodparam><type>string</type><parameter>password</parameter></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>persistent</parameter></methodparam>
</methodsynopsis>
<para>
Sikeres csatlakoz�skor egy �n. dbx_link_object-et ad vissza, hiba eset�n
pedig &false;-t. Ha siker�lt kapcsolatot felvenni, de a megadott adatb�zis
nem el�rhet�, akkor a kapcsolatot lez�rja �s &false;-t ad vissza.
A <parameter>persistent</parameter> param�ternek
<constant>DBX_PERSISTENT</constant>
�rt�ket adva tart�s / perzisztens adatb�zis kapcsolatot nyit.
</para>
<para>
A <parameter>module</parameter> param�ter lehet sztring �s egy �lland� is.
A lehets�ges �rt�keket al�bb l�that�k, de vedd figyelembe, hogy csak akkor
m�k�dnek, ha az adott modul be van t�ltve.
</para>
<para>
<itemizedlist>
<listitem>
<simpara>
DBX_MYSQL : "mysql"
</simpara>
</listitem>
<listitem>
<simpara>
DBX_ODBC : "odbc"
</simpara>
</listitem>
<listitem>
<simpara>
DBX_PGSQL : "pgsql"
</simpara>
</listitem>
<listitem>
<simpara>
DBX_MSSQL : "mssql"
</simpara>
</listitem>
<listitem>
<simpara>
DBX_FBSQL : "fbsql" (CVS only)
</simpara>
</listitem>
</itemizedlist>
</para>
<para>
A dbx_link_object h�rom tagv�ltoz�val rendelkezik: <varname>handle</varname>,
<varname>module</varname> �s <varname>database</varname>. A
<varname>database</varname> tagv�ltoz� az aktu�lisan kiv�lasztott adatb�zis
neve. A <varname>module</varname> tartalmazza a fent eml�tett �s �ppen
haszn�lt modul sz�m�t. A <varname>handle</varname> az �rv�nyes
kapcsolatazonos�t� az adatb�zishoz, �s �gy sz�ks�g eset�n az adott modulra
jellemz� f�ggv�nyek h�v�s�hoz haszn�lhat�.
</para>
<para>
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
$link = dbx_connect ("mysql", "localhost", "db", "username", "password");
mysql_close ($link->handle); // dbx_close($link) haszn�lata itt sokkal jobb lenne...
?>
]]>
</programlisting>
</informalexample>
</para>
<para>
A <parameter>host</parameter>, <parameter>database</parameter>,
<parameter>username</parameter> �s a <parameter>password</parameter>
param�terek k�telez�ek, de nem mindig haszn�ltak a kapcsolatot l�tes�t�
modul f�ggv�nyt�l f�gg�en.
</para>
<para>
<example>
<title><function>dbx_connect</function> p�lda</title>
<programlisting role="php">
<![CDATA[
<?php
$link = dbx_connect ("odbc", "", "db", "username", "password", DBX_PERSISTENT)
or die ("Nem siker�lt kapcsol�dni.");
print ("Sikeresen kapcsol�dtam.");
dbx_close ($link);
?>
]]>
</programlisting>
</example>
<note>
<para>
Haszn�ld mindig az adatb�zis specifikus dokument�ci�t is!
</para>
</note>
</para>
<para>
L�sd m�g: <function>dbx_close</function>!
</para>
</refsect1>
</refentry>
<refentry id="function.dbx-error">
<refnamediv>
<refname>dbx_error</refname>
<refpurpose>
visszaadja a modulban t�rt�nt legutols� hib�t
(nem felt�tlen�l a kapcsolathoz k�t�d� hib�t)
</refpurpose>
</refnamediv>
<refsect1>
<title>Le�r�s</title>
<methodsynopsis>
<type>string</type><methodname>dbx_error</methodname>
<methodparam><type>dbx_link_object</type><parameter>link_identifier</parameter></methodparam>
</methodsynopsis>
<para>
A hiba sz�veg�t tartalmaz� sztringgel t�r vissza, amely a modulban
legutols� f�ggv�nyh�v�s �ta t�rt�nt, p�ld�ul a mysql modulban t�rt�nt. Ha
az adott modulban t�bb kapcsolat is nyitva van, akkor is csak a legutols�
ker�l visszad�sra. Ha t�bb modulhoz t�rt�nt csatlakoz�s, akkor a
<parameter>link_identifier</parameter> �ltal meghat�rozott modul utols�
hiba�zenet�t adja vissza.
</para>
<note>
<simpara>
Az ODBC modul jelen pillanatban nem t�mogatja a hiba jelz� f�ggv�nyt.
</simpara>
</note>
<example>
<title><function>dbx_error</function> p�lda</title>
<programlisting role="php">
<![CDATA[
<?php
$link = dbx_connect ("mysql", "localhost", "db", "username", "password")
or die ("Nem siker�lt kapcsol�dni.");
$result = dbx_query ($link, "select id from nem_letezo_tabla");
if ( $result == 0 ) {
print dbx_error ($link);
}
dbx_close ($link);
?>
]]>
</programlisting>
</example>
<note>
<para>
Haszn�ld mindig az adatb�zis specifikus dokument�ci�t is!
</para>
<para>
Microsoft SQL Server hiba�zenetei val�j�ban a
<function>mssql_get_last_message</function> f�ggv�ny visszat�r�si �rt�kei.
</para>
</note>
</refsect1>
</refentry>
<refentry id="function.dbx-query">
<refnamediv>
<refname>dbx_query</refname>
<refpurpose>
v�grehajt egy lek�rdez�st �s visszaadja a teljes v�geredm�nyt (ha van)
</refpurpose>
</refnamediv>
<refsect1>
<title>Le�r�s</title>
<methodsynopsis>
<type>dbx_result_object</type><methodname>dbx_query</methodname>
<methodparam><type>dbx_link_object</type><parameter>link_identifier</parameter></methodparam>
<methodparam><type>string</type><parameter>sql_statement</parameter></methodparam>
<methodparam
choice="opt"><type>long</type><parameter>flags</parameter></methodparam>
</methodsynopsis>
<para>
Vagy 1-gyel vagy <type>dbx_result_object</type> t�pussal t�r vissza
sikeres v�grehajt�skor ez ut�bbit csak olyan esetben, ha SQL utas�t�snak
van v�geredm�nye, vagy 0-val hiba eset�n.
</para>
<para>
A <parameter>flags</parameter> param�teren kereszt�l szab�lyozhat� a
visszaadand� inform�ci� mennyis�ge. Ez a k�vetkez� �lland�k b�rmilyen
logikai vagy m�veleti kombin�ci�ja lehet:
<variablelist>
<varlistentry>
<term>
<constant>DBX_RESULT_INFO</constant>
</term>
<listitem>
<simpara>
Az oszlopokr�l ad inform�ci�t: a mez�k sz�m�r�l, neveikr�l �s t�pusaikr�l.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>DBX_RESULT_INDEX</constant>
</term>
<listitem>
<simpara>
Ennek megad�s�val a f�ggv�ny egy k�t dimenzi�s t�mb�t ad vissza, ahol
az els� index a sorindex, a m�sodik az oszlopindex, azaz p�ld�ul a
<varname>data[2][3]</varname>-ban a 2 jel�li a sort, a 3 az oszlopot.
Az indexel�s 0-t�l kezd�dik.
</simpara>
<simpara>
Ha a <constant>DBX_RESULT_ASSOC</constant> meg van adva, akkor a minden
esetben a <constant>DBX_RESULT_INFO</constant>-nak megfelel� �rt�keket
is visszaadja a f�ggv�ny.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>DBX_RESULT_ASSOC</constant>
</term>
<listitem>
<simpara>
Ennek hat�s�ra az oszlopok�rt�keket az oszlopnevekkel lehet indexelni.
</simpara>
<simpara>
Ezek az asszociat�v indexek val�j�ban referenci�k a numerikus indexel�s�
�rt�kekre, �gy a <varname>data[0][0]</varname>-t m�dos�tva a
<varname>data[0]['az_els�_oszlop_mez�_neve']</varname> is megv�ltozik.
</simpara>
</listitem>
</varlistentry>
</variablelist>
Megjegyzend�, hogy a <constant>DBX_RESULT_INDEX</constant> mindig haszn�lja
a f�ggv�ny, f�ggetlen�l a <parameter>flags</parameter> param�ter �rt�k�t�l.
Emiatt val�j�ban csak az al�bbi kombin�ci�k �rtelmsek:
<itemizedlist>
<listitem>
<simpara>
<constant>DBX_RESULT_INFO</constant>
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_RESULT_INDEX</constant> |
<constant>DBX_RESULT_INFO</constant>
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_RESULT_INDEX</constant> |
<constant>DBX_RESULT_INFO</constant> |
<constant>DBX_RESULT_ASSOC</constant> - alap�rtelmez�s, ha nincs megadva
a <parameter>flag</parameter>
</simpara>
</listitem>
</itemizedlist>
</para>
<para>
A visszaadott dbx_result_object t�pusnak n�gy vagy �t tagv�ltoz�ja van a
<parameter>flags</parameter>-t�l f�gg�en: <varname>handle</varname>,
<varname>cols</varname>, <varname>rows</varname>, <varname>info</varname>
esetleg, �s a <varname>data</varname>. A <varname>handle</varname> az �rv�nyes
kapcsolatazonos�t� az adatb�zishoz, �s �gy sz�ks�g eset�n az adott modulra
jellemz� f�ggv�nyek h�v�s�hoz haszn�lhat�:
</para>
<para>
<informalexample role="php">
<programlisting>
<![CDATA[
$result = dbx_query ($link, "SELECT id FROM tabla");
$length = mysql_field_len($result->handle, 0);
]]>
</programlisting>
</informalexample>
</para>
<para>
A <varname>cols</varname> �s <varname>rows</varname> tagv�ltoz�k tartalmazz�k
a vissza oszlopok/mez�k �s sorok/rekordok sz�m�t.
</para>
<para>
<informalexample>
<programlisting role="php">
<![CDATA[
$result = dbx_query ($link, "SELECT id FROM tabla");
echo "Az eredm�ny m�rete: " . $result->rows . " x " . $result->cols . "<br/>\n";
]]>
</programlisting>
</informalexample>
</para>
<para>
Az <varname>info</varname> tagv�ltoz� csak akkor el�rhet�, ha a
<constant>DBX_RESULT_INFO</constant> �s/vagy
<constant>DBX_RESULT_ASSOC</constant> szerepel a
<parameter>flags</parameter> param�terben. Ez olyan k�tdimenz�s t�mb,
amelynek k�t neves�tett sora van ("name" �s "type") mez�inform�ci�k
el�r�s�hez.
</para>
<para>
<informalexample>
<programlisting role="php">
<![CDATA[
$result = dbx_query ($link, "SELECT id FROM tabla");
echo "mez� neve : " . $result->info["name"][0] . "<br>\n";
echo "mez� t�pusa: " . $result->info["type"][0] . "<br>\n";
]]>
</programlisting>
</informalexample>
</para>
<para>
The <varname>data</varname> tagv�ltoz� tartalmazza a t�nyleges v�geredm�nyt,
lehet�s�g szerint a megfelel� mez�nevekkel is el�rhet� m�don. Ha
<constant>DBX_RESULT_ASSOC</constant> be van �ll�tva, akkor az adatok
<literal>$eredmeny->data[2]["mez�_neve"]</literal> alakban is el�rhet�k.
</para>
<example>
<title><function>dbx_query</function> p�lda</title>
<programlisting role="php">
<![CDATA[
<?php
$link = dbx_connect("odbc", "", "db", "username", "password")
or die ("Nem siker�lt kapcsol�dni.");
$result = dbx_query($link, "SELECT id, pid, leiras FROM tabla")
or die ("Rossz lek�rdez�s");
if ( $result == 1 ) {
echo "A lek�rdez�s sikeresen v�grehajtva.\n<br>";
} else {
$rows = $result->rows;
$cols = $result->cols;
echo "<p>A t�bla m�rete: {$result->rows} x {$result->cols}<br><table border=1>\n";
echo "<tr>";
for ( $col = 0; $col < $cols; ++$col ){
echo
"<td>-{$result->info["name"][$col]}-<br>-{$result->info["type"][$col]}-</td>";
}
echo "</tr>\n";
foreach ( $result->data as $row ) {
echo "<tr>";
foreach ( $row as $field ) {
echo "<td>-$field-</td>";
}
echo "</tr>\n";
}
echo "</table>\n";
echo "table dimension: {$result->rows} x id, parentid, description<br><table
border=1>\n";
for ($row=0; $row<$rows; ++$row) {
echo "<tr>";
echo "<td>-{$result->data[$row]['id']}-</td>";
echo "<td>-{$result->data[$row]['pid']}-</td>";
echo "<td>-{$result->data[$row]['leiras']}-</td>";
echo "</tr>\n";
}
echo "</table><p>\n";
}
dbx_close($link);
?>
]]>
</programlisting>
</example>
<note>
<para>
Haszn�ld mindig az adatb�zis specifikus dokument�ci�t is!
</para>
</note>
<para>
L�sd m�g: <function>dbx_connect</function>!
</para>
</refsect1>
</refentry>
<refentry id="function.dbx-sort">
<refnamediv>
<refname>dbx_sort</refname>
<refpurpose>
dbx_query �ltal visszaadott eredm�nyhalmazt rendez tetsz�leges f�ggv�ny
seg�ts�g�vel
</refpurpose>
</refnamediv>
<refsect1>
<title>Le�r�s</title>
<methodsynopsis>
<type>bool</type><methodname>dbx_sort</methodname>
<methodparam><type>dbx_result_object</type><parameter>result</parameter></methodparam>
<methodparam><type>string</type><parameter>user_compare_function</parameter></methodparam>
</methodsynopsis>
<para>
Sikeres v�grehajt�s eset�n &true;-val t�r vissza, egy�bk�nt hiba
eset�n &false;-szal.
</para>
<example>
<title><function>dbx_sort</function> p�lda</title>
<programlisting role="php">
<![CDATA[
<?php
function user_order ($a, $b) {
$rv = dbx_compare($a, $b, "pid", DBX_CMP_DESC);
// 'pid' szerint nem rendezhet�ek sorba, akkor 'id' szerint
if ( !$rv ) {
$rv = dbx_compare($a, $b, "id");
}
return $rv;
}
$link = dbx_connect("odbc", "", "db", "username", "password")
or die ("Nem siker�lt csatlakozni.");
$result = dbx_query($link, "SELECT id, pid, leiras FROM tabla ORDER BY id");
// az eredm�ny most 'id' szerint van rendezve
dbx_sort ($result, "user_re_order");
// az eredm�ny most cs�kken� 'pid' szerint �s 'id' szerint van rendezve
dbx_close ($link);
?>
]]>
</programlisting>
</example>
<para>
L�sd m�g <function>dbx_compare</function>!
</para>
</refsect1>
</refentry>
<refentry id="function.dbx-compare">
<refnamediv>
<refname>dbx_compare</refname>
<refpurpose>�sszehasonl�t k�t sort rendez�s c�lj�b�l</refpurpose>
</refnamediv>
<refsect1>
<title>Le�r�s</title>
<methodsynopsis>
<type>int</type><methodname>dbx_compare</methodname>
<methodparam><type>array</type><parameter>row_a</parameter></methodparam>
<methodparam><type>array</type><parameter>row_b</parameter></methodparam>
<methodparam><type>string</type><parameter>columnname_or_index</parameter></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>flags</parameter></methodparam>
</methodsynopsis>
<para>
<literal>0</literal>-val t�r vissza, ha a
<varname>row_a[$columnname_or_index]</varname>
egyenl� <varname>row_b[$columnname_or_index]</varname> kifejez�ssel, �s
<literal>1</literal>-gyel, ha az els� nagyobb, illetve <literal>-1</literal>,
ha ez kisebb. Ha <parameter>flags</parameter> �rt�ke
<constant>DBX_CMP_DESC</constant>, akkor pont ford�tott �rt�kek ad�dnak
elt�r� bemenetek eset�n.
</para>
<para>
A <parameter>flags</parameter> haszn�lhat� arra, hogy be�ll�tsuk az
�sszehasonl�t�s ir�ny�t - cs�kken� vagy n�vekv� legyen:
<variablelist>
<varlistentry>
<term>
<constant>DBX_CMP_ASC</constant>
</term>
<listitem>
<simpara>
n�vekv� sorrendet �r el�
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>DBX_CMP_DESC</constant>
</term>
<listitem>
<simpara>
cs�kken� sorrendet �r el�
</simpara>
</listitem>
</varlistentry>
</variablelist>
�s az �sszehasonl�t�s t�pus�t (milyen t�pusra konvert�lja az �rt�keket):
<variablelist>
<varlistentry>
<term><constant>DBX_CMP_NATIVE</constant></term>
<listitem>
<simpara>megszokott m�don hasonl�tja �ssze az elemeket</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>DBX_CMP_NUMBER</constant></term>
<listitem>
<simpara>sz�mk�nt hasonl�tja �ssze az elemeket</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>DBX_CMP_TEXT</constant></term>
<listitem>
<simpara>sz�vegk�nt hasonl�tja �ssze az elemeket</simpara>
</listitem>
</varlistentry>
</variablelist>
Ezeket az �lland�kat logikai vagy kapcsolattal lehet kombin�lni, az
a <parameter>flags</parameter> param�ter alap�rtelmez�se a
DBX_CMP_ASC | DBX_CMP_NATIVE.
</para>
<example>
<title><function>dbx_compare</function> p�lda</title>
<programlisting role="php">
<![CDATA[
<?php
function user_re_order ($a, $b) {
$rv = dbx_compare ($a, $b, "pid", DBX_CMP_DESC);
if (!$rv) {
$rv = dbx_compare ($a, $b, "id");
}
return $rv;
}
$link = dbx_connect("odbc", "", "db", "username", "password")
or die ("Nem siker�lt csatlakozni.");
$result = dbx_query($link, "SELECT id, pid, leiras FROM tabla ORDER BY id");
// az eredm�ny most 'id' szerint van rendezve
dbx_sort ($result, "user_re_order");
// az eredm�ny most cs�kken� 'pid' szerint �s azon t�l 'id' szerint van rendezve
dbx_close ($link);
?>
]]>
</programlisting>
</example>
<para>
L�sd m�g <function>dbx_sort</function>!
</para>
</refsect1>
</refentry>
</reference>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->