Re: Database Problems

"B. Aerts" <[email protected]>
Newsgroups gmane.comp.php.database
Message-ID <[email protected]>
On 17/06/12 21:06, Ethan Rosenberg wrote:
> Dear List -
>
> I have a database:
>
> +---------------------+
> | Tables_in_hospital2 |
> +---------------------+
> | Intake3 |
> | Visit3 |
> +---------------------+
>
> 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 | |
> +--------+-------------+------+-----+---------+-------+
>
> mysql> describe Visit3;
> +--------+--------------+------+-----+---------+----------------+
> | Field | Type | Null | Key | Default | Extra |
> +--------+--------------+------+-----+---------+----------------+
> | Indx | int(4) | NO | PRI | NULL | auto_increment |
> | Site | varchar(6) | YES | | NULL | |
> | MedRec | int(6) | YES | | NULL | |
> | Notes | text | YES | | NULL | |
> | Weight | int(4) | YES | | NULL | |
> | BMI | decimal(3,1) | YES | | NULL | |
> | Date | date | YES | | NULL | |
> +--------+--------------+------+-----+---------+----------------+
>
> mysql> mysql> select * from Intake3 where 1 AND (Site = 'AA') AND (Sex =
> 'Male') ;
> +------+--------+---------+-----------+--------------+--------+------+-----------------------------------------------------------------------+
>
> | Site | MedRec | Fname | Lname | Phone | Height | Sex | Hx |
> +------+--------+---------+-----------+--------------+--------+------+-----------------------------------------------------------------------+
>
> | AA | 10003 | Stupid | Fool | 325 563-4178 | 65 | Male | Has been
> convinced by his friends that he is obese. Normal
> BMI = 23. |
> | AA | 10000 | David | Dummy | 845 365-1456 | 66 | Male | c/o obesity.
> Various treatments w/o success |
> | AA | 10001 | Tom | Smith | 984 234-4586 | 68 | Male | BMI = 20. Thinks
> he is obese. |
> | AA | 10007 | Foolish | Fool | 456 147-321 | 60 | Male | Thinks he is
> thin. BMI = 45 |
> | AA | 10005 | Tom | Obstinant | 845 368-2244 | 66 | Male | Insists that
> he is not fat. Becomes violent. Psych involved. |
> | AA | 10015 | Dim | Wit | 321 659-3111 | 70 | Male | Very Tall |
> | AA | 10040 | Bongish | Bongish | 123 456-7890 | 50 | Male | Bong |
> +------+--------+---------+-----------+--------------+--------+------+---------------------------------------------------------------------
>
>
>
>
> The same query in a PHP program will only give me results for MedRec 10003
>
> $allowed_fields = array
> ( 'Site' =>$_POST['Site'], 'MedRec' => $_POST['MedRec'], 'Fname' =>
> $_POST['Fname'], 'Lname' => $_POST['Lname'] ,
> 'Phone' => $_POST['Phone'] , 'Sex' => $_POST['Sex'] , 'Height' =>
> $_POST['Height'] );
> if(empty($allowed_fields))
> {
> echo "ouch";
> }
>
>
> $query = "select * from Intake3 where 1 ";
>
> foreach ( $allowed_fields as $key => $val )
> {
>
> if ( (($val != '')) )
>
> {
> $query .= " AND ($key = '$val') ";
> }
>
> $result1 = mysqli_query($cxn, $query);
>
> }
>
> Ethan
>
> MySQL 5.1 PHP 5.3.3-6 Linux [Debian (sid)]
>

Hello all,

Ethan, your question was: why does this work on the command line, and 
not through PHP.

The remarks by other posters still stand - you don't show anything that 
leads us to discriminate wether the fault lies in the query, in the 
API's or in the code.

If you're not going to show it, maybe try the following 2 tips :
1) try to modify the query: "SELECT . . . WHERE 1=1 ; " : this 
formulation removes any doubt wether it is a filtering statement, or a 
result limiting statement

2) see if " SELECT . . . WHERE 2" or " SELECT . . . WHERE 3 " yields 
respecively 2 or 3 result rows. If not, the problem is NOT with the API's.

Regards,

Bert



-- 
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.