From 15ed2d7ada04b3bbc9de073369f07cfa01a54e39 Mon Sep 17 00:00:00 2001 From: Gabor Hojtsy Date: Thu, 30 Aug 2001 16:49:50 +0000 Subject: [PATCH] Removing file, to prevent big useless diff, I'll readd it ASAP. git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@56305 c90b9560-bf6c-de11-be94-00142212c4b1 --- functions/mysql.xml | 1905 ------------------------------------------- 1 file changed, 1905 deletions(-) delete mode 100644 functions/mysql.xml diff --git a/functions/mysql.xml b/functions/mysql.xml deleted file mode 100644 index f926ce7a5a..0000000000 --- a/functions/mysql.xml +++ /dev/null @@ -1,1905 +0,0 @@ - - - MySQL függvények - MySQL - - - E függvények segítségével érheted el a MySQL adatbázisokat. Ahhoz, hogy - ezeket a függvényeket használhasd, a php-t a - opcióval kell lefordítanod. - Ha nem adod meg az opció után a mysql elérési útvonalát, akkor a php a - beépített mysql kliens könyvtárat fogja használni. Ha a felhasználók más - alkalmazásokat is használnak, amelyek mysql-t használnak (például a php - 3-as és 4-es verzióját, vagy az auth-mysql-t), akkor mindig meg kell adni - a mysql elérési útvonalát a - formában. - Ez ki fogja kényszeríteni, hogy a meglévő mysql kliens könyvtárat - használja a php, elkerülve az ebből adódó ütközéseket. - - - A MySQL-ről további információt a - &url.mysql; címen találsz. - - - A MySQL dokumentációját pedig a &url.mysql.docs;. - - - - - - - mysql_affected_rows - Az előző MySQL műveletben érintett sorok számát adja - meg - - - Leírás - - - int mysql_affected_rows - int - - link_identifier - - - - - - A mysql_affected_rows függvény az előző - link_identifier-rel azonosított kapcsolatban kiadott INSERT, - UPDATE vagy DELETE kérésben érintett sorok számát adja vissza. - Ha nem adsz meg kapcsolat-azonosítót, akkor az utoljára megnyitott - kapcsolatról kapsz információt. - - - - Ha transzakciókezelést hasznnálsz, akkor a - mysql_affected_rows függvényt az INSERT, UPDATE, - vagy DELETE kérés után közvetlenül, nem a kommit után kell meghívni. - - - - Ha az utolsó lekérdezés egy WHERE feltétel nélküli DELETE volt, akkor bár - a táblából minden sor törlődik, a függvény nullát fog visszaadni. - - - Ez a parancs nem hatékony a lekérdező SELECT kéréssel együtt használva, - csak azokkal a lekérdezésekkel, melyek módosítják a táblázat sorait. - Ha egy SELECT lekérdezésben kapott sorok számát szeretnéd megkapni, - akkor használd a mysql_num_rows függvényt. - - - Ha az utolsó kérés meghiusul, akkor a függvény -1-gyel tér vissza. - - - - - - - mysql_change_user - - Aktív kapcsolat felhasználójának módosítása - - - - Leírás - - - int mysql_change_user - string user - string password - string - - database - - - int - - link_identifier - - - - - - A mysql_change_user függvény megváltoztatja az - aktuális, vagy az opcionális paraméterben megadott azonosítójú kapcsolat - felhasználóját. Ha egy adatbázis nevét megadod, akkor ez lesz az - alapértelmezett adatbázis. Ha az új név-jelszó páros helytelen, akkor a - függvényhívás előtti kapcsolat él tovább. - A függvény a PHP 3.0.13 változatával került a nyelvbe és - MySQL 3.23.3, vagy későbbi változata szükséges a használatához. - - - - - - - mysql_close - Lezár egy MySQL kapcsolatot - - - Leírás - - - int mysql_close - int - - link_identifier - - - - - - A függvény értéke igaz, ha a művelet sikerült, hamis, ha nem. - - A mysql_close függvény bezárja az adott - azonosítójú MySQL kapcsolatot. Ha nem adsz meg - link_identifier paramétert, akkor az utoljára - megnyitott kapcsolatot zárja le. - - - A mysql_close függvény használata általában - szükségtelen, mert a nem perzisztens kapcsolatok a szkript végén - bezáródnak. - - - - A mysql_close függvény nem zárja be a - mysql_pconnect függvénnyel megnyitott kapcsolatokat. - - - - MySQL close példa - -<?php - $link = mysql_connect ("kraemer", "marliesle", "titok") - or die ("Nem lehet csatlakozni"); - print ("A csatlakozás sikerült"); - mysql_close ($link); -?> - - - - Lásd még a mysql_connect és a - mysql_pconnect függvényeket! - - - - - - - mysql_connect - Kapcsolatot nyit meg egy MySQL szerverhez - - - Leírás - - - int mysql_connect - string - - hostname - :port - :/path/to/socket - - - - string - - username - - - string - - password - - - - - - Pozitív MySQL azonosítóval tér vissza, ha a csatlakozás sikerült. Hiba - esetén pedig hibaüzenetet ír a kimenetre és 0-val tér vissza. - - - A mysql_connect függvény kapcsolatot nyit meg egy - MySQL szerverhez. A paramétereket elhagyhatod. Az alapértelmezett - értékek: host:port = 'localhost:3306', - username = a folyamat tulajdonosának belépési neve - password = üres karakterlánc. - - - A hostname paraméter tartalmazhat egy portszámot is, például: - "hostname:port" vagy tartalmazhatja a MySQL socket elérési - útvonalát, például: ":/path/to/socket". Az utóbbi hostname - paramétert használva is a helyi MySQL szerverhez próbál majd kapcsolódni - a függvény. - - - A ":port" formátumú kiegészítés a PHP 3.0B4-es változatában - került a nyelvbe. - - - A ":/path/to/socket" formát pedig a PHP 3.0.10-es verziójától - kezdve használhatjuk. - - - A sikertelen kapcsolatkor kiírt hibaüzenetet elnyomhatod, ha '@' jelet - írsz a függvény elé. - - - - - Ha a mysql_connect függvényt kétszer ugyanazokkal a - paraméterekkel hívod meg, akkor nem jön létre újabb kapcsolat; a függvény - a már meglévő kapcsolat azonosítóját fogja visszaadni. - - - A kapcsolat a PHP program végén bezárul, ha előbb nem zártuk volna le a - mysql_close függvénnyel. - - - MySQL connect példa - -<?php - $link = mysql_connect ("kraemer", "marliesle", "titok") - or die ("Nem lehet csatlakozni"); - print ("A csatlakozás sikerült"); - mysql_close ($link); -?> - - - Lásd még a - mysql_pconnect és - mysql_close függvényeket. - - - - - - - mysql_create_db - Létrehoz egy MySQL adatbázist - - - Leírás - - - int mysql_create_db - string database name - int - - link_identifier - - - - - - A mysql_create_db függvény megkísérel létrehozni egy - új adatbázist a megadott kapcsolatazonosítón keresztül. - - - MySQL 'create database' példa - -<?php - $link = mysql_pconnect ("kron", "jutta", "geheim") - or die ("Nem lehet csatlakozni") - if (mysql_create_db ("my_db")) { - print ("Az adatbázist létrehoztam\n"); - } else { - printf ("Hiba az adatbázis létrehozásakor: %s\n", mysql_error ()); - } -?> - - - - Kompatíbilitási okokból a mysql_createdb függvény is - használható. - - - Lásd még a: mysql_drop_db függvényt. - - - - - - - mysql_data_seek - Belső eredménymutató mozgatása - - - Leírás - - - int mysql_data_seek - int result_identifier - int row_number - - - - Igazzal tér vissza, ha a művelet sikerült - - - A mysql_data_seek függvény az adott azonosítójú - ereményhalmazban ugrik a megadott pozícióra. - A mysql_fetch_row függvény következő hívásakor ezt a - sorszámú sort kapod meg. - - - Ha az első sorra akarsz pozicionálni, akkor - Row_number 0 legyen! - - - - MySQL data seek példa - -<?php - $link = mysql_pconnect ("kron", "jutta", "geheim") - or die ("Nem tudok csatlakozni"); - - mysql_select_db ("samp_db") - or die ("Nem tudok belépni az adatbázisba"); - - $query = "SELECT last_name, first_name FROM friends"; - $eredmeny = mysql_query ($query) - or die ("Rossz kérés"); - - # fetch rows in reverse order - - for ($i = mysql_num_rows ($eredmeny) - 1; $i >=0; $i--) { - if (!mysql_data_seek ($eredmeny, $i)) { - printf ("Nem tudok a %d. sorra ugorni\n", $i); - continue; - } - - if(!($sor = mysql_fetch_object ($eredmeny))) - continue; - - printf ("%s %s<BR>\n", $sor->last_name, $sor->first_name); - } - - mysql_free_result ($eredmeny); -?> - - - - - - - - mysql_db_name - Get result data - - - Leírás - - - int mysql_db_name - int result - int row - mixed - - field - - - - - - A mysql_db_name függvény első paramétere egy - mysql_list_dbs által visszaadott érték. A - row paraméter az eredményhalmaz indexe. - - - - Ha hiba történt, a függvény FALSE-szal tér vissza. - Használd a - mysql_errno és a - mysql_error függvényeket a hiba eredetének - megállapítására! - - - - <function>Mysql_db_name</function> példa - -<?php -error_reporting(E_ALL); - -mysql_connect('dbhost', 'név', 'jelszó'); -$db_list = mysql_list_dbs(); - -$i = 0; -$cnt = mysql_num_rows($db_list); -while ($i < $cnt) { - echo mysql_db_name($db_list, $i) . "\n"; - $i++; -} -?> - - - - - Kompatíbilitási okokból a mysql_dbname függvény is - használható, de használata nem javasolt. - - - - - - - - mysql_db_query - MySQL kérést küld az adatbázisnak - - - Leírás - - - int mysql_db_query - string database - string query - int - - link_identifier - - - - - - Visszatérési értéke egy pozitív MySQL eredmény-azonosító, ha a kérés - sikeres volt, hamissal, ha a kérés hibás volt. - - - A mysql_db_query függvény kiválaszt egy adatbázist, - majd azon végrehajt egy kérést. Ha a kapcsolat azonosító nincs megadva, - akkor a függvény keres egyet. Ha nem talál ilyet, akkor megpróbál - létrehozni egyet oly módon, mintha meghívta volna a - mysql_connect függvényt paraméterek nélkül. - - - Lásd még a mysql_connect függvényt. - - - Kompatíbilitási okokból a mysql függvény is - használható. - - - - - - - mysql_drop_db - Töröl egy MySQL adatbázist - - - Leírás - - - int mysql_drop_db - string database_name - int - - link_identifier - - - - - - Visszatérési értéke: igaz, ha sikeres, hamis, ha nem - - - A mysql_drop_db függvény megpróbálja az egész - adatbázist kitörölni, melyet az adott kapcsolat-azonosító határoz meg. - - - Lásd még a mysql_create_db függvényt. - Kompatíbilitási okokból mysql_dropdb néven is - hívható a függvény. [és hallgat is a nevére] - - - - - - - mysql_errno - Az előző MySQL művelet hibakódját tartalmazza - - - Leírás - - - int mysql_errno - int - - link_identifier - - - - - - Az utoljára végrehajtott MySQL hiba kódjával tér vissza, vagy ha az - sikeres volt, akkor 0-t (nullát) ad vissza. - - - A MySQL hibái már nem jelennek meg figyelmeztetésként. [orig.: - Errors coming back from the mySQL database backend no longer - issue warnings.] - Ha szeretnéd megkapni a hiba kódját, használd a - mysql_errno függvényt! - Ez a függvény csak az utolsó MySQL művelet hibakódját adja vissza - [(not including mysql_error and - mysql_errno)], ha használni szeretnéd, ügyelj rá, - hogy még azelőtt hívd meg a függvényt, mielőtt egy másik MySQL függvényt - meghívsz. - - -<?php -mysql_connect("marliesle"); -echo mysql_errno().": ".mysql_error()."<BR>"; -mysql_select_db("nonexistentdb"); -echo mysql_errno().": ".mysql_error()."<BR>"; -$conn = mysql_query("SELECT * FROM nonexistenttable"); -echo mysql_errno().": ".mysql_error()."<BR>"; -?> - - - - - Lásd még a mysql_error függvényt - - - - - - - mysql_error - Az előző MySQL művelet hibaszövegét adja - - - Leírás - - - string mysql_error - int - - link_identifier - - - - - - Az utolsó MySQL művelet hibaszövegével tér vissza, vagy - '' (üres karakterlánccal) ha nem volt hiba. - - - A MySQL hibái már nem jelennek meg figyelmeztetésként. [orig.: - Errors coming back from the mySQL database backend no longer - issue warnings.] - Ha szeretnéd megkapni a hiba kódját, használd a - mysql_error függvényt! - Ez a függvény csak az utolsó MySQL művelet hibakódját adja vissza - [(not including mysql_error and - mysql_errno)], ha használni szeretnéd, ügyelj rá, - hogy még azelőtt hívd meg a függvényt, mielőtt egy másik MySQL függvényt - meghívsz. - - -<?php -mysql_connect("marliesle"); -echo mysql_errno().": ".mysql_error()."<BR>"; -mysql_select_db("nonexistentdb"); -echo mysql_errno().": ".mysql_error()."<BR>"; -$conn = mysql_query("SELECT * FROM nonexistenttable"); -echo mysql_errno().": ".mysql_error()."<BR>"; -?> - - - - - Lásd még a mysql_errno függvényt! - - - - - - - mysql_fetch_array - - Kérés egy sorát adja vissza (tetszőleges) tömb formájában. - - - - Leírás - - - array mysql_fetch_array - int result - int - - result_type - - - - - - Az eredmény következő sorával tér vissza tömb formájában, vagy hamissal, - ha már nincs több sor. - - A mysql_fetch_array függvény a - mysql_fetch_row függvény kiterjesztett változata. - Ráadásul az eredményt nem csak számokkal indexelt tömbbe írja, hanem - asszociatív tömbbe is, ahol a mező nevei a kulcsok. - - - Ha az eredmény több sorának ugyanaz a neve, akkor a később szereplő - oszlop marad meg. Ha szeretnéd az összes mezőt elérni ilyenkor is, akkor - számmal indexeld a tömböt, vagy az SQL parancsban kérj aliast az - oszlopra. - - -select t1.f1 as ize t2.f1 as bigyo from t1, t2 - - - - - Jó tudni, hogy a mysql_fetch_array függvény - használata NEM jelentősen lassabb a mysql_fetch_row - használatánál, de a kapott eredmény feldolgozása jóval kényelmesebb. - - - A mysql_fetch_array függvény elhagyható - result_type paramétere a következő lehet: - MYSQL_ASSOC, MYSQL_NUM, vagy MYSQL_BOTH. - (Ez a lehetőség a PHP 3.0.7-es változatában került a nyelvbe.) - - - További részletekért olvasd még a - mysql_fetch_row és a - mysql_fetch_assoc függvényeket! - - - <function>Mysql_fetch_array</function> - -<?php -mysql_connect ($host, $felhasznalo, $jelszo); -$eredmeny = mysql_db_query ("adatbázis","select user_id, teljesnev from table"); -while ($sor = mysql_fetch_array ($eredmeny)) { - echo "user_id: ".$sor["user_id"]."<br>\n"; - echo "user_id: ".$sor[0]."<br>\n"; - echo "fullname: ".$sor["fullname"]."<br>\n"; - echo "fullname: ".$sor[1]."<br>\n"; -} -mysql_free_result ($eredmeny); -?> - - - - - - - - mysql_fetch_assoc - - Az eredmény egy sorát asszociatív tömbként adja vissza. - - - - Leírás - - - array mysql_fetch_assoc - int result - - - - Az eredmény következő sorával, mint asszociatív tömbbel tér vissza, vagy - hamissal, ha nincs több sor. - - A mysql_fetch_assoc függvény hívásával ugyanazt - érjük el, mintha a mysql_fetch_array függvényt - hívtuk volna meg MYSQL_ASSOC második paraméterrel. Ez a függvény egy - tisztán asszociatív tömböt ad vissza. Eredetileg a - mysql_fetch_array függvény így működött. Ha a - számokkal indexelt elemekre is szükséged van, akkor használd a - mysql_fetch_array függvényt. - - - Ha az eredmény több sorának ugyanaz a neve, akkor a később szereplő - oszlop marad meg. Ha szeretnéd az összes mezőt elérni ilyenkor is, akkor - az SQL parancsban kérj aliast az oszlopra, vagy használd a - mysql_fetch_array függvényt úgy, hogy a számmal - indexelt elemeket is kéred. - - - Jó tudni, hogy a mysql_fetch_assoc függvény - használata NEM jelentősen lassabb a mysql_fetch_row - használatánál, de a kapott eredmény feldolgozása jóval kényelmesebb. - - - További részletekért lásd még a - mysql_fetch_row és a - mysql_fetch_array függvényeket. - - - <function>Mysql_fetch_assoc</function> - -<?php -mysql_connect ($host, $felhasznalo, $jelszo); -$eredmeny = mysql_db_query ("adatbázis","select * from table"); -while ($sor = mysql_fetch_assoc ($eredmeny)) { - echo $sor["user_id"]; - echo $sor["fullname"]; -} -mysql_free_result ($eredmeny); -?> - - - - - - - - mysql_fetch_field - - Eredményhalmaz egy oszlopáról ad információt objektum formájában - - - - Leírás - - - object mysql_fetch_field - int result - int - - field_offset - - - - - - Egy mezőinformációt tartalmazó objektummal tér vissza. - - - A mysql_fetch_field függvényt arra használhatod, - hogy az eredmény egy oszlopáról információt kaphass. Ha a mező sorszámát - nem adod meg, akkor a következő olyan oszlopról kapsz információt, - amelyre még nem hívtad meg a - mysql_fetch_field függvényt. - - - Az objektum tulajdonságai: - - - - name - az oszlop neve - - - - - table - a tábla neve, amelyhez az oszlop tartozik - - - - - max_length - az oszlop maximális hossza - - - - - not_null - értéke 1, ha az oszlop nem veheti fel a NULL értéket - - - - - primary_key - értéke 1, ha az oszlop elsődleges kulcs - - - - - unique_key - értéke 1, ha az oszlop egyszerű kulcs - - - - - multiple_key - értéke 1, ha az oszlop összetett kulcs része - - - - - numeric - értéke 1, ha az oszlop szám - - - - - blob - értéke 1, ha az oszlop BLOB típusú - - - - - type - az oszlop típusa - - - - - unsigned - értéke 1, ha az oszlop nem előjeles - - - - - zerofill - értéke 1, ha az oszlop nullával feltöltött - - - - - - <function>Mysql_fetch_field</function> - -<?php -mysql_connect ($host, $felhasznalo, $jelszo) - or die ("Nem lehet csatlakozni az adatbázishoz"); -$eredmeny = mysql_db_query ("adatbázis", "select * from table") - or die ("Hibás kérés"); -# oszlopinformáció lekérése -$i = 0; -while ($i < mysql_num_fields ($eredmeny)) { - echo "Információ a $i. oszlopról:<BR>\n"; - $meta = mysql_fetch_field ($eredmeny); - if (!$meta) { - echo "Nem tudok információt lekérni<BR>gt;\n"; - } - echo "<PRE> -blob: $meta->blob -max_length: $meta->max_length -multiple_key: $meta->multiple_key -name: $meta->name -not_null: $meta->not_null -numeric: $meta->numeric -primary_key: $meta->primary_key -table: $meta->table -type: $meta->type -unique_key: $meta->unique_key -unsigned: $meta->unsigned -zerofill: $meta->zerofill -</PRE>"; - $i++; -} -mysql_free_result ($eredmeny); -?> - - - - Lásd még a mysql_field_seek függvényt! - - - - - - - mysql_fetch_lengths - - Az eredmény oszlopainak hosszáról nyújt információt - - - - Leírás - - - array mysql_fetch_lengths - int result - - - - Egy tömbbel tér vissza. A tömb elemei az utolsó - mysql_fetch_row függvény által betöltött oszlopok - hosszait tartalmazza, vagy hiba esetén hamisat. - - - A mysql_fetch_lengths függvény a - mysql_fetch_row, - mysql_fetch_array vagy a - mysql_fetch_object által betöltött sor hosszait adja - vissza számmal indexelt tömb formájában. - - - Lásd még a mysql_fetch_row függvényt! - - - - - - - mysql_fetch_object - Az eredmény következő sorát objektum formájában adja - vissza - - - Leírás - - - object mysql_fetch_object - int result - int - - result_type - - - - - - Egy objektummal tér vissza, amelynek tulajdonságai a betöltött sor - oszlopait tartalmazzák. Ha nincs több sor, a függvény hamisat ad - eredményül. - - - A mysql_fetch_object függvény hasonló a - mysql_fetch_array függvényhez, egy különbséggel: nem - tömböt, hanem objektumot ad vissza a függvény. Ez azt jelenti, hogy a - mezőket csak a nevük alapján tudod elérni, mivel a számok nem - érvényes tulajdonságnevek. - - - Az elhagyható result_type parméter egy konstans, - ami MYSQL_ASSOC, MYSQL_NUM vagy MYSQL_BOTH lehet. - - - Sebesség szempontjából a mysql_fetch_array - függvénnyel azonos sebességű és majdnem olyan gyors, mint a - mysql_fetch_row függvény (a különbség - elhanyagolható) - - <function>mysql_fetch_object</function> példa - -<?php -mysql_connect ($host, $felhasznalo, $jelszo); -$eredmeny = mysql_db_query ("adatbázis", "select * from table"); -while ($sor = mysql_fetch_object ($eredmeny)) { - echo $sor->user_id; - echo $sor->fullname; -} -mysql_free_result ($eredmeny); -?> - - - - - Lásd még a mysql_fetch_array és a - mysql_fetch_row függvényt! - - - - - - - mysql_fetch_row - Az eredmény következő sorát adja vissza számmal indexelt tömb - formájában - - - Leírás - - - array mysql_fetch_row - int result - - - - Egy számmal indexelt tömbbel tér vissza, ami a betöltött sorokat - tartalmazza, vagy hamissal, ha nincs több sor. - - - A mysql_fetch_row függvény betölt egy sort a - megadott eredmény-azonosítójú eredményhalmazból. A sort (számmal - indexelt) tömb formájában adja vissza. Az oszlopok számozása 0-tól indul. - - - A mysql_fetch_row többszöri alkamazásával végig - tudjuk járni az eredményhalmazt, mivel az mindig a következő sort tölti - be, majd ha elfogytak a sorok, hamisat ad vissza. - - - Lásd még a mysql_fetch_array, - mysql_fetch_object, - mysql_data_seek, - mysql_fetch_lengths és a - mysql_result függvényeket! - - - - - - - mysql_field_flags - - Adott eredmény adott mezejének flagjeit adja vissza. - - - - Leírás - - - string mysql_field_flags - int result - int field_offset - - - - A mysql_field_flags függvény az adott mező flagjeit - adja vissza. A flagek egyszerű szavak, melyeket egyetlen szóköz választ - el, így a kapott értéket feldolgozhatod a explode - függvény segítségével. - - A MySQL a következő flageket támogatja (feltéve, hogy elég friss a - használt MySQL, amit használsz): "not_null", "primary_key", - "unique_key", "multiple_key", "blob", "unsigned", "zerofill", - "binary", "enum", "auto_increment", "timestamp". - - - Kompatíbilitási okokból a mysql_fieldflags függvény - is használható. - - - - - - - mysql_field_name - - Adott mező nevét adja vissza - - - - Leírás - - - string mysql_field_name - int result - int field_index - - - - A mysql_field_name függvény az eredményben szereplő - megadott indexű mező nevét adja vissza. A result - paraméternek érvényes eredményazonosítónak kell lennie, - a field_index paraméter pedig a mező indexe. - - - - A field_index paraméter számozása 0-tól kezdődik. - - - Például a harmadik mező indexe 2, a negyedik mezőé pedig 3. - - - - - <function>mysql_field_name</function> példa - -// A felhasznalok tábla három mezőből áll: -// user_id -// felhasznalonev -// jelszo. - -$res = mysql_db_query("felhasznalok", "select * from felhasznalok", $link); - -echo mysql_field_name($res, 0) . "\n"; -echo mysql_field_name($res, 2); - - - - - A fenti példa ay alábbi kimenetet eredményezi: - - -user_id -jelszo - - - - - Kompatíbilitási okokból a mysql_fieldname - függvény is használható. - - - - - - - mysql_field_len - - A kérdezett mező hosszát adja vissza - - - - Leírás - - - int mysql_field_len - int result - int field_offset - - - - A mysql_field_len függvény a kérdezett mező - hosszával tér vissza. - - - Kompatíbilitási okokból a mysql_fieldlen - függvény is használható. - - - - - - - mysql_field_seek - - Az eredménymutatót a kívánt pozícióba mozgatja - - - - Leírás - - - int mysql_field_seek - int result - int field_offset - - - - A megadott helyre mozgatja az eredmény-mutatót. Ha a következő - mysql_fetch_field függvényhívás nem tartalmaz mező - pozíciót, akkor a - mysql_field_seek függvény által visszaadott - mezőpozíciót fogja visszaadni. - - - Lásd még a mysql_fetch_field függvényt! - - - - - - - mysql_field_table - - Visszaadja annak a táblának a nevét, melyben a megadott mező található - - - - Leírás - - - string mysql_field_table - int result - int field_offset - - - - A függvény annak a táblának a nevével tér vissza, melyben a megadott mező - szerepel. - - - Kompatíbilitási okokból a mysql_fieldtable - függvény is használható. - - - - - - - mysql_field_type - - Az eredmény adott mezejének típusát adja vissza - - - - Leírás - - - string mysql_field_type - int result - int field_offset - - - - A mysql_field_type függvény hasonló a - mysql_field_name függvényhez. A paraméterek - megegyeznek, de a függvény a mező típusával tér vissza. A mezőtípus az - "int", "real", "string", "blob" vagy hasonló, a - MySQL dokumentációban található - típusok közül való. - - mysql mezőtípusok - -<?php - -mysql_connect ("localhost:3306"); -mysql_select_db ("wisconsin"); -$eredmeny = mysql_query ("SELECT * FROM onek"); -$mezo = mysql_num_fields ($eredmeny); -$sor = mysql_num_rows ($eredmeny); -$i = 0; -$table = mysql_field_table ($eredmeny, $i); -echo "A '$table' nevű táblának $mezo mezője és $sor sora van <BR>"; -echo "A táblának az alábbi mezői vannak<BR>"; -while ($i < $mezo) { - $tipus = mysql_field_type ($eredmeny, $i); - $nev = mysql_field_name ($eredmeny, $i); - $hossz = mysql_field_hossz ($eredmeny, $i); - $flags = mysql_field_flags ($eredmeny, $i); - echo "$tipus $nev $hossz $flags."<BR>"; - $i++; -} -mysql_close(); - -?> - - - - - Kompatíbilitási okokból a mysql_fieldtype - függvény is használható. - - - - - - - mysql_free_result - Felszabadítja az eredmény által lefoglalt memóriát - - - Leírás - - - int mysql_free_result - int result - - - - A mysql_free_result függvény az összes - result eredményazonosító által használt memóriát - felszabadítja. - - - A mysql_free_result függvényt csak akkor kell - meghívnod, ha nagyon aggódsz a használt memória mennyisége miatt. A - memória a php program végén úgyis felszabadul. - - - Kompatíbilitási okokból a mysql_freeresult - függvény is használható. - - - - - - - mysql_insert_id - - Visszaadja az előző INSERT művelet által előállított id-t adja vissza. - Get the id generated from the previous INSERT operation - - - - Leírás - - - int mysql_insert_id - int - - link_identifier - - - - - - A mysql_insert_id függvény az előző INSERT - műveletben szereplő AUTO_INCREMENT tulajdonságú mező értékét adja vissza. - Ha megadjuk link_identifier-t az adott - linkkel rendelekező, ha nem adunk meg paramétert, az utolsó megnyitott - linkhez tartozó eredményt szolgáltatja. - - - A mysql_insert_id függvény 0-val tér vissza, ha az - előző kérésben nem jött létre AUTO_INCREMENT érték. Ha szükséged van - később az értékre, hívd meg a mysql_insert_id - függvényt rögtön az értéket generáló lekérdezés után! - - - - A LAST_INSERT_ID() függvény értéke mindig az utoljára - előállított AUTO_INCREMENT értéket tartalmazza, nem törlődik az értéke - lekérdezések között. - - - - - A mysql_insert_id függvény a MySQL C API függvény - mysql_insert_id() visszatérési értékét - long-gá konvertálja. Ha az AUTO_INCREMENT meződ - mondjuk BIGINT típusú, akkor a - mysql_insert_id függvény rossz eredményt adhat - vissza. Ezért inkább a belső - LAST_INSERT_ID() MySQL függvényt használd! - - - - - - - - mysql_list_dbs - - Kilistázza a MySQL szerveren elérhető adatbázisokat - - - - Leírás - - - int mysql_list_dbs - int - - link_identifier - - - - - - A mysql_list_dbs függvény egy eredménymutatót ad - vissza, ami a mysql démontól elérhető adatbázisokat tartalmazza. - Használd a mysql_tablename függvényt, hogy az összes - táblát elérd! - - - - <function>mysql_list_dbs</function> példa - -$link = mysql_connect('localhost', 'nevem', 'titok'); -$db_list = mysql_list_dbs($link); - -while ($sor = mysql_fetch_object($db_list)) { - echo $sor->Database . "\n"; -} - - - - - A fenti példa az alábbi kimenetet eredményezi. - - -adatbázis1 -adatbázis2 -adatbázis3 -... - - - - - - A fenti program egyszerűen bővíthető a - mysql_fetch_row függvénnyel vagy más hasonló - függvénnyel. - - - - Kompatíbilitási okokból a mysql_listdbs függvény - is használható. - - - - - - - mysql_list_fields - Kilistázza a MySQL eredmény mezőit - - - Leírás - - - int mysql_list_fields - string database_name - string table_name - int - - link_identifier - - - - - - A mysql_list_fields függvény az adott tábláról - szolgáltat információt. A paraméterek az adatbázis és a tábla neve. A - függvény egy eredmény-azonosító tér vissza, amit a - mysql_field_flags, - mysql_field_len, - mysql_field_name, és a - mysql_field_type függvényekkel hámozhatsz meg. - - - Az eredmény-azonosító egy pozitív egész szám. A függvény hiba esetén - -1-gyel tér vissza. A hiba szöveges leírása a - $phperrmsg változóban található, és ha nem - @mysql() <- így hívtad meg a függvényt, akkor a - hiba kiírásra kerül [már ha nem pl. egy Javascript kód belsejében, vagy - egy keretrendszer tetején akarná kiírni szegény PHP...]. - - - - <function>mysql_list_fields</function> példa - -$link = mysql_connect('localhost', 'nevem', 'titok'); - -$mezo = mysql_list_fields("adatbázis1", "tabla1", $link); -$oszlop = mysql_num_fields($mezo); - -for ($i = 0; $i < $oszlop; $i++) { - echo mysql_field_name($mezo, $i) . "\n";; -} - - - - - A fenti példa az alábbi kimenetet eredményezi: - - -mezo1 -mezo2 -mezo3 -... - - - - - Kompatíbilitási okokból a mysql_listfields - függvény is használható. - - - - - - - mysql_list_tables - Adott adatbázisbeli táblaneveket listázza - - - Leírás - - - int mysql_list_tables - string database - int - - link_identifier - - - - - - A mysql_list_tables függvény veszi az - adatbázisnevet, és egy eredmény-mutatót ad vissza, a - mysql_db_query függvényhez hasonlóan. A - mysql_tablename függvény használható arra, hogy az - eredmény-mutatóból a tényleges táblaneveket megállapítsd. - - - Kompatíbilitási okokból a mysql_listtables - függvény is használható. - - - - - - - mysql_num_fields - Az eredményben szereplő mezők számát adja - - - Leírás - - - int mysql_num_fields - int result - - - - A mysql_num_fields függvény az eredményhalmazban - levő mezők számát adja vissza. - - - Lásd még a - mysql_db_query, - mysql_query, - mysql_fetch_field és a - mysql_num_rows függvényeket! - - Kompatíbilitási okokból a mysql_numfields - függvény is használható. - - - - - - - mysql_num_rows - Az eredményben szereplő sorok számát adja vissza. - - - Leírás - - - int mysql_num_rows - int result - - - - A mysql_num_rows függvény az eredményhalmazban - szereplő sorok számát adja vissza. A függvény csak SELECT kérésre - használható. Ha egy INSERT, UPDATE vagy DELETE kérésben érintett sorok - számát szeretnéd megtudni, használd a - DELETE, use mysql_affected_rows függvényt! - - - <function> - mysql_num_rows példa Szerző: crubel@trilizio.org - </function> - - -<?php -$conn = mysql_connect("hostcim", "juzer", "jelszo"); -mysql_select_db("adatbázis",$conn); // kell, ha több adatbázis van -$Eredmenytagokszama = mysql_query("SELECT * FROM Szamla",$conn); -$Tagokszama = mysql_num_rows($Eredmenytagokszama); -echo "$Tagokszama tag van"; -?> - - - - - Lásd még a - mysql_db_query, - mysql_query és a - mysql_fetch_row függvényeket! - - - Kompatíbilitási okokból a mysql_numrows can - also be used. - - - - - - - mysql_pconnect - - Perzisztens kapcsolatot nyit meg a MySQL szerverhez - - - - Leírás - - - int mysql_pconnect - string - - hostname - :port - :/path/to/socket - - - - string - username - - string - password - - - - - Visszatérési értéke: Egy pozitív MySQL perzisztens kapcsolatazonosító - siker esetén, vagy false, ha hiba történt. - - - A mysql_pconnect függvény létrehoz egy kapcsolatot a - MySQL szerverhez. Az elhagyott paraméterek az alábbi értékeket veszik - fel: - host:port = - 'localhost:3306', username = annak a - felhasználónak a neve, akié a szerver folyamat és végül: - password = üres jelszó. - - - A hostname karakterlánc a port számát is - tartalmazhatja; pl.: "hostname:port" vagy a socket teljes - elérési útvonalát pl.: ":/path/to/socket". Ez persze csak a - helyi gépen működik. - - - A ":port" használata a 3.0B4-es verzió óta lehetséges. - - - A ":/path/to/socket" forma használata a 3.0.10-es verzió óta - támogatott. - - - - - A mysql_pconnect függvény a - mysql_connect függvényhez hasonlóan működik, csupán - két nagyobb különbség van: - - - Először is, a kapcsolat felvételekor a függvény először megpróbál egy - (perzisztens) kapcsolatot találni, amely már nyitva van arra a hostra - ugyanazzal a név/jelszó párossal. Ha talál ilyet, akkor ennek a kapocsnak - az azonosítóját adja vissza és nem nyit újat. - - - Másodszor pedig a kapcsolat az SQL szerverhez nem kerül bezárásra, amikor - a php program véget ér, hanem megmarad későbbi felhasználásra. - (A mysql_close függvény nem fogja neked lezárni a - mysql_pconnect függvénnyel megnyitott kapcsolatokat). - - - Az ilyen típusú kapcsolatot ezért hívják 'perzisztensnek'. - - - - - - - mysql_query - MySQL kérést küld a szervernek - - - Leírás - - - int mysql_query - string query - int - link_identifier - - - - - A mysql_query függvény kérést küld a megadott - kapcsolat-azonosítójú szerver aktív adatbázisához. - Ha nem adsz meg link_identifier-t, akkor a - legutóbb megnyitott kapcsolatot használja a függvény. Ha nincs nyitva - ilyen kapcsolat, akkor a függvény megpróbál nyitni egyet, mintha a - mysql_connect függvényt hívtuk volna paraméterek - nélkül. - - - - A kérésnek nem szabad pontosvesszőre végződnie. - - - - A mysql_query függvény TRUE-val (nemnulla) vagy - FALSE-szal tér vissza, attól függően, hogy a kérés teljesítése sikeres - volt-e. A TRUE visszatérési érték azt jelenti, hogy a kérés - szintaktikailag helyes volt, és lefuttatta a szerver. Az érintett sorok - számáról azonban nem mond semmit. Előfordulhat ugyanis, hogy a kérés - sikeresen lefutott, de nem érintett egyetlen sort sem, vagy az - eredményben egyetlen sor sincs. - - - A következő kérés szintaktikailag rossz, igy a - mysql_query függvény meghiúsul és FALSE eredményt - ad: - - <function>mysql_query</function> - -<?php -$eredmeny = mysql_query ("SELECT * WHERE 1=1") - or die ("Érvénytelen lekérdezés"); -?> - - - - - Az alábbi kérés szemantikailag helytelen, ha nincs - my_col nevű oszlop a - my_tbl nevű táblában, így a - mysql_query meghiúsul és FALSE értékkel tér vissza. - - <function>mysql_query</function> - -<?php -$eredmeny = mysql_query ("SELECT my_col FROM my_tbl") - or die ("Érvénytelen kérés"); -?> - - - - - A mysql_query függvény akkor is meghiúsul és FALSE - értékkel tér vissza, ha nincs megfelelő engedélyed a kérés által - hivatkozott táblá(k)hoz. - - - Feltéve, hogy a kérés sikeres, meghívhatod a - mysql_num_rows függvényt, hogy kiderítsd, hány sort - kaptál vissza a SELECT kérésedre, vagy a - mysql_affected_rows függvényt, hogy megtudd hány - sort érintett a DELETE, NSERT, REPLACE vagy UPDATE kérésed. - - - SELECT kérés esetében a mysql_query függvény - egy új eredmény-azonosítót ad vissza, amit később a - mysql_result függvénnyel használhatsz. - Ha az eredményre már nincs szükség és memóriafóbiád van, akkor a - mysql_free_result függvénnyel a foglalt memóriát - felszabadíthatod, normál esetben megvárod a program végét és a memória - felszabadul. - - - Lásd még a mysql_affected_rows, - mysql_db_query, - mysql_free_result, - mysql_result, - mysql_select_db és a - mysql_connect függvényeket! - - - - - - - mysql_result - Eredmény egy sorának lekérdezése - - - Leírás - - - mixed mysql_result - int result - int row - mixed - - field - - - - - - A mysql_result függvény egy MySQL eredményhalmaz egy - elemét adja vissza. A mező paraméter a mező sorszáma vagy neve lehet vagy - táblanév pont mezőnév (táblanév.mezőnév). Ha az oszlop más néven lett - lekérve, mint ami az oszlop eredeti neve volt - ('select izé as bigyó from...'), akkor használd azt a bizonyos 'más - nevet'! - - - Amikor nagy eredményhalmazokkal dolgozol, akkor mérlegelned kell az olyan - függvyének használatát, amelyek az egész eredménysort betöltik. Mivel - ezek több cella tartalmát olvassák be egy függvényhívással, így ezek - SOKKAL gyorsabbak, mint a - mysql_result függvény hívogatása. Említést érdemel - még, hogy a numerikus index használata jóval gyorsabb, mint a mezőnév - vagy a táblanév.mezőnév forma használata. - - - A mysql_result függvényhívásokat más, ugyanazon - eredményhalmazzal foglalkozó függvényhívásokkal nem illik (gyk. TILOS) - együtt használni! - - - Ajánlott az alábbi, gyors [és programozóbarát] függvények használata: - mysql_fetch_row, - mysql_fetch_array és - mysql_fetch_object. - - - - - - - mysql_select_db - Kiválaszt egy MySQL adatbázist - - - Leírás - - - int mysql_select_db - string database_name - int - - link_identifier - - - - - - Visszatérési érték: true, ha sikeres; false ha hiba történt. - - - A mysql_select_db függvény az adott - kapcsolat-azonosítójú szerverkapcsolat adatbázisát módosítja. Ha nincs - kapcsolat-azonosító megadva, akkor az utoljára megnyitott kapcsolatban - választ adatbázist. Ha ilyen sincs, akkor megpróbál a MySQL szerverhez - kapcsolódni úgy, mintha a mysql_connect függvény - lett volna meghívva paraméterek nélkül. - - - Az összes további mysql_query függvény az aktív - adatbázison fog történni. - - Lásd még a - mysql_connect, - mysql_pconnect és a - mysql_query függvényeket! - - - Kompatíbilitási okokból a mysql_selectdb - függvény is használható. - - - - - - - mysql_tablename - Egy tábla nevével tér vissza - - - Leírás - - - string mysql_tablename - int result - int i - - - - A mysql_tablename függvény veszi a - mysql_list_tables függvény által visszaadott - eredmény-mutatót és egy indexet, majd megmondja az oszlophoz tartozó - tábla nevét. A - mysql_num_rows függvény használható arra, hogy - megmondja hány tábla van az eredményhalmazban. - - <function>Mysql_tablename</function> példa - -<?php -mysql_connect ("localhost:3306"); -$eredmeny = mysql_list_tables ("wisconsin"); -$i = 0; -while ($i < mysql_num_rows ($eredmeny)) { - $tb_names[$i] = mysql_tablename ($eredmeny, $i); - echo $tb_names[$i] . "<BR>"; - $i++; -} -?> - - - - - - - - -