com doc/ja: Improve mysqli_real_escape_string docs: reference/mysqli/functions/mysqli-escape-string.xml refe rence/mysqli/mysqli/real-escape-string.xml

[email protected] (Yoshinari Takaoka) Wed, 24 Mar 2021 18:44:16 +0000
Newsgroups php.doc.ja
Message-ID <[email protected]>
Commit:    3fd5a3d04ff4d9e7d9277f4d1c8210f8c135d22a=0AAuthor:    Yoshinari =
Takaoka <[email protected]>         Thu, 25 Mar 2021 03:44:16 +0900=0AParen=
ts:   5573c54935314c5fe7713e3e0b4c868ff574c92a=0ABranches:  master=0A=0ALin=
k:       http://git.php.net/?p=3Ddoc/ja.git;a=3Dcommitdiff;h=3D3fd5a3d04ff4=
d9e7d9277f4d1c8210f8c135d22a=0A=0ALog:=0AImprove mysqli_real_escape_string =
docs=0A=0A* Tidy up the alias situation=0A  It should look the same as http=
s://www.php.net/manual/en/function.mysqli-set-opt.php=0A=0A* Add "produce" =
word=0A=0ACopied from MySQL manual=0A=0A* Removed old note=0A=0A  This was =
changed some time back around PHP 7.3. In PHP 8 all of these warnings have =
been converted to Errors and the function doesn't return NULL or FALSE anym=
ore.=0A=0A* Revert Doc Bug #55757=0A=0A  I'm sorry, but this note doesn't b=
elong here. It is absolutely useless to point it out in this particular pla=
ce. People migrating from mysql_* API have to do a lot more work than ensur=
ing their escaping function works. This might have been added as a comment,=
 but it should not be part of the official doc page.=0A=0A* Provide more re=
asonable example=0A=0A* Remove mysqli_character_set_name from See also=0A=
=0ACloses GH-498.=0A=0ABugs:=0Ahttps://bugs.php.net/55757=0A=0AChanged path=
s:=0A  M  reference/mysqli/functions/mysqli-escape-string.xml=0A  M  refere=
nce/mysqli/mysqli/real-escape-string.xml=0A=0A=0ADiff:=0Adiff --git a/refer=
ence/mysqli/functions/mysqli-escape-string.xml b/reference/mysqli/functions=
/mysqli-escape-string.xml=0Aindex 37b193e865..bebd4f0004 100644=0A--- a/ref=
erence/mysqli/functions/mysqli-escape-string.xml=0A+++ b/reference/mysqli/f=
unctions/mysqli-escape-string.xml=0A@@ -1,8 +1,9 @@=0A <?xml version=3D"1.0=
" encoding=3D"utf-8"?>=0A <!-- $Revision$ -->=0A-<!-- EN-Revision: 5f357e88=
1ef31ed3ad618ee6302f083b1d633a5a Maintainer: takagi Status: ready -->=0A+<!=
-- EN-Revision: df1072f8d2a3157534cb61d3734864c1f4852808 Maintainer: takagi=
 Status: ready -->=0A <refentry xml:id=3D"function.mysqli-escape-string" xm=
lns=3D"http://docbook.org/ns/docbook">=0A  <refnamediv>=0A+  <refname>mysql=
i::escape_string</refname>=0A   <refname>mysqli_escape_string</refname>=0A =
  <refpurpose><function>mysqli_real_escape_string</function> &Alias;</refpu=
rpose>=0A  </refnamediv>=0Adiff --git a/reference/mysqli/mysqli/real-escape=
-string.xml b/reference/mysqli/mysqli/real-escape-string.xml=0Aindex 28d055=
6f7e..025edb9ed6 100644=0A--- a/reference/mysqli/mysqli/real-escape-string.=
xml=0A+++ b/reference/mysqli/mysqli/real-escape-string.xml=0A@@ -1,11 +1,10=
 @@=0A <?xml version=3D"1.0" encoding=3D"utf-8"?>=0A <!-- $Revision$ -->=0A=
