bueno, es que hay muchas maneras de generar una cadena, sin importar como sea...
solo que debes hacerlo del mejor modo que te acomode, según tu propio estilo o reglas de programar...
por comodidad, deberias separar todas tus variable en general.. y procesarlas individualmente, así al final concatenas la cadena como desees sin problemas de legibilidad...
Código PHP:
$foo = mysql_escape_real_string($_POST['foo']);
$bar = mysql_escape_real_string($_POST['bar']);
$candy = mysql_escape_real_string($_POST['candy']);
$sql = "INSERT tabla(a,b,c) VALUES('$foo', '$bar', '$candy')";
la mayor parte del tiempo es por sentido común, para ser fácil al leer, interpretar y emplear las variables en nuestro código..
comparado a esto..
Código PHP:
$sql = "INSERT tabla(a,b,c) VALUES('".mysql_escape_real_string($_POST['foo'])."', '".mysql_escape_real_string($_POST['bar'])."', '".mysql_escape_real_string($_POST['candy'])."')";