Tema: error ajax
Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/04/2011, 07:17
Avatar de juan_14nob
juan_14nob
 
Fecha de Ingreso: abril-2010
Mensajes: 552
Antigüedad: 14 años, 7 meses
Puntos: 6
Respuesta: error ajax

Hola si, ya he dado cuenta cual era el error y era que estaba haciando un ejercicio de un libro pero con una libreria vieja y ahoa estoy tratando de actualizar los metodos y funciones de xajax. Ahora tengo otro problema que es cuando llamo a funcion javascript desde xajax con addScript me dice el siguiente error:

Fatal error: Call to undefined method xajaxResponse::addScript() in C:\xampp\htdocs\diarionoticias.php on line 71

Es como si no encontrara la funcion javascript.. y la tengo en la misma pagina aqui dejo el codigo completo:


Código PHP:
<?php
function verDetalle($idNoticia){
    
$res mysql_query("SELECT * FROM noticias WHERE idNoticia = $idNoticia");
    if(
mysql_num_rows($res)){
        
$row mysql_fetch_array($res);
        
        
//noticia
        
$fragmento "<li class='titulo'>$row[tituloNoticia]</li>";
        
$fragmento .= "<p>".nl2br($row[textoNoticia])."</p>";
        
        
//comentarios
        
$resCom mysql_query("SELECT DATE_FORMAT(fechaComentario, '%d/%m/%Y @ %l:%i%p') as fecha, autorComentario,
        emailautorComentario, textoComentario FROM comentarios WHERE idNoticia = $idNoticia ORDER BY fechaComentario"
);
        
    if(
mysql_num_rows($resCom)){
        
$fragmentoComentarios "<li class='titulo'>Comentarios(".mysql_num_rows($resCom).")</li>";
        
        while (
$rowCom mysql_fetch_array($resCom)){
            
$fragmentoComentarios .= "<p># el $rowCom[fecha] $rowCom[autorComentario] ($rowCom[emailautorComentario]) escribio:
            <br/>"
.nl2br($rowCom[textoComentario])."<br /><br /></p>";
        }
    }else{
        
$fragmentoComentarios "<li class='titulo'>Comentarios (0) </li>";
        
$fragmentoComentarios .= "<p> No hay comentarios para esta noticia.</p>";
    }

    
//nuevocomentario
    
$fragmentoNuevoComentario "<li class='titulo'>Ingresar nuevo Comentario </li>";
    
$fragmentoNuevoComentario .= "<div class='label'>Su nombre: </div><div class='field'><input type='text' id='formnombre'></div>";
    
    
$fragmentoNuevoComentario .= "<div class='label'> Su email: </div><div class='field'><input type='text' id='formEmail'></div>";
    
$fragmentoNuevoComentario .= "<div class='label'>Su comentario: </div><div class='field'><textarea id='formComentario'></taxtarea></div>";
    
$fragmentoNuevoComentario .= "<div class='submit'><input type='button' value='Enviar' onClick='agregarComentario()'> </div>";
    
    
$respuesta = new xajaxResponse();
    
    
$respuesta->assign("detalleNoticia","innerHTML",$fragmento);
    
$respuesta->assign("comentariosNoticia","innerHTML",$fragmentoComentarios);
    
$respuesta->assign("nuevoComentarioNoticia","innerHTML"$fragmentoNuevoComentario);
    
    
$respuesta->assign("idNoticia","value",$idNoticia);
    
    
$respuesta->addScript("mostrarMensaje('0');");
    
    }
    return 
$respuesta;
}


$xajax = new xajax();

$xajax->registerFunction("listar");    
$xajax->registerFunction("verDetalle");
$xajax->registerFunction("agregarComentario");
$xajax->processRequest();


<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtmll/DTD/xhtmll-strict.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<
head>
    <
meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
    <
meta name="author" content="" />
    <
meta name="keywords" content="" />
    <
meta name="description" content="" />
    <
meta name="robots" content="all" />
    
    <
titleXajax </title>
    <?
php $xajax->printJavascript('xajax/'); ?>
    <style type="text/css" media="all">
    @import url(style1.css);
    </style>
    <script LANGUAGE="javascript">

function mostrarMensaje(modo){
    if(modo == '1'){

    document.getElementById('mensajeNuevoComentarioNoticia').innerHTML = 'Complete campos obligatoarios';
    document.getElementById('mensajeNuevoComentarioNoticia').style.display = '';
    }else{
    
    document.getElementById('mensajeNuevoComentarioNoticia').innerHTML = '';
    document.getElementById('mensajeNuevoComentarioNoticia').style.display = 'none';    

    }    
}

{resto del codigo html...}



Saludos y espero que me pùedas ayudar