when you want to update a record in your table, the code must be like:
update messages set url='$image' where id='$id'
But your ode is:
update messages set $url=$image where id='$id'
It means that a column that the name is $url should update! and because it's php varible that you defined($url = $_REQUEST['url'];), it will replace with content of variable(Te URL that your user entered:D)
In fact, your exact code is :
(if user enter $url:http://yahoo.com, $image=img.jpg,$id=Something)
update messages set http:
but you have no column in your table that its name is:http://yahoo.com
Note: Excuse me for my poor english:D