Foros del Web » Programando para Internet » PHP »

Problema comentarios

Estas en el tema de Problema comentarios en el foro de PHP en Foros del Web. Buenas Tengo una web con comentarios que se me registran comentarios de gente vacio y yo tengo puesto una validacion para que esto no pase ...
  #1 (permalink)  
Antiguo 03/05/2012, 04:40
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 12 años, 4 meses
Puntos: 10
Problema comentarios

Buenas
Tengo una web con comentarios que se me registran comentarios de gente vacio y yo tengo puesto una validacion para que esto no pase cuando lo intento yo desde mi ordenador no me deja y me salta el cartel de que tiene que tener un mensaje un correo y nombre, que es lo que puede estar pasando para que esto se registre??? gracias un saludo.
  #2 (permalink)  
Antiguo 03/05/2012, 05:30
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 8 meses
Puntos: 66
Respuesta: Problema comentarios

Te parecerá un tópico, pero adivinar no es el objetivo de los foreros, aunque siempre se puede interpretar de una u otra forma tu pregunta.

Si incluyes parte del código afectado explicando detalladamente en que consiste, quizás el problema se resuelva mejor y más rapidamente.

saludos,
__________________
Tu álbum de cromos online!!
  #3 (permalink)  
Antiguo 03/05/2012, 05:57
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Problema comentarios

Voy a intentar ser adivino.... REGISTER_GLOBALS ON....
  #4 (permalink)  
Antiguo 06/05/2012, 03:21
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 12 años, 4 meses
Puntos: 10
Respuesta: Problema comentarios

Vale lo siento se me olvido el codigo aqui os pongo el codigo del formulario y registro de los comentarios
formulario.php
Código PHP:
Ver original
  1. <form action="insercomentario.php" method="post" ><table>
  2.  <tr>
  3.  <td>Nombre:</td>
  4.  <td><input type="text" name="nombre" /></td>
  5.  </tr>
  6.  <tr>
  7.  <td>E-mail</td>
  8.  <td><input type="text" name="email" /></td>
  9.  </tr>
  10.  <tr>
  11.  <td>Comentario:</td>
  12.  <td><textarea name="comentario"></textarea></td>
  13.  </tr>
  14.  <tr>
  15.  <td><input type="submit" name="accion" value="Comentar"></td>
  16.  <td><input name="id" type="hidden" id="id" /></td>
  17.  </tr>
  18.  </table></form>
  19.  <table>
  20.  
  21.  </table>
insercomentario.php
Código PHP:
Ver original
  1. <?php
  2.  
  3.  $bdconex = @mysql_connect("host", "tabla", "contraseña");
  4.  if (!$bdconex) {
  5.  echo ( "<h1>La base de datos no está disponible</h1> " .
  6.  "<p>Por si acaso, comprueba que tienes bien los datos de la dirección, el nombre de usuario y la contraseña.</p>" );
  7.  exit();
  8.  }else {
  9.  echo ("");
  10. }
  11.  if (! @mysql_select_db("base", $bdconex)){
  12.  
  13. echo "<h2 align='center'>ERROR3: Imposible localizar la base de datos en este momento</h2>";
  14.  
  15. exit();
  16.  }else {
  17.  echo "Base de datos seleccionada";
  18.  }
  19.  
  20. $sql =" INSERT INTO comentarios ( id, nombre , email , comentario, fecha ) VALUES ( NULL, '".$_POST['nombre']."' , '".$_POST['email']."' , '".$_POST['comentario']."',CURDATE() )";  
  21.  
  22. if(mysql_query($sql, $bdconex)){
  23.  echo ("<p> Gracias por tu comentario, será redirigido automaticamente a la pagina de comentarios.</p>");
  24.  }else{
  25.  echo ("Error al insertar los datos: " . mysql_error() . "</p>");
  26.  }
  27.  
  28. $sql="INSERT INTO comencopia ( id, nombre , email , comentario, fecha ) VALUES ( NULL, '".$_POST['nombre']."' , '".$_POST['email']."' , '".$_POST['comentario']."',CURDATE() )";
  29.  if(mysql_query($sql, $bdconex)){
  30.  echo ("<p> </p>");
  31.  }else{
  32.  echo ("Error al insertar los datos: " . mysql_error() . "</p>");
  33.  }
  34. ?>
Lo tengo puesto pa que no deje grabarlo en vacio, pero nose porque sin que nadie comente o no se como salen comentarios en blanco nose que puede ser... gracias.
  #5 (permalink)  
Antiguo 06/05/2012, 05:11
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Problema comentarios

Amigo no veo donde validas los datos de tu formulario...
  #6 (permalink)  
Antiguo 06/05/2012, 06:59
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 12 años, 4 meses
Puntos: 10
Respuesta: Problema comentarios

No se me copio bien aqui esta el script de javascript que lo hice con dreamweaver, de validaciones.
Código HTML:
Ver original
  1. <script type="text/JavaScript">
  2. <!--
  3. function MM_findObj(n, d) { //v4.01
  4.  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
  5.    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  6.  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  7.  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  8.  if(!x && d.getElementById) x=d.getElementById(n); return x;
  9. }
  10.  
  11. function MM_validateForm() { //v4.0
  12.  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  13.  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
  14.    if (val) { nm=val.name; if ((val=val.value)!="") {
  15.      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
  16.        if (p<1 || p==(val.length-1)) errors+='- '+nm+' Introduzca un email correcto.\n';
  17.      } else if (test!='R') { num = parseFloat(val);
  18.        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
  19.        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
  20.          min=test.substring(8,p); max=test.substring(p+1);
  21.          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
  22.    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' es obligatorio.\n'; }
  23.  } if (errors) alert('Debe rellenar los siguientes datos:\n'+errors);
  24.  document.MM_returnValue = (errors == '');
  25. }
  26. //-->
  #7 (permalink)  
Antiguo 06/05/2012, 07:16
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Problema comentarios

Te comiendo que valides sin el uso de Dreamweaver, con texto plane..

aqui te pongo un ejemplo...

Aca al momento del usuario hacer click en el boton, con classs="boton" entonces inicia la validacion..
Recuerda cambiar los nombre de los campos en el atributo class..
y incluir la libreria de jquery
Prueba y espero te sirva

<script>

$(document).ready(function () {
var emailreg = /^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/;
$(".boton").click(function (){
$(".error").remove();
if( $(".nombre").val() == "" ){
$(".nombre").focus().after("<span class='error'>Ingrese su nombre</span>");
return false;
}else if( $(".email").val() == "" || !emailreg.test($(".email").val()) ){
$(".email").focus().after("<span class='error'>Ingrese un email correcto</span>");
return false;
}else if( $(".asunto").val() == ""){
$(".asunto").focus().after("<span class='error'>Ingrese un asunto</span>");
return false;
}else if( $(".mensaje").val() == "" ){
$(".mensaje").focus().after("<span class='error'>Ingrese un mensaje</span>");
return false;
}
});
});</script>
  #8 (permalink)  
Antiguo 10/05/2012, 07:22
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 12 años, 4 meses
Puntos: 10
Respuesta: Problema comentarios

Sige sin valerme es que pasa una cosa rara no deja comentar pero al cavo de unos dias aparecen mensajes en blanco sin que supongo nadie los ponga nose como puedo areglar el problema la validacion funciona bien pero sigo con el mismo problema...

Etiquetas: comentarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:53.