Hello David, Jim,
Thanks for your response.
Yes, I do have session_start() at the top of Report.php.
The reason for having the query on a different page than the result
is that the result may be sent to various output types / scripts.
I will change my code as follows:
Engine.php
-------------
$result = mysqli_query($connect, $myquery);
if (!$result) error ...
if (mysqli_num_rows($result) == 0) error ...
// fill $_SESSION['results'] with query result
switch ($output)
{
case "HTML": header("Location: Report.php"); break;
case "CSV": ...
case "XML": ...
case "PDF": ...
}
Thanks again for your advice.
Regards, Cor
----- Original Message -----
From: David Giragosian
To: C.R.Vegelin ; php-general
Sent: Thursday, November 01, 2007 5:23 PM
Subject: Re: [PHP] Transfer query result to another script
On 11/1/07, C.R.Vegelin <[EMAIL PROTECTED]> wrote:
Hi All,
Q: Is it possible to transfer a query result to another script ?
For example with (fragments of) the following 2 scripts:
Engine.php
----------------
$result = mysqli_query($connect, $myquery);
if (!$result) error ...
if (mysqli_num_rows($result) == 0) error ...
$_SESSION['result'] = $result;
header("Location: Report.php");
Report.php
----------------
$result = $_SESSION['result'];
while ($row = mysqli_fetch_array($result)) ...
This last line gives "Couldn't fetch mysqli_result".
Is this because the result set is local to Engine.php ?
TIA, Cor
Cor,
Do you have session_start() at the top of Report.php?
The manual shows an example of passing a php created class object using a
session variable, with the caveat of needing to include the class definition on
each page.
It may be different for a mysql result object though.
Why do you need the query on a different page than the result?
David