<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.mysql.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'en',
  ),
  'this' => 
  array (
    0 => 'function.mysql-ping.php',
    1 => 'mysql_ping',
    2 => 'Ping a server connection or reconnect if there is no connection',
  ),
  'up' => 
  array (
    0 => 'ref.mysql.php',
    1 => 'MySQL Functions',
  ),
  'prev' => 
  array (
    0 => 'function.mysql-pconnect.php',
    1 => 'mysql_pconnect',
  ),
  'next' => 
  array (
    0 => 'function.mysql-query.php',
    1 => 'mysql_query',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'en',
    'path' => 'reference/mysql/functions/mysql-ping.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.mysql-ping" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">mysql_ping</h1>
  <p class="verinfo">(PHP 4 &gt;= 4.3.0, PHP 5)</p><p class="refpurpose"><span class="refname">mysql_ping</span> &mdash; <span class="dc-title">Ping a server connection or reconnect if there is no connection</span></p>

 </div>

 <div id="function.mysql-ping-refsynopsisdiv">
  <div class="warning"><strong class="warning">Warning</strong>
   <p class="para">This extension was deprecated in PHP 5.5.0, and it was removed in PHP 7.0.0.
Instead, the <a href="book.mysqli.php" class="link">MySQLi</a> or <a href="ref.pdo-mysql.php" class="link">PDO_MySQL</a> extension should be used.
See also <a href="mysqlinfo.api.choosing.php" class="link">MySQL: choosing an API</a> guide.
Alternatives to this function include:</p>
   <ul class="simplelist">
    <li><span class="function"><a href="mysqli.ping.php" class="function">mysqli_ping()</a></span></li>
   </ul>
  </div>
 </div>

 <div class="refsect1 description" id="refsect1-function.mysql-ping-description">
  <h3 class="title">Description</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>mysql_ping</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span> <code class="parameter">$link_identifier</code><span class="initializer"> = NULL</span></span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>

  <p class="simpara">
   Checks whether or not the connection to
   the server is working. If it has gone down, an automatic reconnection is
   attempted. This function can be used by scripts that remain idle for a
   long while, to check whether or not the server has closed the connection
   and reconnect if necessary.
  </p>
  <blockquote class="note"><p><strong class="note">Note</strong>: 
   <span class="simpara">
    Automatic reconnection is disabled by default in versions of MySQL &gt;= 5.0.3.
   </span>
  </p></blockquote>
 </div>


 <div class="refsect1 parameters" id="refsect1-function.mysql-ping-parameters">
  <h3 class="title">Parameters</h3>
  <dl>
   <dt>
<code class="parameter">link_identifier</code></dt><dd><p class="para">The MySQL connection. If the
link identifier is not specified, the last link opened by
<span class="function"><a href="function.mysql-connect.php" class="function">mysql_connect()</a></span> is assumed. If no such link is found, it
will try to create one as if <span class="function"><a href="function.mysql-connect.php" class="function">mysql_connect()</a></span> had been called
with no arguments. If no connection is found or established, an
<strong><code><a href="errorfunc.constants.php#constant.e-warning">E_WARNING</a></code></strong> level error is generated.</p></dd>

  </dl>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.mysql-ping-returnvalues">
  <h3 class="title">Return Values</h3>
  <p class="simpara">
   Returns <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> if the connection to the server MySQL server is working,
   otherwise <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>.
  </p>
 </div>


 <div class="refsect1 examples" id="refsect1-function.mysql-ping-examples">
  <h3 class="title">Examples</h3>
  <div class="example" id="example-1">
   <p><strong>Example #1 A <span class="function"><strong>mysql_ping()</strong></span> example</strong></p>
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />set_time_limit</span><span style="color: #007700">(</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$conn </span><span style="color: #007700">= </span><span style="color: #0000BB">mysql_connect</span><span style="color: #007700">(</span><span style="color: #DD0000">'localhost'</span><span style="color: #007700">, </span><span style="color: #DD0000">'mysqluser'</span><span style="color: #007700">, </span><span style="color: #DD0000">'mypass'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$db   </span><span style="color: #007700">= </span><span style="color: #0000BB">mysql_select_db</span><span style="color: #007700">(</span><span style="color: #DD0000">'mydb'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Assuming this query will take a long time */<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">mysql_query</span><span style="color: #007700">(</span><span style="color: #0000BB">$sql</span><span style="color: #007700">);<br />if (!</span><span style="color: #0000BB">$result</span><span style="color: #007700">) {<br />    echo </span><span style="color: #DD0000">'Query #1 failed, exiting.'</span><span style="color: #007700">;<br />    exit;<br />}<br /><br /></span><span style="color: #FF8000">/* Make sure the connection is still alive, if not, try to reconnect */<br /></span><span style="color: #007700">if (!</span><span style="color: #0000BB">mysql_ping</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">)) {<br />    echo </span><span style="color: #DD0000">'Lost connection, exiting after query #1'</span><span style="color: #007700">;<br />    exit;<br />}<br /></span><span style="color: #0000BB">mysql_free_result</span><span style="color: #007700">(</span><span style="color: #0000BB">$result</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* So the connection is still alive, let's run another query */<br /></span><span style="color: #0000BB">$result2 </span><span style="color: #007700">= </span><span style="color: #0000BB">mysql_query</span><span style="color: #007700">(</span><span style="color: #0000BB">$sql2</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

  </div>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.mysql-ping-seealso">
  <h3 class="title">See Also</h3>
  <ul class="simplelist">
   <li><span class="function"><a href="function.mysql-thread-id.php" class="function" rel="rdfs-seeAlso">mysql_thread_id()</a> - Return the current thread ID</span></li>
   <li><span class="function"><a href="function.mysql-list-processes.php" class="function" rel="rdfs-seeAlso">mysql_list_processes()</a> - List MySQL processes</span></li>
  </ul>
 </div>

</div><?php manual_footer($setup); ?>