Pues tal cual... tengo una especie de formulario a traves del cual los usuarios podran ingresar comentarios en los post del blog que estoy haciendo... el inconveniente es que solo me esta permitiendo realizar un solo ingreso de registro... es decir solo un comentario por post... cuando quiero hacer el segundo el formulario simplemente no responde, queda desfuncional no hace nada
.... les dejo aca el codigo para que le echen un ojo a ver si me ayudan a conseguir el fallo
dejarcomentario.html
<div class="feat_prod_box-coment" id="box-comentario">
<input type="text" id="usuario" placeholder="Nombre">
<input type="email" id="email" placeholder="Email">
<input type="hidden" id="post" value="<?php echo $id; ?>">
<textarea id="comentario" placeholder="Comentario"></textarea>
<label><?php echo $_SESSION['a']." + ".numero($_SESSION['b']); ?> = <input type="text" style="width:20px;" id="capt"></label><br>
<button id="comentar" onclick="javascript
:enviar_comentario();">Comentar </button>
<span id="respuesta" style="color:#FF4545;"></span>
</div>
comentar.php
Código PHP:
<?php
require 'conexiondb.php';
require 'config.php';
if (!isset($_GET['user']) or !isset($_GET['email']) or !isset($_GET['comentario']) or !isset($_GET['post']) or !isset($_GET['capt'])) {
echo "Error inesperado";
}elseif (strlen($_GET['user'])<5 or strlen($_GET['user'])>200) {
echo "Error: usuario no válido";
}elseif (strlen($_GET['comentario'])<5 or strlen($_GET['comentario'])>1000) {
echo "Error: comentario no válido";
}elseif (intval($_GET['capt'])!=$_SESSION['a']+$_SESSION['b']) {
echo "Error: Suma incorrecta";
}else{
$user = $_GET['user'];
$email = $_GET['email'];
$post = $_GET['post'];
$comentario = $_GET['comentario'];
$fecha = date("d")." de ".mes(date("m"))." de ".date("Y")." a las ".date("h:i");
$sql = mysql_query("INSERT INTO `comentarios`( `nombre`, `comentario`, `fecha`, `email`, `post` )
VALUES ('$user','$comentario','$fecha','$email', '$post')" );
if ($sql) {
echo "gracias por su comentario";
}else{
echo "Error con el servidor, intente más tarde.";
}
}
?>
comentar.js (para validar el ingreso de datos en los comentarios)
// creamos la funcion que validara nuestro formulario
function enviar_comentario() {
var user = document.getElementById("usuario").value;
if (user.length<5 || user.length>200) {
document.getElementById("usuario").focus();
document.getElementById('respuesta').innerHTML= "Error: Usuario no válido";
return 0;
};
var email = document.getElementById("email").value;
var regexp = /^[0-9a-zA-Z._.-]+\@[0-9a-zA-Z._.-]+\.[0-9a-zA-Z]+$/;
if (regexp.test(email)==0 || email.length==0) {
document.getElementById("email").focus();
document.getElementById('respuesta').innerHTML= "Error: Email no válido"; return 0;
};
var comentario = document.getElementById("comentario").value;
if (comentario.length<5) {
document.getElementById("comentario").focus();
document.getElementById('respuesta').innerHTML= "Error: Comentario no válido"; return 0;
};
var post = document.getElementById("post").value;
var capt = document.getElementById("capt").value;
var url = "php/comentar.php?user="+user+"&email="+email+"&comenta rio="+comentario+"&post="+post+"&capt="+capt;
myRequest.open("GET", url, true);
myRequest.onreadystatechange = respuestaAJAX;
myRequest.send(null);
}
//funcion de respuesta para el ingreso de datos
function respuestaAJAX() {
if(myRequest.readyState == 4) {
if(myRequest.status == 200) {
if (myRequest.responseText>="1") {
document.getElementById("box-comentario").innerHTML="Gracias por su comentario.";
}else{
document.getElementById('respuesta').innerHTML= myRequest.responseText;
}
} else {
document.getElementById('respuesta').innerHTML= myRequest.status;
}
}else{
document.getElementById('respuesta').innerHTML="<i mg src='imagenes/loading.gif' width='16' />";''
}
}