Foros del Web » Programando para Internet » PHP »

Interactuando La Db Con Ajax

Estas en el tema de Interactuando La Db Con Ajax en el foro de PHP en Foros del Web. Buenas, mi problema es el siguiente, yo necesito que en el sidebar de la página aparezcan los tweets de un usuario (esto ya lo hice) ...
  #1 (permalink)  
Antiguo 30/01/2014, 19:06
 
Fecha de Ingreso: enero-2014
Mensajes: 1
Antigüedad: 10 años, 2 meses
Puntos: 0
Interactuando La Db Con Ajax

Buenas, mi problema es el siguiente, yo necesito que en el sidebar de la página aparezcan los tweets de un usuario (esto ya lo hice) pero el usuario que está logeado en el momento tiene el "privilegio" de "esconder" sus tweets, lo cual primero tengo que grabar ese registro en la db para cuando lo quiera volver a mostrar este aparezca sin ningun problema, eso tengo que hacerlo mediante Ajax (esconder y mostrar el tweet)

aqui está el código de mi view
<?php
/* @var $this UserController */
/* @var $model User */

//registering jQuery
Yii::app()->clientScript->registerCoreScript('jquery');

?>
<h1>User: <?php echo $model->username; ?></h1>

<h2>Entries</h2>
<ul>
<?php foreach($model->entries as $entry):?>
<div class="view">
<li class="entries"><h2> <?php echo $entry['title']; ?> </h2></li>
<li class="entries"><?php echo $entry['content']; ?></li><br/>
<li class="entries">Created on <?php echo date("d M - g:i A ",strtotime($entry['creation_date'])); ?></li><br/>
</div>
<?php endforeach; ?>
</ul>
<?php $this->beginWidget('system.web.widgets.CClipWidget', array('id'=>'sidebar')); ?>
<h1>Tweet Feed</h1>
<ul>
<?php $form=$this->beginWidget('CActiveForm', array('id'=>'hide-tweet',)); ?>
<?php $i=1; foreach($tweets as $tweet):?>
<div id="tw-<?php echo $i; ?>">
<h1><?php echo $tweet->id_str; ?></h1>
<div class="view">
<li class="entries"><?php echo '<b>'.$tweet->user->name.'</b> @'.$tweet->user->screen_name.' '.date("d M",strtotime($tweet->created_at)); ?></li><br/>
<li class="entries"><?php echo $tweet->text; ?></li>
<?php if($model->usr_id == Yii::app()->user->Id):?>
<br/><li class="entries">
<?php echo CHtml::ajaxLink(
'Click',
array('tweet/create'),
array(
'update'=>'#content',
'type'=>'POST',
'dataType'=>'json',
'data'=>array(
'tw_tweet_id'=>$tweet->id_str,
'tw_author'=>$model->usr_id,
'tw_name'=>$tweet->user->name,
'tw_creation_date'=>$tweet->created_at,
'tw_content'=>$tweet->text,
),
));
?>
</li>
<?php endif; ?>
</div>
</div>
<?php $i++; endforeach; ?>
<?php $this->endWidget(); ?>
</ul>
<?php $this->endWidget();?>


y acá el código de mi accion tweet/create

public function actionCreate()
{
$model=new Tweet;

// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);

if(isset($_POST['Tweet']))
{
echo "arrived at controller!!!";
var_dump($_POST['Tweet']);
//$model->attributes=$_POST['Tweet'];
//if($model->save())
//$this->redirect(array('view','id'=>$model->tw_id));
}

/*$this->render('create',array(
'model'=>$model,
));*/
}


Cabe destacar que la vista es de un controlador diferente al de los tweets, es la vista de los usuarios donde me muestra sus entradas y los ultimos 6 tweets que este ha hecho (tomados desde twitter).
Creo que estoy haciendo algo malo ya que el manda la información, porque en el firebug tengo una respuesta 200 OK, lo que entiendo que manda el POST, pero no llega a la accion tweet/create ya que no imprime el "echo" ni tampoco hace "var_dump", si es posible me gustaría que alguien me de algo de luz en este tema de Ajax.
Muchas Gracias.

Etiquetas: ajax, html, registro, usuarios
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 02:36.