Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Preparar cadena para sentencia SQL con php

mysql
En este ejemplo podemos ver como crear una función para preparar una cadena o string para una sentencia SQL con php de una manera simple y segura.
//preparar cadena sentencia SQL
function preparar($cadena){
	
	global $conexion;

	$tipo = gettype($cadena);
	$cadena = mysqli_real_escape_string($conexion, $cadena);

	switch ($tipo) {
		case 'string':
			$cadena = "'".$cadena."'";
			break;
		case 'integer':
			$cadena = intval($cadena);
			break;
		case 'double':
			$cadena = doubleval($cadena);
			break;	
		default:
			$cadena = "'".$cadena."'";
			break;
	}

return $cadena;	

}
ejemplo de uso para un INSERT SQL:
$cadena = preparar('Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quibusdam maxime tempore possimus eveniet quod. Facilis vel quam quo accusamus enim velit, impedit reprehenderit iusto ipsam dolorem corporis rem cumque, nemo.');

$consulta = $conexion->query("INSERT INTO tabla (cadena) VALUES ($cadena)");
salu2
Editado
0
Puntos
1597
Visitas
2
Resp
Por alber hace 71 meses
Administrador
Respuesta #1
se ve muy limpia esta función.. entonces esta otra que econtre por el foro https://datoweb.com/post/2608/formatear-cadena-con-funcion-getsqlvaluestring-en-mysqli sirve para lo mismo?
0
Puntos
Por Jose Luis hace 71 meses
Principiante
Respuesta #2
Jose Luis dijo: se ve muy limpia esta función.. entonces esta otra que econtre por el foro https://datoweb.com/post/2608/formatear-cadena-con-funcion-getsqlvaluestring-en-mysqli sirve para lo mismo?
exacto, se utiliza para lo mismo pero esta es algo mas simple y solo hay que pasarle un parámetro ya que obtiene el tipo de manera automática..
0
Puntos
Por alber hace 71 meses
Administrador
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate