Prepared Statements - Search

"Ethan Rosenberg, PhD" <[email protected]>
Newsgroups gmane.comp.php.database
Organization Hygeia Biomedical Research, Inc.
Message-ID <[email protected]>
Dear List -

Here is another problem I am having with prepared statements.  The last 
one was  INSERT, this one is SELECT.

Here is the database:

mysql> describe Intake3;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| Site   | varchar(6)  | NO   | PRI |         |       |
| MedRec | int(6)      | NO   | PRI | NULL    |       |
| Fname  | varchar(15) | YES  |     | NULL    |       |
| Lname  | varchar(30) | YES  |     | NULL    |       |
| Phone  | varchar(30) | YES  |     | NULL    |       |
| Height | int(4)      | YES  |     | NULL    |       |
| Sex    | char(7)     | YES  |     | NULL    |       |
| Hx     | text        | YES  |     | NULL    |       |
| Bday   | date        | YES  |     | NULL    |       |
| Age    | int(3)      | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
10 rows in set (0.00 sec)

Here is my code:

// Prepare statement
     $stmt = mysqli_stmt_init($cxn);
     $sql11 = "SELECT  'Fname', 'Lname', 'Phone', Height, Hx, Bday, Age 
FROM Intake3 where 1 and (MedRec = ?) and (Site = ?) and (Sex = ?)";
// Allocates and initializes a statement object suitable for 
mysqli_stmt_prepare().
// Prepare statement, bind result variables, execute and place results 
into bound result variables
    mysqli_stmt_prepare($stmt, $sql11);
    mysqli_stmt_execute($stmt);
    mysqli_stmt_bind_result($stmt, $Site, $MedRec, $Fname, $Lname, 
$Phone, $Height, $Sex, $Hx, $Bday, $Age); //The error is in this statement.
     while (mysqli_stmt_fetch($stmt)) {
         printf("%s %s %s %s %s %s %s %s %s %s \n", $Site, $MedRec, 
$Fname, $Lname, $Phone, $Height, $Sex, $Hx, $Bday, $Age);
     }

I get no output from the printf statement.

I receive the following error:

Warning: mysqli_stmt_bind_result(): Number of bind variables doesn't match number of fields in prepared statement.

The query, with the values inserted, works on the command line

Help and advice, please.

Ethan


-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.