Solved

Problem with sqlite database

Posted on 2013-05-13
6
303 Views
Last Modified: 2013-05-13
Hello,

I am having a problem with the following code. While it executes ok and extremely fast, when the output is displayed, the browser still shows that something is loading for 2-3 seconds. I've tried it with both Firefox and Chrome and get the same results -> Immediate page execution and display of the contents but then waiting time for nothing to happen.

Any ideas?

Thanks a lot!

$file_db = new PDO('sqlite:sqlite/mydatabase.sqlite3');
echo "<table>";
$result = $file_db->query('SELECT * FROM hotels where longitude > 5 and latitude>43');
    foreach($result as $row)
    {
        echo "<tr><td>".$row['id']."</td>";
        echo "<td>".$row['name']."</td>";
        echo "<td>".$row['latitude']."</td>";
        echo "<td>".$row['longitude']."</td></tr>";
    }
    echo "</table>";
      
    //close the database connection
    unset($file_db);

Open in new window

0
Comment
Question by:infodigger
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
6 Comments
 
LVL 34

Accepted Solution

by:
Slick812 earned 500 total points
ID: 39162313
greetings  infodigger, , I have used PDO for SQLite many times, and I have not ever had that problem, for the Most Part you do not need to Close a PDP SQLite connection, since it will stop when your PHP script ends anyway, But, if you do need to close it use
$file_db = null;

do not use -
  unset($file_db);

And this may be your problem, for the delay? ?
0
 

Author Comment

by:infodigger
ID: 39162473
Hi Slick812,

I tried to remove the unset and still I am having the same problem. I even added a few <br /> to the end of the page to see if they load and they do load but it looks like the page is still loading for some reason for an extra 2-3 seconds. It's driving me crazy:)
0
 
LVL 34

Expert Comment

by:Slick812
ID: 39162581
OK, I'll try and go through some possible reasons,
You do Not show any of the HTML required for web pages like -
<!DOCTYPE html>
 <html lang="en">
 <head><title>a title</title></head>
<body>


</body>
</html>

Without these, your browser may be waiting for more to get there? But does not seem like it should matter for 2 or 3 seconds?

It may be some sort of PDO delay, but I do not see why or how, try this instead -
$result = array();
$result[] = array(1, "John", 123, 456);
$result[] = array(2, "mary", 888, 999);

echo "<table>";
    foreach($result as $row)
    {
        echo "<tr><td>".$row['id']."</td>";
        echo "<td>".$row['name']."</td>";
        echo "<td>".$row['latitude']."</td>";
        echo "<td>".$row['longitude']."</td></tr>";
    }
    echo "</table>";

Open in new window


If this does Not delay, then it's a PDO delay
if this Does Delay, then its your server or the Domain Name relay that's causing the delay

But I can not know what to do since I do not have this problem? sorry, I only have some suggestions?
0
Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.

 

Author Comment

by:infodigger
ID: 39162622
Ok now I figured out that it's actually a server thing, not anything to do with SQLite. I tried the simplest page <?php echo "Hello World";?> and the same thing happened. So I am going to close this question. If you happen to have any idea why a server can do this, please let me know!

Thanks for the valuable help!
0
 
LVL 34

Expert Comment

by:Slick812
ID: 39162680
Almost all server PHP hosts that are established and have reliable setups, do not have this problem, , If you get the initial page very quickly, and then the server delays to finish the page It is likely  some problem in the server delivery. some Hosts that are cheep or  no longer maintained properly (about to go out of business) can have issues with slow performance.  You best should get in touch with your Host's Tech or administration people (chat, telephone, support ticket) and ask them about the delay.
0
 

Author Comment

by:infodigger
ID: 39162685
Ok I just figured it out... It was cause by an upgrade of php from 5.3.10 to 5.4.6. It seems that it was very unstable so I revert back to 5.3.10 and everything is working normally!
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Load balancing is the method of dividing the total amount of work performed by one computer between two or more computers. Its aim is to get more work done in the same amount of time, ensuring that all the users get served faster.
These days socially coordinated efforts have turned into a critical requirement for enterprises.
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question