By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,972 Members | 1,126 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,972 IT Pros & Developers. It's quick & easy.

Assign mysql record values to gloabl variabel

P: n/a
Hi,

I've been struggle with the code below.
I've tried mysql_fetch_assoc and various other functions, but can't
seem to get it to work.
The code works as far as that point though.

Any suggestions?

Jules.

global $first_name;
global $last_name;
global $password;

function get_acct_rec($email){

$conn = db_connect(HOST, USER, PASS, DB, PORT);

$sql = "SELECT * FROM `clients` WHERE `email` = '" . $email . "';";

$c_result = mysql_query($sql, $conn) or die("Failed to execute query
at line " . __LINE__ . ": " . db_error($conn));
while ($row = mysql_fetch_assoc($c_result)) {
$first_name = $row['first_name'];
$last_name = $row['last_name'];
$password = $row['password'];
echo $row['first_name'];
}

mysql_free_result($result);

db_close($conn);

}

Jul 11 '06 #1
Share this Question
Share on Google+
4 Replies


P: n/a
Mel
On 2006-07-11 23:47:26 +1000, "Julian Moorhouse" <mi*********@gmail.comsaid:
Hi,

I've been struggle with the code below.
I've tried mysql_fetch_assoc and various other functions, but can't
seem to get it to work.
The code works as far as that point though.

Any suggestions?

Jules.

global $first_name;
global $last_name;
global $password;

function get_acct_rec($email){

$conn = db_connect(HOST, USER, PASS, DB, PORT);

$sql = "SELECT * FROM `clients` WHERE `email` = '" . $email . "';";

$c_result = mysql_query($sql, $conn) or die("Failed to execute query
at line " . __LINE__ . ": " . db_error($conn));
while ($row = mysql_fetch_assoc($c_result)) {
$first_name = $row['first_name'];
$last_name = $row['last_name'];
$password = $row['password'];
echo $row['first_name'];
}

mysql_free_result($result);

db_close($conn);

}
Have you tried dumping out the SQL statement and running the SQL
directly on the database server? If that's okay, var_dump the $conn
variable to make sure it's a valid connection object. If it is, try
var_dump'ing the $row variable from inside the loop to see what it's
being populated with. Sorry if these suggestions seem a little obvious.

Jul 11 '06 #2

P: n/a
Rik
Julian Moorhouse wrote:
Hi,

I've been struggle with the code below.
I've tried mysql_fetch_assoc and various other functions, but can't
seem to get it to work.
The code works as far as that point though.

global $first_name;
global $last_name;
global $password;
If you want to make them of use inside the function, you have to declare
themn global inside the function...
function get_acct_rec($email){

$conn = db_connect(HOST, USER, PASS, DB, PORT);

$sql = "SELECT * FROM `clients` WHERE `email` = '" . $email . "';";

$c_result = mysql_query($sql, $conn) or die("Failed to execute query
at line " . __LINE__ . ": " . db_error($conn));
What's the output if you return mysql_num_rows() here? It might be a problem
in the database (such as fieldnames, no matching records etc.).
while ($row = mysql_fetch_assoc($c_result)) {
$first_name = $row['first_name'];
$last_name = $row['last_name'];
$password = $row['password'];
echo $row['first_name'];
}
Seems OK, but won't do a thing besides echoing first_name, see the previous
remark about globals.

Grtz,
--
Rik Wasmus
Jul 11 '06 #3

P: n/a
Julian Moorhouse wrote:
Hi,

I've been struggle with the code below.
I've tried mysql_fetch_assoc and various other functions, but can't
seem to get it to work.
The code works as far as that point though.

Any suggestions?

Jules.

global $first_name;
global $last_name;
global $password;

function get_acct_rec($email){

$conn = db_connect(HOST, USER, PASS, DB, PORT);

$sql = "SELECT * FROM `clients` WHERE `email` = '" . $email . "';";

$c_result = mysql_query($sql, $conn) or die("Failed to execute query
at line " . __LINE__ . ": " . db_error($conn));
while ($row = mysql_fetch_assoc($c_result)) {
$first_name = $row['first_name'];
$last_name = $row['last_name'];
$password = $row['password'];
echo $row['first_name'];
}

mysql_free_result($result);

db_close($conn);

}
Does the query work from the mysql command prompt?
Try putting echo "$sql\n"; after your $sql = line and cut and paste that
into a mysql prompt.

Also, it should probably be mysql_free_result($c_result);

Adding print_r($row) after the while() would show if you ever enter
the loop.

-david-

Jul 11 '06 #4

P: n/a
Hi,

Thanks, it was a combinatrion of those things mentioned.

Jules.

Jul 11 '06 #5

This discussion thread is closed

Replies have been disabled for this discussion.