|
![Picture of C Pollock Picture of C Pollock](/graphics/unknown.gif) C Pollock - 2016-12-13 11:06:10
I must be doing something wrong. I have in put the link <?php
include_once('includes/mysqli/mysql2i.class.php'); ?> at the head of my index.php file, but it changes nothing. Sorry if this is a dumb post
![Picture of Dave Smith Picture of Dave Smith](/picture/user/279411.jpg) Dave Smith - 2016-12-13 14:32:07 - In reply to message 1 from C Pollock
Try changing include_once to require_once to see if the class is actually being loaded.
Then at the bottom of the mysql2i.class.php file locate and change include('mysql2i.func.php'); to require_once('mysql2i.func.php');
If the script throws an error that it can't find the required file, it should give you an idea where you are having problems with the path.
If it is just a blank page, then you are going to need to check your error logs.
If it actually made it past the require, then we will need to debug a little bit further.
Dave
![Picture of C Pollock Picture of C Pollock](/graphics/unknown.gif) C Pollock - 2016-12-14 03:21:43 - In reply to message 2 from Dave Smith
Hi Dave,
Thanks for the prompt reply. Changed the include_once to require_once at the start of my index.php file, but made no difference. Page still loads with all the usual error messages regarding deprecated extensions. I introduced a deliberate path error and got a blank page with the expected 'unable to find file' error, so it seems the mysql2i.class.php is loading. At this stage I am simply trying to get my database to load properly - I have a 10-year old site built with the old InterAKT MXShop software, and my hosting company has just switched to PHP 5.6, so the code no longer works. This is my primary problem code:
<?php
$host = 'localhost';
$database = '*****';
$username = 'root';
$passwd = '********';
$dbarc= mysql_pconnect($host, $username, $passwd) or trigger_error(mysql_error(),E_USER_ERROR);
?>
It is in a root folder /Connections and is called as a require_once by the index.php file. Any thoughts or suggestions, other than starting over from scratch?
Regards,
Chris
![Picture of Dave Smith Picture of Dave Smith](/picture/user/279411.jpg) Dave Smith - 2016-12-14 08:52:08 - In reply to message 3 from C Pollock
If it is PHP 5.6, this class will have no effect, it will just sit there waiting for the MySQL extension to go away in PHP 7.
You are getting the deprecated error message because your error_reporting is set wrong for production. If you have a common initialization script, the error_reporting should be set there in the first line. If you don't, make this your first line in your index.php file.
error_reporting(0);
Dave
![Picture of C Pollock Picture of C Pollock](/graphics/unknown.gif) C Pollock - 2016-12-15 00:57:08 - In reply to message 4 from Dave Smith
Thanks for your help, Dave. The site is remotely hosted, and my code no longer runs on PHP 5.6. I think the time has come to abandon it & start over.
Regards,
Chris
![Picture of Patrick Schulz Picture of Patrick Schulz](/graphics/unknown.gif) Patrick Schulz - 2016-12-21 13:53:34 - In reply to message 1 from C Pollock
You must not include / require the shim at the end of your script / index.php but at the beginning, before you call any of the mysql_* functions.
If you include it just at the very last moment, your code will always fail with an "Call to undefined function ..." error, because they have not yet been defined before.
Instead of include you can also use require, just to see if your include_path settings are correct.
|