Having PHP pagination issues

I recently decided to try out a simple PHP/MySQL pagination script I found online. After replacing all the required data and creating a connect.php file with my db information, I got a bunch of errors on the page with the script: here they are, in order:

Warning: include(connect.php) [function.include]: failed to open stream: No such file or directory in /homepages/9/d383324583/htdocs/news/index.php on line 115 Warning: include() [function.include]: Failed opening 'connect.php' for inclusion (include_path='.:/usr/lib/php5') in /homepages/9/d383324583/htdocs/news/index.php on line 115 Warning: mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/tmp/mysqld.sock' (2) in /homepages/9/d383324583/htdocs/news/index.php on line 122 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /homepages/9/d383324583/htdocs/news/index.php on line 122 Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /homepages/9/d383324583/htdocs/news/index.php on line 122 Warning: mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/tmp/mysqld.sock' (2) in /homepages/9/d383324583/htdocs/news/index.php on line 135 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /homepages/9/d383324583/htdocs/news/index.php on line 135 Results Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /homepages/9/d383324583/htdocs/news/index.php on line 236 Warning: include(../includes/footer.php) [function.include]: failed to open stream: No such file or directory in /homepages/9/d383324583/htdocs/news/index.php on line 245 Warning: include() [function.include]: Failed opening '../includes/footer.php' for inclusion (include_path='.:/usr/lib/php5') in /homepages/9/d383324583/htdocs/news/index.php on line 245

What’s strange here, is that the folder “d383324583” isn’t my database name, although it’s similarly formatted.
As for the pagination code itself, it’s quite long, but mostly simple:

[php]<?php
include(‘connect.php’);
$tableName=“news_pages”;
$targetpage = “/news/index.php”;
$limit = 10;
$query = “SELECT COUNT(*) as num FROM $tableName”;
$total_pages = mysql_fetch_array(mysql_query($query));
$total_pages = $total_pages[num];
$stages = 3;
$page = mysql_escape_string($_GET[‘page’]);
if($page){
$start = ($page - 1) * $limit;
}else{
$start = 0;
}
// Get page data
$query1 = “SELECT * FROM $tableName LIMIT $start, $limit”;
$result = mysql_query($query1);
// Initial page num setup
if ($page == 0){$page = 1;}
$prev = $page - 1;
$next = $page + 1;
$lastpage = ceil($total_pages/$limit);
$LastPagem1 = $lastpage - 1;
$paginate = ‘’;
if($lastpage > 1)
{
$paginate .= “

”;
// Previous
if ($page > 1){
$paginate.= “previous”;
}else{
$paginate.= “previous”; }
// Pages
if ($lastpage < 7 + ($stages * 2)) // Not enough pages to breaking it up
{
for ($counter = 1; $counter <= $lastpage; $counter++)
{
if ($counter == $page){
$paginate.= “$counter”;
}else{
$paginate.= “$counter”;}
}
}
elseif($lastpage > 5 + ($stages * 2)) // Enough pages to hide a few?
{
// Beginning only hide later pages
if($page < 1 + ($stages * 2))
{
for ($counter = 1; $counter < 4 + ($stages * 2); $counter++)
{
if ($counter == $page){
$paginate.= “$counter”;
}else{
$paginate.= “$counter”;}
}
$paginate.= “…”;
$paginate.= “$LastPagem1”;
$paginate.= “$lastpage”;
}
// Middle hide some front and some back
elseif($lastpage - ($stages * 2) > $page && $page > ($stages * 2))
{
$paginate.= “1”;
$paginate.= “2”;
$paginate.= “…”;
for ($counter = $page - $stages; $counter <= $page + $stages; $counter++)
{
if ($counter == $page){
$paginate.= “$counter”;
}else{
$paginate.= “$counter”;}
}
$paginate.= “…”;
$paginate.= “$LastPagem1”;
$paginate.= “$lastpage”;
}
// End only hide early pages
else
{
$paginate.= “1”;
$paginate.= “2”;
$paginate.= “…”;
for ($counter = $lastpage - (2 + ($stages * 2)); $counter <= $lastpage; $counter++)
{
if ($counter == $page){
$paginate.= “$counter”;
}else{
$paginate.= “$counter”;}
}
}
}
// Next
if ($page < $counter - 1){
$paginate.= “next”;
}else{
$paginate.= “next”;
}
$paginate.= “
”;
}
echo $total_pages.’ Results’;
// pagination
echo $paginate;
?>
    <?php while($row = mysql_fetch_array($result)) { echo '
  • '.$row['country'].'
  • '; } ?>
<?php include '../includes/footer.php';?>[/php]

It is rather colossal, but once again, I gather that it’s simple, unless you are, like me, a PHP novice.
If anyone can offer any advece, it would be greatly appreciated.

the error states it can’t find connect.php. Make sure connect.php is in the same directory or modify the path in your include. check spelling…

I’ve got connect.php in the same folder; however, the folder (and subfolders) “/homepages/9/d383324583/htdocs/news/index.php” don’t exist in my root. I can’t find any mention of this hierarchy in the code, and I’ve never created anything of the sort.

htdocs is your root, your index page should be there. Either way your include file must contain the path up or down from the file that is calling it. Use ‘somedir/connect.php’ to go up a level or ‘…/connect.php’ to go down a level.

My PHPinfo.php confirms that it’s my root. But why? I didn’t create that folder, and it actually doesn’t exist in my local folder, nor on my remote server.

On your server it’s probably just ‘/’

I’m on a Mac and I use MAMP as my development environment, with gives me a htdocs folder to work in along with bin, cgi-bin, conf, db, temp and logs directories.

I just changed the directory to “…/connect.php”, and it seems to work perfectly!

Sponsor our Newsletter | Privacy Policy | Terms of Service