Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.php > #6079

Re: update mysql without manually tying SET statements

From Shake <QUITAESTO@QUITAESTO.NOES>
Newsgroups comp.lang.php
Subject Re: update mysql without manually tying SET statements
Date 2012-05-16 16:23 +0200
Organization A noiseless patient Spider
Message-ID <jp0d8i$g9d$1@dont-email.me> (permalink)
References <23804394.335.1337177557295.JavaMail.geo-discussion-forums@ynlm14>

Show all headers | View raw


El 16/05/2012 16:12, apavluck@gmail.com escribió:
> I am trying to setup some generic code that will allow me to update a mysql database via form and php.  I can capture the data in the row of the database that I want to update.  I can present that in a form populated with the existing values.  What I can't figure out how to do is to avoid typing out the SET statements in the update query.
> [...]
> The reason I want to do this is because I manage many projects all with their own variables and databases and the update is the only part that I have to type in manually.

Withouth entering in details, security and best practices...

$sqlString = ' UPDATE blablalba SET ';
foreach($_POST as $key => $value)
{
   $sqlString .= " `$key` = '$value', ";
}

// You have to deal here a little with the last comma ;)

It's possible not all data in $_POST are fields of the database. You 
could manage prefixing the indexes or other ways...

foreach($_POST as $key => $value)
{
   if(!preg_match('/^my_prefix.+/',$key)) continue;
   $sqlString .= " `$key` = '$value', ";
}

That's some basic ideas, but be carefull, because there are important 
things to take in care when using this metodologies. Using POST data to 
build SQL strings "automagically" implies taking care of sqlInjection 
and thiese kind of things.

Greetings

Back to comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

update mysql without manually tying SET statements apavluck@gmail.com - 2012-05-16 07:12 -0700
  Re: update mysql without manually tying SET statements Shake <QUITAESTO@QUITAESTO.NOES> - 2012-05-16 16:23 +0200
    Re: update mysql without manually tying SET statements Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-05-16 18:06 +0200
    Re: update mysql without manually tying SET statements apavluck@gmail.com - 2012-05-17 11:06 -0700
      Re: update mysql without manually tying SET statements Shake <alex.estevezQUENO@QUENOfilnet.es> - 2012-05-17 21:06 +0200
  Re: update mysql without manually tying SET statements "M. Strobel" <sorry_no_mail_here@nowhere.dee> - 2012-05-16 22:48 +0200
    Re: update mysql without manually tying SET statements IRC <ircadhikari@gmail.com> - 2012-05-17 04:14 -0700
      Re: update mysql without manually tying SET statements Erwin Moller <erwinmollerusenet@xs4all.nl> - 2012-05-18 10:49 +0200
  Re: update mysql without manually tying SET statements bill <nobody@spamcop.net> - 2012-05-17 07:09 -0400

csiph-web