-<!-- EN-Revision: 7e5d0d1bb69180c9de1992edf9613215c975fa57 Maintainer: tak=
agi Status: ready -->=0A+<!-- EN-Revision: df1072f8d2a3157534cb61d3734864c1=
f4852808 Maintainer: takagi Status: ready -->=0A <!-- Credits: mumumu -->=
=0A <refentry xml:id=3D"mysqli.real-escape-string" xmlns=3D"http://docbook.=
org/ns/docbook">=0A  <refnamediv>=0A   <refname>mysqli::real_escape_string<=
/refname>=0A-  <refname>mysqli::escape_string</refname>=0A   <refname>mysql=
i_real_escape_string</refname>=0A   <refpurpose>=E6=8E=A5=E7=B6=9A=E3=81=
=AE=E7=8F=BE=E5=9C=A8=E3=81=AE=E6=96=87=E5=AD=97=E3=82=BB=E3=83=83=E3=83=
=88=E3=82=92=E8=80=83=E6=85=AE=E3=81=97=E3=81=A6=E3=80=81SQL =E6=96=87=
=E3=81=A7=E4=BD=BF=E7=94=A8=E3=81=99=E3=82=8B=E6=96=87=E5=AD=97=E5=88=97=
=E3=81=AE=E7=89=B9=E6=AE=8A=E6=96=87=E5=AD=97=E3=82=92=E3=82=A8=E3=82=B9=
=E3=82=B1=E3=83=BC=E3=83=97=E3=81=99=E3=82=8B</refpurpose>=0A  </refnamediv=
>=0A@@ -14,10 +13,6 @@=0A   &reftitle.description;=0A   <para>&style.oop;</=
para>=0A   <methodsynopsis role=3D"oop">=0A-   <modifier>public</modifier> =
<type>string</type><methodname>mysqli::escape_string</methodname>=0A-   <me=
thodparam><type>string</type><parameter>string</parameter></methodparam>=0A=
-  </methodsynopsis>=0A-  <methodsynopsis role=3D"oop">=0A    <modifier>pub=
lic</modifier> <type>string</type><methodname>mysqli::real_escape_string</m=
ethodname>=0A    <methodparam><type>string</type><parameter>string</paramet=
er></methodparam>=0A   </methodsynopsis>=0A@@ -74,14 +69,6 @@=0A   </para>=
=0A  </refsect1>=0A =0A- <refsect1 role=3D"errors">=0A-  &reftitle.errors;=
=0A-  <para>=0A-   =E6=9C=89=E5=8A=B9=E3=81=AA MySQLi =E6=8E=A5=E7=B6=9A=
=E3=82=92=E6=B8=A1=E3=81=95=E3=81=9A=E3=81=AB=E3=81=93=E3=81=AE=E9=96=A2=
=E6=95=B0=E3=82=92=E5=AE=9F=E8=A1=8C=E3=81=99=E3=82=8B=E3=81=A8 &null; =
=E3=81=8C=E8=BF=94=E3=81=95=E3=82=8C=E3=80=81=0A-   <constant>E_WARNING</co=
nstant> =E3=83=AC=E3=83=99=E3=83=AB=E3=81=AE=E3=82=A8=E3=83=A9=E3=83=BC=
=E3=81=8C=E7=99=BA=E7=94=9F=E3=81=97=E3=81=BE=E3=81=99=E3=80=82=0A-  </para=
>=0A- </refsect1>=0A-=0A  <refsect1 role=3D"examples">=0A   &reftitle.examp=
les;=0A   <example>=0A@@ -90,97 +77,60 @@=0A    <programlisting role=3D"php=
">=0A <![CDATA[=0A <?php=0A-$mysqli =3D new mysqli("localhost", "my_user", =
"my_password", "world");=0A-=0A-/* =E6=8E=A5=E7=B6=9A=E7=8A=B6=E6=B3=81=
=E3=82=92=E3=83=81=E3=82=A7=E3=83=83=E3=82=AF=E3=81=97=E3=81=BE=E3=81=99 */=
=0A-if (mysqli_connect_errno()) {=0A-    printf("Connect failed: %s\n", mys=
qli_connect_error());=0A-    exit();=0A-}=0A-=0A-$mysqli->query("CREATE TEM=
PORARY TABLE myCity LIKE City");=0A =0A-$city =3D "'s Hertogenbosch";=0A-=
=0A-/* =E3=81=93=E3=81=AE=E3=82=AF=E3=82=A8=E3=83=AA=E3=81=AF=E5=A4=B1=
=E6=95=97=E3=81=97=E3=81=BE=E3=81=99=E3=80=82=E3=81=AA=E3=81=9C=E3=81=AA=
=E3=82=89 $city =E3=82=92=E3=82=A8=E3=82=B9=E3=82=B1=E3=83=BC=E3=83=97=
=E3=81=97=E3=81=A6=E3=81=84=E3=81=AA=E3=81=84=E3=81=8B=E3=82=89=E3=81=A7=
=E3=81=99 */=0A-if (!$mysqli->query("INSERT into myCity (Name) VALUES ('$ci=
ty')")) {=0A-    printf("Error: %s\n", $mysqli->sqlstate);=0A-}=0A+mysqli_r=
eport(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);=0A+$mysqli =3D new mysql=
i("localhost", "my_user", "my_password", "world");=0A =0A-$city =3D $mysqli=
->real_escape_string($city);=0A+$city =3D "'s-Hertogenbosch";=0A =0A-/* $ci=
ty =E3=82=92=E3=82=A8=E3=82=B9=E3=82=B1=E3=83=BC=E3=83=97=E3=81=97=E3=81=
=9F=E3=81=AE=E3=81=A7=E3=80=81=E3=81=93=E3=81=AE=E3=82=AF=E3=82=A8=E3=83=
=AA=E3=81=AF=E6=AD=A3=E3=81=97=E3=81=8F=E5=8B=95=E4=BD=9C=E3=81=97=E3=81=
=BE=E3=81=99 */=0A-if ($mysqli->query("INSERT into myCity (Name) VALUES ('$=
city')")) {=0A-    printf("%d Row inserted.\n", $mysqli->affected_rows);=0A=
-}=0A+/* $city =E3=81=AF=E3=82=A8=E3=82=B9=E3=82=B1=E3=83=BC=E3=83=97=
=E3=81=95=E3=82=8C=E3=80=81=E3=82=AF=E3=82=A8=E3=83=AA=E3=81=AF=E5=8B=95=
=E4=BD=9C=E3=81=97=E3=81=BE=E3=81=99=E3=80=82*/=0A+$query =3D sprintf("SELE=
CT CountryCode FROM City WHERE name=3D'%s'",=0A+=09$mysqli->real_escape_str=
ing($city));=0A+$result =3D $mysqli->query($query);=0A+printf("Select retur=
ned %d rows.\n", $result->num_rows);=0A =0A-$mysqli->close();=0A-?>=0A+/* =
=E3=81=93=E3=81=AE=E3=82=AF=E3=82=A8=E3=83=AA=E3=81=AF=E5=A4=B1=E6=95=97=
=E3=81=97=E3=81=BE=E3=81=99=E3=80=82=E3=81=AA=E3=81=9C=E3=81=AA=E3=82=89=
=E3=80=81$city =E3=82=92=E3=82=A8=E3=82=B9=E3=82=B1=E3=83=BC=E3=83=97=
=E3=81=97=E3=81=A6=E3=81=84=E3=81=AA=E3=81=84=E3=81=8B=E3=82=89=E3=81=A7=
=E3=81=99 */=0A+$query =3D sprintf("SELECT CountryCode FROM City WHERE name=
=3D'%s'", $city);=0A+$result =3D $mysqli->query($query);=0A ]]>=0A    </pro=
gramlisting>=0A    <para>&style.procedural;</para>=0A    <programlisting ro=
le=3D"php">=0A <![CDATA[=0A <?php=0A-$link =3D mysqli_connect("localhost", =
"my_user", "my_password", "world");=0A-=0A-/* =E6=8E=A5=E7=B6=9A=E7=8A=
=B6=E6=B3=81=E3=82=92=E3=83=81=E3=82=A7=E3=83=83=E3=82=AF=E3=81=97=E3=81=
=BE=E3=81=99 */=0A-if (mysqli_connect_errno()) {=0A-    printf("Connect fai=
led: %s\n", mysqli_connect_error());=0A-    exit();=0A-}=0A-=0A-mysqli_quer=
y($link, "CREATE TEMPORARY TABLE myCity LIKE City");=0A-=0A-$city =3D "'s H=
ertogenbosch";=0A =0A-/* =E3=81=93=E3=81=AE=E3=82=AF=E3=82=A8=E3=83=AA=
=E3=81=AF=E5=A4=B1=E6=95=97=E3=81=97=E3=81=BE=E3=81=99=E3=80=82=E3=81=AA=
=E3=81=9C=E3=81=AA=E3=82=89 $city =E3=82=92=E3=82=A8=E3=82=B9=E3=82=B1=
=E3=83=BC=E3=83=97=E3=81=97=E3=81=A6=E3=81=84=E3=81=AA=E3=81=84=E3=81=8B=
=E3=82=89=E3=81=A7=E3=81=99 */=0A-if (!mysqli_query($link, "INSERT into myC=
ity (Name) VALUES ('$city')")) {=0A-    printf("Error: %s\n", mysqli_sqlsta=
te($link));=0A-}=0A+mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRIC=
T);=0A+$mysqli =3D mysqli_connect("localhost", "my_user", "my_password", "w=
orld");=0A =0A-$city =3D mysqli_real_escape_string($link, $city);=0A+$city =
=3D "'s-Hertogenbosch";=0A =0A-/* $city =E3=82=92=E3=82=A8=E3=82=B9=
=E3=82=B1=E3=83=BC=E3=83=97=E3=81=97=E3=81=9F=E3=81=AE=E3=81=A7=E3=80=81=
=E3=81=93=E3=81=AE=E3=82=AF=E3=82=A8=E3=83=AA=E3=81=AF=E6=AD=A3=E3=81=97=
=E3=81=8F=E5=8B=95=E4=BD=9C=E3=81=97=E3=81=BE=E3=81=99 */=0A-if (mysqli_que=
ry($link, "INSERT into myCity (Name) VALUES ('$city')")) {=0A-    printf("%=
d Row inserted.\n", mysqli_affected_rows($link));=0A-}=0A+/* $city =
=E3=81=AF=E3=82=A8=E3=82=B9=E3=82=B1=E3=83=BC=E3=83=97=E3=81=95=E3=82=8C=
=E3=80=81=E3=82=AF=E3=82=A8=E3=83=AA=E3=81=AF=E5=8B=95=E4=BD=9C=E3=81=97=
=E3=81=BE=E3=81=99=E3=80=82*/=0A+$query =3D sprintf("SELECT CountryCode FRO=
M City WHERE name=3D'%s'",=0A+=09mysqli_real_escape_string($mysqli, $city))=
;=0A+$result =3D mysqli_query($mysqli, $query);=0A+printf("Select returned =
%d rows.\n", mysqli_num_rows($result));=0A =0A-mysqli_close($link);=0A-?>=
=0A+/* =E3=81=93=E3=81=AE=E3=82=AF=E3=82=A8=E3=83=AA=E3=81=AF=E5=A4=B1=
=E6=95=97=E3=81=97=E3=81=BE=E3=81=99=E3=80=82=E3=81=AA=E3=81=9C=E3=81=AA=
=E3=82=89=E3=80=81$city =E3=82=92=E3=82=A8=E3=82=B9=E3=82=B1=E3=83=BC=
=E3=83=97=E3=81=97=E3=81=A6=E3=81=84=E3=81=AA=E3=81=84=E3=81=8B=E3=82=89=
=E3=81=A7=E3=81=99 */=0A+$query =3D sprintf("SELECT CountryCode FROM City W=
HERE name=3D'%s'", $city);=0A+$result =3D mysqli_query($mysqli, $query);=0A=
 ]]>=0A    </programlisting>=0A-   &examples.outputs;=0A+   &examples.outpu=
ts.similar;=0A    <screen>=0A <![CDATA[=0A-Error: 42000=0A-1 Row inserted.=
=0A+Select returned 1 rows.=0A+=0A+Fatal error: Uncaught mysqli_sql_excepti=
on: You have an error in your SQL syntax; check the manual that corresponds=
 to your MySQL server version for the right syntax to use near 's-Hertogenb=
osch'' at line 1 in...=0A ]]>=0A    </screen>=0A   </example>=0A  </refsect=
1>=0A =0A- <refsect1 role=3D"notes">=0A-  &reftitle.notes;=0A-  <note>=0A- =
  <para>=0A-    =E3=81=93=E3=82=8C=E3=81=BE=E3=81=A7=E3=81=AB <function>mys=
ql_real_escape_string</function> =E3=82=92=E3=82=88=E3=81=8F=E4=BD=BF=
=E3=81=A3=E3=81=A6=E3=81=84=E3=81=9F=E4=BA=BA=E3=81=AF=E3=80=81=0A-    <fun=
ction>mysqli_real_escape_string</function> =E3=81=AE=E5=BC=95=E6=95=B0=
=E3=81=8C=0A-    <function>mysql_real_escape_string</function> =E3=81=A8=
=E3=81=AF=E9=81=95=E3=81=86=E3=81=93=E3=81=A8=E3=81=AB=E6=B3=A8=E6=84=8F=
=E3=81=97=E3=81=BE=E3=81=97=E3=82=87=E3=81=86=E3=80=82=0A-    <function>mys=
qli_real_escape_string</function> =E3=81=AE=E6=9C=80=E5=88=9D=E3=81=AE=
=E5=BC=95=E6=95=B0=E3=81=AF=0A-    <parameter>mysql</parameter> =E3=81=
=A7=E3=81=82=E3=82=8A=E3=80=81=0A-    <function>mysql_real_escape_string</f=
unction>=0A-    =E3=81=AE=E3=82=88=E3=81=86=E3=81=AB=E3=82=A8=E3=82=B9=
=E3=82=B1=E3=83=BC=E3=83=97=E3=81=97=E3=81=9F=E3=81=84=E6=96=87=E5=AD=97=
=E5=88=97=E3=82=92=E6=9C=80=E5=88=9D=E3=81=AB=E6=9B=B8=E3=81=8F=E3=81=AE=
=E3=81=A7=E3=81=AF=E3=81=AA=E3=81=8F=E3=81=AA=E3=82=8A=E3=81=BE=E3=81=97=
=E3=81=9F=E3=80=82=0A-   </para>=0A-  </note>=0A- </refsect1>=0A-=0A  <refs=
ect1 role=3D"seealso">=0A   &reftitle.seealso;=0A   <para>=0A    <simplelis=
t>=0A     <member><function>mysqli_set_charset</function></member>=0A-    <=
member><function>mysqli_character_set_name</function></member>=0A    </simp=
lelist>=0A   </para>=0A  </refsect1>=0A