Hace tiempo que estoy intentando hacer algo, pero no encuentro solucion..
Estoy haciendo un sistema de comentario, pero no me esta funcionando ajax, les explico todo funcionaba antes cuando lo hacia directo con PHP y Mysql pero ahora cambie para usarlo con ajax, pero no me da respuesta de nada... les envio los codigos que uso
esto es donde muestro los comentarios... y el formulario para crear los comentarios se llama: shownews.php
<span class="codigo"> <?php
$link = mysql_connect("localhost","root"," Mqq46@ho");
mysql_select_db("mywebdb", $link) or die("Error");
$idn = $_GET["id"];
$result = mysql_query("SELECT idnews, titlenews, fullnews FROM tnews WHERE (idnews=$idn)", $link);
//id, titulo, noticia, autor, priority
$my_error = mysql_error($link);
while ($row = mysql_fetch_row($result))
{
echo "Titulo: <h4><em><strong>$row[1]</strong></em></h4> </br>";
echo "Noticia: <h4><em><strong>$row[2]</strong></em></h4></br>";
}
?>
<html xmlns="http://www.w3.org/1999/xhtml ">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script language="JavaScript" type="text/javascript" src=" ajax.js"></script>
</head>
<body>
<br />
<div id="commentlist">
</div>
<div id="commentsform">
<h2>Puede dejar un comentario:</h2>
<form name="comentform" method="post" id="commentform" onSubmit="return send('/addcomentario.php', 'id', 'nick', 'comment', 'url', 'email', 'commentlist')">
<p style="margin-top:0;">
<textarea name="comment" id="comment" cols="100%" rows="10" tabindex="1"></textarea>
</p>
<p>
<input type="text" name="nick" id="author" value="" size="22" tabindex="2" />
<label class="label" for="author">Nick</label>
</p>
<p>
<input type="text" name="email" id="email" value="" size="22" tabindex="3" />
<label class="label" for="email">Correo electrónico (obligatorio)</label>
</p>
<p>
<input type="text" name="url" id="url" value="" size="22" tabindex="4" />
<label class="label" for="url">Web (opcional)</label>
</p>
<p>
<input name="submit" type="submit" id="submit" tabindex="6" value="Enviar Comentario" />
<input name="id" type="hidden" value="<? echo $idn; ?>">
</p>
</form>
</div>
<div id="testing">
asdasd
<?php include("showcomment.php"); ?>
</div>
</body>
</html>
<?php
mysql\_free\_result($result);
mysql\_close();
?>
ahora este es el archivo ajax.js
f unction simple_ajax(){
var xmlhttp=false;
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject(" Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function LoadContent(callback, url, query_string, method, iditem){
method = method.toUpperCase();
var ajax=simple_ajax();
fullquery = url +"?" + query_string;
if (method == 'GET') {
ajax.open(method, url +"?" + query_string, true);
} else {
ajax.open(method, url, true);
}
ajax.onreadystatechange=function() {
if(ajax.readyState==1) {
callback(query_string, ajax.responseXML, 'testing');
} else {
if (ajax.readyState==4) {
callback(ajax.responseText, ajax.responseXML, iditem);
}
}
}
if (method == 'GET') {
ajax.send(null)
} else {
ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=ISO-8859-1');
ajax.send(query_string);
}
}
function send(url, vid, vnick, vcom, vurl, vemail, divused)
{
/*Obtener donde se mostrará el contenigo*/
divResultado = document.getElementById(iditemuse);
/*Obtener los valores del formulario*/
obj_id = document.getElementById(vid);
obj_nick = document.getElementById(vnick);
obj_com = document.getElementById(vcom);
obj_url = document.getElementById(vurl);
obj_email = document.getElementById(vemail);
/* Obtener Mensaje por Item*/
/* obtener el objeto msg */
obj_msg = vid'='+obj_id.value;
//*+'&nick='+obj_nick.value+'&comment='+obj_com.value+'&url='+obj_url.value+'&email='+obj_email.value;
/* Construir el query_string (variables que serán enviadas en la petición). */
/* El formato de esta cadena es "v1=valor1&v2=valor2& .. &vn=valorn" */
query_string = obj_msg.value;
LimpiarCampos();
/*obj_msg.focus();*/
/* Enviar la peticion */
LoadContent(send_callback, url, query_string, 'POST', divused);
return false;
}
function send_callback(text, xml, idclearelem)
{
/* obtener el objeto main */
LimpiarCampos(idclearelem);
obj_main = document.getElementById(idclearelem);
obj_div = document.createElement('div');
obj_div.innerHTML = text;
obj_main.appendChild(obj_div);
}
function LimpiarCampos(){
document.comentform.comment.value = "";
document.comentform.nick.value = "";
document.comentform.email.value = "";
document.comentform.url.value = "";
document.comentform.comment.focus();
}
este es el archivo para agregar los comentarios se llama: addcomentario.php
<?php
$link = mysql\_connect("localhost","root","Mqq46@ho");
mysql\_select\_db("mywebdb", $link);
if(isset($HTTP\_POST\_VARS\["id"\]) && isset($HTTP\_POST\_VARS\["nick"\]) && isset($HTTP\_POST\_VARS\["comment"\]) && isset($HTTP\_POST\_VARS\["url"\]) && isset($HTTP\_POST\_VARS\["email"\]))
{
if($HTTP\_POST\_VARS\["comment"\] != "")
{
if($HTTP\_POST\_VARS\["nick"\] == "")
{
$nickNuevo = "anonimo";
}else
{
$nickNuevo = $HTTP\_POST\_VARS\["nick"\];
}
$idNoticia = $HTTP\_POST\_VARS\["id"\];
$comentarioNoticia = $HTTP\_POST\_VARS\["comment"\];
$theurl = $HTTP\_POST\_VARS\["url"\];
$theemail = $HTTP\_POST\_VARS\["email"\];
$hoydate = date("Y-m-d");
$hoytime = date("H:i:s");
$pageref = getenv('HTTP\_REFERER');
echo "$idNoticia: <br /> $comentarioNoticia: <br /> $theurl: <br /> $theemail: <br /> $hoydate: <br /> $hoytime: <br /> $nickNuevo:";
$sql = "INSERT INTO comentarios (id\_Comentarios, id\_noticia, nick, fecha, hora, email, url, comentario) ";
$sql.= "VALUES ('','$idNoticia','$nickNuevo','$hoydate','$hoytime', '$theemail', '$theurl','$comentarioNoticia')";
$es = mysql\_query($sql, $link) or die("Error al grabar un mensaje: ".mysql\_error);
//echo "Comentario Enviado Con Exito.<BR>Espere Unos Segundos...<SCRIPT LANGUAGE=\\"javascript\\">window.location.href = \\"$pageref\\"</SCRIPT>";
}else
{
echo "Debe Introducir Un Comentario.";
}
}
include("showcomment.php");
mysql\_close();
?>
</span>
pero no me responde nada... ni error ni nada si alguien me pudiera ayudar....
</body></html>