Reputation: 3786
I'm using 5.1.41-3ubuntu12.10 for my MySQL version.
UPDATE profiledata SET aboutyou = '$aboutyou', quotes = '$quotes'
WHERE uid = '$sess_uid'
and
UPDATE profileprivacy
SET aboutyouPrivacy = '$aboutyouPrivacy', quotesPrivacy = '$quotesPrivacy'
WHERE uid='$sess_uid'
$sess_uid is the same for both. I was wondering if I could combine both MySQL queries into one mysql_query.
I was thinking it would be something like SET profiledata.aboutyou = 'Just a developer.'
, not really sure.
Upvotes: 5
Views: 9263
Reputation: 360662
MySQL does have multi-table update support: http://dev.mysql.com/doc/refman/5.0/en/update.html.
UPDATE profiledata, profileprivacy
SET aboutYou = ..., aboutyouPrivacy = ...
WHERE (profiledata.uid = $sess_uid) OR (aboutyouPrivacy.uid = $sess_uid)
or something similar should do the trick.
Upvotes: 1
Reputation: 1631
You can use a join like this:
$query = "UPDATE profiledata t1
JOIN profileprivacy t2 ON (t1.uid = t2.uid)
SET t1.aboutyou = '$aboutyou',
t1.quotes = '$quotes',
t2.aboutyouPrivacy = '$aboutyouPrivacy',
t2.quotesPrivacy = '$quotesPrivacy'
WHERE t1.uid = '$sess_uid'";
Upvotes: 8