Hola,
¿Cual puede ser el problema para que no puedas saber con exactitud que es lo que está pasando?
$strSQL = "INSERT INTO nombre_tabla (variable1,variable2,variable3,variable4,variable5 ) VALUES ('{$valor1}','{$valor2}','{$valor3}','{$valor4}',' {$valor5}')";
echo $strSQL;
mysql_query(strSQL,$con);
Muestra lo que te aparece con el 'echo' y después de haber depurado tu consulta y ver que es lo que estás mandando a la base de datos, procede a eliminarlo del código.
Como menciona gildus tu consulta es propensa a inyección SQL.
La forma de realizar una consulta a SQL podría ser la siguiente:
Código PHP:
strSQL = sprintf("insert into tabla (v1, v2, v3, v4, v5) values ('%s', '%s', '%s', '%s', '%s')",
mysql_real_escape_string($v1),
mysql_real_escape_string($v2),
mysql_real_escape_string($v3),
mysql_real_escape_string($v4),
mysql_real_escape_string($v5)
);
echo $strSQL;
mysql_query(strSQL, $c);
O en el peor de los casos algo así:
Código PHP:
function mres($i) {
return mysql_real_escape_string($i);
}
strSQL = "insert into tabla (v1, v2, v3, v4, v5) values ('" . mres($v1) ."', '" .
mres($v2) ."', '" . mres($v3) ."', '" . mres($v4) ."', '" . mres($v5) ."')";
echo $strSQL;
mysql_query(strSQL, $c);
Y otras muchas formas de evitar estos problemas,
Saludos,