httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rich Schumacher" <rich.s...@gmail.com>
Subject Re: [users@httpd] Apache crashes when using WHILE loop to traverse SQL query results
Date Mon, 07 Jul 2008 22:33:50 GMT
Note: This is turning more into a PHP issue than Apache...

You must have the MySQLi extension already installed, otherwise it would
complain about mysqli_connect() being an invalid function.  Do you have
command line access?  If so, try running the script above from the command
line to see if that produces anything different.

Cheers,

Rich

On Mon, Jul 7, 2008 at 3:05 PM, Bonger O <bongero@gmail.com> wrote:

> Hi guys,
>
> Thanks for getting back to me on this with your comments, but sadly I've
> still had no luck.
>
> I have managed to narrow the problem down to *$row =
> mysqli_fetch_assoc($result);*
> For some reason this is causing the crash. Would there be any reason that
> this function cant be found perhaps? I really have no clue!!!
>
>
>
> On Mon, Jul 7, 2008 at 6:39 PM, Rich Schumacher <rich.schu@gmail.com>
> wrote:
>
>> 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@pixilla.com>
>> 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@httpd.apache.org
>>>  "   from the digest: users-digest-unsubscribe@httpd.apache.org
>>> For additional commands, e-mail: users-help@httpd.apache.org
>>>
>>>
>>
>

Mime
View raw message