implode() worked perfectly.
thanks -
doug
----- Original Message -----
From: "Chris Shiflett" <[EMAIL PROTECTED]>
To: "Doug Parker" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>
Sent: Thursday, April 01, 2004 2:19 PM
Subject: Re: [PHP] Inserting string - need to trim comma
> --- Doug Parker <[EMAIL PROTECTED]> wrote:
> > function insert($table, $data)
> > {
> > $sql = "INSERT INTO ".$table." SET ";
> > foreach ($data as $k=>$v)
> > {
> > $sql.= $k." = '".$v."', ";
> > }
> > $sql.=";";
> > $result = mysql_query($sql);
> > }
> >
> > The only problem with the statement is the appended comma to each
> > iteration - the statement generates a mysql error with the extra comma
> > at the end of the statement.
>
> You can usually avoid this type of problem in the first place with
> implode(). Something like this (untested):
>
> sql = "insert into $table set ";
> $pairs = array();
> foreach ($data as $key => $value)
> {
> $pairs[] = "$key = '$value'";
> }
> $sql .= implode(',' $pairs);
>
> --- Matt Matijevich <[EMAIL PROTECTED]> wrote:
> > http://www.php.net/rtrim
>
> rtrim() trims whitespace, not commas.
>
> Hope that helps.
>
> Chris
>
> =====
> Chris Shiflett - http://shiflett.org/
>
> PHP Security - O'Reilly
> Coming Fall 2004
> HTTP Developer's Handbook - Sams
> http://httphandbook.org/
> PHP Community Site
> http://phpcommunity.org/
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php