Jump to content

Update multiple rows in user table


notepad

Recommended Posts

Hi, I am in the process of making of login script for my site. So far, I have made a profile page, register page, and login page using PEAR. I am now working on the 'edit_account' page. But I can't seem to get the code right for the update of user data. I need to be able to update several rows, using user posted data.

 

I read the manual reference to update here: http://pear.php.net/manual/en/package.database.db-dataobject.db-dataobject.update.php

 

But I didn't really understand the example, and the example is connecting to the database differently. I have one main 'db_connect' file, and run queries via requiring that file, using the $db variable(which is my database connection). And I don't use the 'new' feature.

 

I have the 'basic' query:

 

$q =& $db->query("UPDATE users SET ".ROW NAME HERE." = '".POST VALUE."' WHERE username = '".$_SESSION['username']."'");

 

But I can't figure out where to go from here. Can someone point me in the right direction?

 

Sorry if this is a dumb question, I am still quite new to MySQL & PEAR, I have only been using it for a couple of days.

Link to comment
Share on other sites

The function call for your update query should look the same as your other queries.  The best way (in my experience) to do it is like this:

 

$update_sql = "UPDATE users SET ".ROW NAME HERE." = '".POST VALUE."' WHERE username = '".$_SESSION['username']."'";
print "About to run $update_sql<br>";
$q = &$db->query($update_sql);

 

The key here is that you get to see your query before it's sent off to the database.  That is very valuable for debugging.

 

The way you call an update is query is identical to how you call other queries.  Eg, if you use mysql_query() for your other queries, you should continue using that, instead of $db->query().

 

Then you should use the "affected rows" function for the interface you're using (either $db->query() or mysql_query()) to see if the update affected any rows.

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.