0

Hi! I am getting message #1052 - Column 'userlevel' in where clause is ambiguous while running following query:

<?PHP
$query=mysql_query("SELECT mssgs.start_date, mssgs.task, mssgs.status, mssgs.timestamp, mssgs.due_on, mssgs.id, users.fname FROM mssgs
INNER JOIN users ON mssgs.uid=users.uid AND mssgs.userlevel=users.userlevel WHERE status=0 AND userlevel=1 OR userlevel=3");
if(mysql_num_rows($query) > 0)
{

while($row=mysql_fetch_array($query))
{
if($row!=0)
{
$id=$row['id'];
$userlevel=$row['userlevel'];
if($userlevel==1)
{
$userlevel="Manager";
}
elseif($userlevel==2)
{
$userlevel="Administrator";
}
elseif($userlevel==3)
{
$userlevel="Programmer";
}
elseif($userlevel==12)
{
$userlevel="Business Dev. Officer";
}
elseif($userlevel==31)
{
$userlevel="Marketing Executive";
}
echo "<tr align='center'>
<td class='style3'>"; echo $row['fname']; echo "</td>
<td class='style3'>"; echo $userlevel; echo "</td>
<td class='style3'>"; echo $row['task']; echo "</td>
<td class='style3'>"; echo $row['start_date']; echo "</td>
<td class='style3'>"; echo $row['due_on']; echo "</td>
</tr>";
}
}
echo "</table>";
}
?>
2
Contributors
3
Replies
4
Views
6 Years
Discussion Span
Last Post by pritaeas
0

Thanks a lot for your valuable reply.
I think I need to oil my skills for dealing with joins!!
The problem is resolved for me now but the new problem is, if I run the following query:

"SELECT task.task_id, task.task_to, task.task_from, task.timestamp, task.due_on, task.status, task.task, user.fname FROM task 
INNER JOIN user ON task.userlevel=user.userlevel WHERE task.status=1"

I dont get output even when there is data in the database which has status 1.
Simply no data found message is displayed.

Edited by anita_86: n/a

0

It is possible. Are you sure the task is connected to a user ? You may want to try and get results from phpMyAdmin first, just to test your query.

This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.