What am I doing wrong here. I have followed many examples but can't seem to get this working. I have 2 tables
Table => users
user_id
user_name
user_email
user_password
user_country
user_dobdate
user_company
user_code
user_status
user_type
Table => applications
apply_id
apply_from
apply_leave_type
apply_priority
apply_start_date
apply_end_date
apply_halfday
apply_contact
apply_reason
apply_status
apply_comment
apply_dated
apply_action_date
SQLI QUERY
$query = $db->select("SELECT users.user_id, app.apply_from FROM users INNER JOIN applications ON users.user_id = app.apply_from WHERE users.user_code='1'");
$rows = $db->rows();
foreach ($rows as $apply){
$apply_id = $apply['apply_id'];
$apply_from = $apply['apply_from'];
Error Message
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in xxxxxxxxxxxxxxx line 26
Your query;
SELECT users.user_id, app.apply_from
FROM users
INNER JOIN applications
ON users.user_id = app.apply_from
WHERE users.user_code='1'
...uses an alias app for the table application, but does not declare it.
INNER JOIN applications app
You have missed the alias name for table applications as app in join. Try the following:
SELECT users.user_id,app.apply_from
FROM users
INNER JOIN applications app ON users.user_id = app.apply_from
WHERE users.user_code='1'
Put abbreviation 'app' for applications table:
SELECT
users.user_id,
app.apply_from
FROM
users
INNER JOIN
applications AS app
ON
users.user_id = app.apply_from
WHERE
users.user_code='1'
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With