Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/11/2010, 23:26
vissiontotal
 
Fecha de Ingreso: mayo-2008
Mensajes: 103
Antigüedad: 16 años
Puntos: 0
Formulario comentario inserta basura....

Hola amigos tengo un gran problema.......

en mi pagina en la seccion de ver detalels de noticias puse un forlulario al ultimo para que el usuario ponga comentarios..... el problema es que pone mucha basura de forma automatica en la base de datos... revise mi codigo de DW y no parece que esta algo movido.......

Alguien me puede orientar de que este pasando....... y por donde le puedo buscar...

Este es el codigo del formulario...

Código HTML:
[CODE]<form action="" method="post" name="form2" class="encabezados" id="form">
        <span ><strong>____________________________________________________________</strong><br />
            <strong>Dejanos tu comentario sobre esta noticia..... </strong><br />
            <strong>Nombre:</strong>
            <label>
              <input name="nombre" type="text" class="TextosNotas" id="nombre" value="<?php if (!empty($row_user['nombre'])) { echo $row_user['nombre'];} ?> <?php if (empty($row_user['nombre'])) { echo $_POST['nombre'];} ?>" />
            </label>
            <?php if (isset($perdido) && in_array('nombre', $perdido)) { ?>
				<span class="alertas">Ponga un Nombre</span>
			  <?php } ?>
            </span></span><strong><br />
              Correo:</strong>
              <input name="correo" type="text" class="TextosNotas" id="correo" value="<?php if (!empty($row_user['email'])) { echo $row_user['email'];} ?> <?php if (empty($row_user['email'])) { echo $_POST['correo'];} ?>" size="30" />
              
			  <?php if (isset($perdido) && in_array('correo', $perdido)) { ?>
              <span class="alertas">Ponga un Correo</span>
              <?php } ?>

          <p class="encabezados_chicos"><strong>Tu Comentario:</strong>
            <label><br />
              <textarea name="coment" cols="100" rows="3" class="TextosNotas" id="coment"><?php echo $_POST['coment']  ?></textarea>
              <br />
<?php if (isset($perdido) && in_array('coment', $perdido)) { ?>
  <span class="alertas">
                  <span class="alertas">Ponga un Comentario</span>
                  <?php } ?>
                <br />
            </label>
            <label>
              <input type="submit" name="comentario" id="comentario" value="Enviar mi comentario" />
            </label>
          </form>[/CODE]
Y Este es codigo de PHP donde checo las variables y se hace el INSERT

Código PHP:
[CODE]<?php if (array_key_exists('comentario',$_POST)) {

// eliminar caracteres escape de array POST
    
if (get_magic_quotes_gpc()) {
      function 
stripslashes_deep($value) {
    
$value is_array($value) ? array_map('stripslashes_deep'$value) : stripslashes($value);
    return 
$value;
    }
      
$_POST array_map('stripslashes_deep'$_POST);
      }

    
//Lista de archivos que se esperan
      
$esperado = array();
      
//Configurar archivos obligatorios
      
$obligatorio = array('coment''nombre''correo');
      
//Crear un array vacÃ*o para cualquier archivo perdido
      
$perdido = array();

      
//Procesar las variables $_POST
      
foreach ($_POST as $key => $value) {
      
//asignar a variable temporalmente y vacÃ*a espacio blanco si no un array
      
$temp is_array($value) ? $value trim($value);
      
//si vacÃ*o y obligatorio, añadir a array $perdido
      
if (empty($temp) && in_array($key$obligatorio)) {
          
array_push($perdido$key);
      }
      
//En otro caso, asignar a una variable del mismo nombre que $key
      
elseif (in_array($key$esperado)) {
      ${
$key} = $temp;
      }
      }
      if (empty(
$perdido)) {
$comentario $_POST['coment'];
$user $_POST['nombre'];
$correo $_POST['correo'];
$id_nota $row_noticia['noticia_id'];

$result =  "insert into comentarios (comentario, nombre, id_nota, correo) values ('$comentario', '$user', '$id_nota', '$correo')";
if (
mysql_query($result,$vissiontotal)){
 
?>
<META HTTP-EQUIV="Refresh" CONTENT="0; URL=noticia_ver.php?noticia_id=<?php echo $row_noticia['noticia_id']; ?>">
               <?php exit;        
               }
                }
                }
 
?>[/CODE]