From: "Mark Ackroyd" <[EMAIL PROTECTED]> > I always found this way of inserting data into a database messy. Here is > a handy function to do array inserts and it builds the sql for you. > > function arrayINSERT($a,$tablename) > { > $sql = "INSERT INTO $tablename ("; > foreach($a as $key => $value) > { > $sql .= $key .","; > } > $sql[strlen($sql)-1] = ')'; > $sql .= " VALUES ("; > foreach($a as $key => $value) > { > if (gettype($value) == 'string') > { > $sql .= "'". addslashes($value) ."',"; > } > else > { > $sql .= $value .","; > } > } > $sql[strlen($sql)-1] = ')'; > return $sql; > }
To get your list of columns, you could do this: $column_list = implode(',',array_keys($a)); $sql = "INSERT INTO $tablename ($column_list) VALUES "; That way you only have to loop through $a once. ---John Holmes... -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php