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

No permitir imagenes en caja de comentarios

El otro día me diste, zeus, unas líneas de código para incluir en la función y que evitaba que las imagenes se guardasen en la base de datos. Esta vez quiero aplicarlo a los comentarios, pero, como es obvio, la función no es igual y no sé qué hacer. TE paso la función:
<?php require_once('../Connections/conexion.php'); ?>
<?php

$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$insertSQL = sprintf("INSERT INTO coment (idrelato, autor, fecha, comentario) VALUES (%s, %s, %s, %s)",
GetSQLValueString($_POST['idrelato'], "int"),
GetSQLValueString($_POST['autor'], "int"),
GetSQLValueString($_POST['fecha'], "text"),
GetSQLValueString($_POST['comentario'], "text"));

mysql_select_db($database_conexion, $conexion);
$Result1 = mysql_query($insertSQL, $conexion) or die(mysql_error());


//$insertGoTo = "";
//if (isset($_SERVER['QUERY_STRING'])) {
//$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
//$insertGoTo .= $_SERVER['QUERY_STRING'];
//}
//header(sprintf("Location: %s", $insertGoTo));


header("Location:".$_SERVER['HTTP_REFERER']); 

}
?>
y este es el fragmento que me pasaste el otro día:

$relatosinimagenes= $_POST['relato'];
$relatosinimagenes=preg_replace("/<img (.+?)>/", ' ', $relatosinimagenes);


y esto:

GetSQLValueString($relatosinimagenes, "text"),
0
Puntos
1491
Visitas
3
Resp
Por LuzEsmeralda hace 128 meses
Principiante
Respuesta #1
con al función preg_replace conseguimos que no se guarden imágenes en la base de datos
<?php require_once('../Connections/conexion.php'); ?>
<?php

$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
	
	    $comentario_sin_imagen= $_POST['comentario']; // Almacenamos el coment en una variable
        $comentario_sin_imagen=preg_replace("/<img (.+?)>/", ' ', $comentario_sin_imagen); //Remplazamos las tags img
	
		$insertSQL = sprintf("INSERT INTO coment (idrelato, autor, fecha, comentario) VALUES (%s, %s, %s, %s)",
		GetSQLValueString($_POST['idrelato'], "int"),
		GetSQLValueString($_POST['autor'], "int"),
		GetSQLValueString($_POST['fecha'], "text"),
		GetSQLValueString($comentario_sin_imagen, "text"));
		
		mysql_select_db($database_conexion, $conexion);
		$Result1 = mysql_query($insertSQL, $conexion) or die(mysql_error());


//$insertGoTo = "";
//if (isset($_SERVER['QUERY_STRING'])) {
//$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
//$insertGoTo .= $_SERVER['QUERY_STRING'];
//}
//header(sprintf("Location: %s", $insertGoTo));


header("Location:".$_SERVER['HTTP_REFERER']); 

}
?>
0
Puntos
Por zeuskx hace 128 meses
Administrador Sitio web
Respuesta #2
GRacias zeus, eres una amor. Todo ha salido de lujo. En pocos foros (por no decir ninguno) la colaboración es tan excelente.
0
Puntos
Por LuzEsmeralda hace 128 meses
Principiante
Respuesta #3
aclaro que en esta línea:
$comentario_sin_imagen= $_POST['relato'];
donde pone relato debe poner comentario:
$comentario_sin_imagen= $_POST['comentario'];
Recuerda que hablamos de comentarios. Entiendo que se te ha pasado. no importa, porque el primer error te lo indica.
5
Puntos
Por LuzEsmeralda hace 128 meses
Principiante
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate