mirror of
https://github.com/php/doc-ru.git
synced 2025-07-30 12:57:40 +00:00
203 lines
7.2 KiB
XML
203 lines
7.2 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!-- EN-Revision: 78be3d554eca2e35b0e7cdbfb3aaba62bacdc336 Maintainer: aur Status: ready -->
|
||
<!-- Reviewed: no -->
|
||
<refentry xml:id="function.oci-password-change" xmlns="http://docbook.org/ns/docbook">
|
||
<refnamediv>
|
||
<refname>oci_password_change</refname>
|
||
<refpurpose>Изменяет пароль пользователя Oracle</refpurpose>
|
||
</refnamediv>
|
||
|
||
<refsect1 role="description">
|
||
&reftitle.description;
|
||
<methodsynopsis>
|
||
<type>bool</type><methodname>oci_password_change</methodname>
|
||
<methodparam><type>resource</type><parameter>connection</parameter></methodparam>
|
||
<methodparam><type>string</type><parameter>username</parameter></methodparam>
|
||
<methodparam><type>string</type><parameter>old_password</parameter></methodparam>
|
||
<methodparam><type>string</type><parameter>new_password</parameter></methodparam>
|
||
</methodsynopsis>
|
||
<methodsynopsis>
|
||
<type>resource</type><methodname>oci_password_change</methodname>
|
||
<methodparam><type>string</type><parameter>database_name</parameter></methodparam>
|
||
<methodparam><type>string</type><parameter>username</parameter></methodparam>
|
||
<methodparam><type>string</type><parameter>old_password</parameter></methodparam>
|
||
<methodparam><type>string</type><parameter>new_password</parameter></methodparam>
|
||
</methodsynopsis>
|
||
<para>
|
||
Изменяет пароль пользователя, указанного в <parameter>username</parameter>.
|
||
</para>
|
||
<para>
|
||
Функция <function>oci_password_change</function> особенно полезна для скриптов PHP
|
||
командной строки или при использовании непостоянных соединений во всем приложении PHP.
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="parameters">
|
||
&reftitle.parameters;
|
||
<para>
|
||
<variablelist>
|
||
<varlistentry>
|
||
<term><parameter>connection</parameter></term>
|
||
<listitem>
|
||
<para>
|
||
Идентификатор соединения, возвращаемый функцией
|
||
<function>oci_connect</function> или <function>oci_pconnect</function>.
|
||
</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term><parameter>username</parameter></term>
|
||
<listitem>
|
||
<para>
|
||
Имя пользователя Oracle.
|
||
</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term><parameter>old_password</parameter></term>
|
||
<listitem>
|
||
<para>
|
||
Старый пароль.
|
||
</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term><parameter>new_password</parameter></term>
|
||
<listitem>
|
||
<para>
|
||
Новый пароль.
|
||
</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term><parameter>database_name</parameter></term>
|
||
<listitem>
|
||
<para>
|
||
Имя базы данных.
|
||
</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
</variablelist>
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="returnvalues">
|
||
&reftitle.returnvalues;
|
||
<para>
|
||
Если указан параметр <parameter>database_name</parameter>, <function>oci_password_change</function> возвращает &true; в случае успешного выполнения&return.falseforfailure;.
|
||
Если указан параметр <parameter>connection</parameter>, <function>oci_password_change</function> возвращает ресурс соединения в случае успешного выполнения&return.falseforfailure;.
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="examples">
|
||
&reftitle.examples;
|
||
<para>
|
||
<example>
|
||
<title>Пример использования <function>oci_password_change</function> с изменением пароля уже подключённого пользователя</title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<?php
|
||
|
||
$dbase = 'localhost/orcl';
|
||
$user = 'cj';
|
||
$current_pw = 'welcome';
|
||
$new_pw = 'geelong';
|
||
|
||
$c = oci_pconnect($user, $current_pw, $dbase);
|
||
oci_password_change($c, $user, $current_pw, $new_pw);
|
||
echo "Новый пароль : " . $new_pw . "\n";
|
||
|
||
?>
|
||
]]>
|
||
</programlisting>
|
||
</example>
|
||
</para>
|
||
<para>
|
||
<example>
|
||
<title>Пример использования <function>oci_password_change</function> с подключением и изменением пароля одновременно</title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<?php
|
||
|
||
$dbase = 'localhost/orcl';
|
||
$user = 'cj';
|
||
$current_pw = 'welcome';
|
||
$new_pw = 'geelong';
|
||
|
||
$c = oci_pconnect($user, $current_pw, $dbase);
|
||
if (!$c) {
|
||
$m = oci_error();
|
||
if ($m['code'] == 28001) { // "ORA-28001: the password has expired"
|
||
// Подключение и сброс пароля одновременно
|
||
$c = oci_password_change($dbase, $user, $current_pw, $new_pw);
|
||
if ($c) {
|
||
echo "Новый пароль : " . $new_pw . "\n";
|
||
}
|
||
}
|
||
}
|
||
|
||
if (!$c) { // Ошибка не совпадала с 28001, или не получилось изменить пароль
|
||
$m = oci_error();
|
||
trigger_error('Не удалось подключиться к базе данных: '. $m['message'], E_USER_ERROR);
|
||
}
|
||
|
||
// Использование подключения $c
|
||
// ...
|
||
|
||
?>
|
||
]]>
|
||
</programlisting>
|
||
</example>
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="notes">
|
||
&reftitle.notes;
|
||
<note>
|
||
<para>
|
||
Изменение пароля с помощью этой функции или непосредственно в Oracle
|
||
должно выполняться аккуратно, поскольку PHP-приложение может продолжать
|
||
использовать в постоянных соединениях данные аутентификации последнего удачного подключения,
|
||
которые уже устарели. Наилучшим решением может быть перезапуск всех веб-серверов после
|
||
смены пароля.
|
||
</para>
|
||
</note>
|
||
<note>
|
||
<para>
|
||
При обновлении библиотеки клиента Oracle или базы данных от версии установки до
|
||
версии 11.2.0.3 и выше функция <function>oci_password_change</function> может
|
||
вернуть ошибку "ORA-1017: invalid username/password" (Неверные имя пользователя/пароль),
|
||
если версии и клиента и сервера обновлены в одно время.
|
||
</para>
|
||
</note>
|
||
<note>
|
||
<para>
|
||
Второй набор параметров функции <function>oci_password_change</function> доступен
|
||
начиная с версии OCI8 1.1.
|
||
</para>
|
||
</note>
|
||
|
||
</refsect1>
|
||
|
||
</refentry>
|
||
<!-- 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:"~/.phpdoc/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
|
||
-->
|