Home >> FAQs/Tutorials >> MySQL Tutorials >> Index

MySQL FAQs - PHP Connections and Query Execution

By: FYIcenter.com

Part:   1  2  3   4  5  6 

(Continued from previous part...)

How To Access MySQL Servers through Firewalls?

If your MySQL server is provided by an Internet service company, connecting to the server from your local machine will not be so easy, because there are firewalls between your local machine and your MySQL server as shown below:
            Firewalls to MySQL server

As you can see, the first firewall could be the one on your local network, if you are using a local computer in an office environment. The second firewall will be the one on your MySQL server provider's network. Usually, firewalls will not allow any network traffic with port number 3306. So there is no way you can run your PHP scripts on your local machine to connect directly to your MySQL server located on your service provider's network.

You have several choices to solve this:

  • Requesting VPN (Virtual Private Network) connection from your MySQL server provider. This could be too expensive for personal uses.
  • Requesting SSH (Secure SHell) service from your MySQL server provider. This is usually included in your Internet service package. So no extra cost.
  • Giving up running your PHP scripts on your local machine. Move them to Web server provided by your MySQL server provider. And run your PHP scripts as Web pages. There will no firewall between the Web server and the MySQL server.

How To Get Some Basic Information Back from MySQL Servers?

Once you got a MySQL server connection object successfully, you can use mysql_get_server() and mysql_get_host_info() to get some basic information from your MySQL server. The tutorial exercise below is a good example:

<?php
  $con = mysql_connect('localhost:8888', 'dev', 'iyf');
  if (!$con) {
    print("There is a problem with MySQL connection.\n");
  } else {
    print("The MySQL connection object is ready.\n");
    print(mysql_get_client_info()."\n");
    print(mysql_get_server_info($con)."\n");
    print(mysql_get_host_info($con)."\n");
    mysql_close($con); 
  }
?>

If you run this script, you will get something like this:

The MySQL connection object is ready.
4.1.7
5.0.24-community-log
localhost via TCP/IP

How To Close MySQL Connection Objects?

MySQL connection objects created with mysql_connect() calls should be closed as soon as you have finished all of your database access needs by calling mysql_close($con) function. This will reduce the consumption of connection resources on your MySQL server.

If you forget to call mysql_close(), PHP engine will automatically close your connection objects, when your PHP script reaches the end. The following PHP script shows a good example of mysql_close():

<?php
  $con = mysql_connect('localhost:8888', 'dev', 'iyf');
  if (!$con) {
    print("There is a problem with MySQL connection.\n");
  } else {
    print("The MySQL connection object is ready.\n");
    mysql_close($con); 
  }
?>

(Continued on next part...)

Part:   1  2  3   4  5  6 


Selected Developer Jobs:

More...