Foros del Web » Creando para Internet » Sistemas de gestión de contenidos »

Ayuda con mi sistema de comentarios..

Estas en el tema de Ayuda con mi sistema de comentarios.. en el foro de Sistemas de gestión de contenidos en Foros del Web. Buenas estoy usando un sistema de comentarios para SMF 2.0 RC 1.2 Pero no lo puedo hacer andar, osea el problema es que todavia no ...
  #1 (permalink)  
Antiguo 25/09/2009, 16:15
 
Fecha de Ingreso: junio-2008
Mensajes: 58
Antigüedad: 15 años, 10 meses
Puntos: 0
Ayuda con mi sistema de comentarios..

Buenas estoy usando un sistema de comentarios para SMF 2.0 RC 1.2

Pero no lo puedo hacer andar, osea el problema es que todavia no me muestra los comentarios, pero segun mi DB ..los comentarios ya se insertan:


Bueno en mi Sources/Display hice esto:

Código PHP:
// aca marca si hay comentarios
$sql  "
SELECT *
FROM (cw_comentarios)
WHERE id_post = $topic
"
;
$consulta=@mysql_query($sql) or die("Error, insert query failed ".mysql_error());
$context['haycom'] = mysql_fetch_assoc($request);

// aca marca cuantos comentarios hay
$sql  "
SELECT *
FROM (cw_comentarios)
WHERE id_post = $topic
"
;
$consulta2=@mysql_query($sql) or die("Error, insert query failed ".mysql_error());
$context['numcom'] =  mysql_num_rows($request);


// aca marca los comentarios
$request $smcFunc['db_query'](''"
SELECT c.comentario, c.comentario AS comentario2, c.id_post, c.id_user, mem.ID_MEMBER, mem.memberName, mem.realName, c.id_coment, c.fecha
FROM (cw_comentarios AS c, smf_members AS mem)
WHERE c.id_post = $topic AND c.id_user = mem.ID_MEMBER
ORDER BY c.id_coment ASC
"
__FILE____LINE__);
$context['comentarios'] = array();
while (
$row mysql_fetch_assoc($request))
{
$row['comentario'] = htmlspecialchars($row['comentario']);
$row['comentario'] = parse_bbc($row['comentario'], '1'$row['ID_MSG']);
$row['comentario0'] = parse_bbc($row['comentario0'], '0'$row['ID_MSG']);
censorText($row['comentario']);
censorText($row['comentario2']);

$context['comentarios'][] = array(
'comentario2' => $row['comentario2'],
'comentario' => $row['comentario'],
'citar' => $row['comentario0'],
'user' => $row['id_user'],
'nomuser' => $row['realName'],
'nommem' => $row['memberName'],
'id' => $row['id_coment'],
'fecha' => $row['fecha'],
); 
Bien eso sería lo basico para que en mi Themes/Display.template.php lo mostrara, con este código:


Código PHP:
if($context['haycom'])

{foreach (
$context['comentarios'] AS $coment){
echo
'<div id="cmt_'.$coment['id'].'"><span class="size12" font-family="Lucida Grande,Arial,Verdana,Sans-Serif;">';
// eliminar cmt
if ($message['can_remove'])
echo
'<input type="checkbox" name="campos['.$coment['id'].']">';


$mesesano2 = array("1","2","3","4","5","6","7","8","9","10","11","12") ;
$diames2 date(j,$coment['fecha']); $mesano2 date(n,$coment['fecha']) - $ano2 date(Y,$coment['fecha']);
$seg2=date(s,$coment['fecha']); $hora2=date(H,$coment['fecha']); $min2=date(i,$coment['fecha']);
$coment['comentario2'] = str_replace("'","'",$coment['comentario2']);
$coment['comentario2'] = str_replace("<","<",$coment['comentario2']);
$coment['comentario2'] = str_replace(">",">",$coment['comentario2']);
}}else{
echo
'<div id="no_comentarios"><span class="size11"><b>Este post no tiene comentarios.</b></span></div><hr>';}
if (
$context['is_locked'])
echo
'<div id="post_cerrado"><span class="size11"><b>Este post esta cerrado, por lo tanto no se permiten nuevos comentarios.</b></span></div><hr>';
if(
$context['haycom'])
{if (
$message['can_remove'])
echo
'<br /><span class="size10">Comentarios Seleccionados:</span> <input class="login" style="font-size: 9px;" type="submit" value="Eliminar"><br />';}else{echo'';}
echo
'<input type="hidden" name="topic" value="'$context['current_topic'], '" />
<input type="hidden" name="userid" value="'
$context['user']['id'], '" />
<input type="hidden" name="memberid" value="'
$message['member']['id'], '" />
</form></div></div>
<!-- fin comentarios -->'
;
echo
'</div>'
Solo me falta declarar la funcion "comentar" y "eliminar "y lo ago en otro archivo con el siguiente codigo:

Código PHP:
function template_comentar()
{
global 
$smcFunc$context$settings$options$txt$scripturl$modSettings;
global 
$db_prefix$user_info$scripturl$modSettings$board;
global 
$query_this_board$func;


$id_topic $_POST['id_topic'];    
$id_board $_POST['id_board'];
$id_member $context['user']['id'];
$comlimpio $_POST['cuerpo_comment'];
$comentu3=str_replace("casitaweb",'¡Voy a matar a Moe, Wiii!',$comlimpio);
$comentario strip_tags($comentu3);

$fecha time();

Header("Location: ?topic=$ID_TOPIC");
$sql  "INSERT INTO cw_comentarios
            (id_post,id_cat,id_user,comentario,fecha)
            VALUES ($id_topic, '$id_board', '$id_member','$comentario','$fecha')"
;
$consulta4=@mysql_query($sql) or die("Error, insert query failed ".mysql_error());
Header("Location: ?topic=$id_topic");
}

function 
template_eliminarc()
{global 
$context$settings$options$txt$scripturl$modSettings;
global 
$db_prefix$user_info$scripturl$modSettings$board;
global 
$query_this_board$func;
$topic $_POST['topic'];
$userid $_POST['userid'];
$memberid $_POST['memberid'];
Header("Location: ?topic=$topic");
if (
$userid $memberid){
if(!empty(
$_POST['campos'])) {
$aLista=array_keys($_POST['campos']);
mysql_query("DELETE FROM cw_comentarios WHERE id_coment IN (".implode(',',$aLista).")");}}} 
Despues de todos los cambios no me dio ningun error, pero cuando escribo el comentario y le doy "enviar comentario" me deberia aparecer pero no lo hace, me fijo en mi db y el comentario está ahi...

Alquien sabe que me estoy salteando o equivocando?

El sistema de comentarios es el mismo que usa el script de taringa de Spirate

Última edición por gohanjaja; 25/09/2009 a las 17:06 Razón: Para SMF 2.0 RC1.2
  #2 (permalink)  
Antiguo 26/09/2009, 17:04
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Ayuda con mi sistema de comentarios..

Tema trasladado desde PHP
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 17:34.