Re: Apache crashes when using WHILE loop to traverse SQL query results

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Bonger,

Are you using Apache with the Worker MPM?  If so, that could be your problem.  It is fairly well documented and highly discussed that the Worker MPM on *nix is not a good combination, as explained here: http://us2.php.net/manual/en/faq.installation.php#faq.installation.apache2.  The problem is not the PHP core itself, but the third-party libraries that may not be thread-safe.  According to the link above, this is of much less concern to those using Windows.  But perhaps it's worth a try to switch to the Prefork MPM and see if the symtpoms disappear.

Cheers,

Rich

On Sun, Jul 6, 2008 at 9:31 AM, Bradley Giesbrecht <brad@xxxxxxxxxxx> wrote:
With php when you include vars in double quotes don't you want to put curly braces around them like so?


$query = "SELECT * FROM Pet WHERE petType='{$pettype}'";

That's how I do it but I've been doing it so long I don't remember why.

Anyway, I would guess this is a php issue and not an apache problem.

Turn up your php error reporting. Off the top of my head something like this at the top of your script.

error_reporting(E_ALL);

php.net is your friend:

http://php.net/while

http://php.net/error_reporting


//brad



On Jul 5, 2008, at 10:55 AM, Bonger O wrote:

Hi,

I have set up an environment on my Vista laptop comprising of Apache 2.2, MySQL Server 5.1 and Php 5.2.5.

I'm using a simple php program that I found in a PHP/SQL book. The PHP program queries a MySQL table and uses a WHILE loop to traverse the results array of the query and display on screen. However, there seems to be a problem with my environment and using a  WHILE loop as every time I run the program I get the error "Apache HTTP server stopped working and was closed".

I have no problems using a FOR loop but every time I use a WHILE loop Apache seems to crash. Please see below for the code I have used.

I would be extremely for any suggestions of why this is happening and any solutions offered.

Thanks.

<?php
/* Program: petDisplay.php
 * Desc:    Displays all pets in selected category.
 */
?>
<html>
<head><title>Pet Catalog</title></head>
<body>
<?php

 $user="root";
 $host="localhost";
 $password="PASSWORD";
 $database = "am";
 $cxn = mysqli_connect($host,$user,$password,$database)
        or die ("couldn't connect to server");
 $pettype = "horse";  //horse was typed in a form by user
 $query = "SELECT * FROM Pet WHERE petType='$pettype'";
 $result = mysqli_query($cxn,$query)
           or die ("Couldn't execute query.");

 /*Display results in a table */
 $pettype = ucfirst($pettype)."s";

 echo "<h1>$pettype</h1>";
 echo "<table cellspacing='15'>";
 echo "<tr><td colspan='3'><hr /></td></tr>";
 while($row = mysqli_fetch_assoc($result))
 {
    extract($row);

    $f_price = number_format($price,2);
    echo "<tr>\n
           <td>$petName</td>\n
           <td>$petDescription</td>\n
           <td style='text-align: right'>\$$f_price</td>\n
          </tr>\n";
    echo "<tr><td colspan='3'><hr /></td></tr>\n";
 }
 echo "</table>\n";
?>
</body></html>





---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx
 "   from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx
For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx



[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux