Autor Tema: [Ayuda] MiniChat v6.0 - Error enviar mensajes.  (Leído 810 veces)

Desconectado Kronix

  • PHPerit@
  • *
  • Mensajes: 2
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
[Ayuda] MiniChat v6.0 - Error enviar mensajes.
« en: 15 de Abril de 2017, 05:39:50 am »
Buenas chic@s quisiera ver si alguien me puede ayudar, después de mucho tiempo buscando el MiniChat v6.0 que se usaba antes en las webs fans de Habbo lo encontre. Primero me costo un poco instalarlo ya que uno de los codigos SQL del instalador estan ya obsoletos y no se usa actualmente pero ya eso lo solucione y logre instalarlo.

El problema que tengo ahora es a la hora de enviar mensajes... Siempre me da error diciendo "El Mensaje esta vacío" revisando el log de errores del FTP, me dice que el error es "Undefined variable: mensaje in /home/kronixradio/public_html/chat/procesar.php" en las lineas 54 y 86.

Aquí dejo el código si alguno sabe la solución por favor mil gracias.

Código: [Seleccionar]
<?

session_start();
session_cache_limiter('nocache,private');

include("configtag.php");
include("colores.php");
include("funciones.php");
include("language/lang-".$langactual.".php");

// Enviamos el mensaje 
if (isset($_POST['enviar'])) {

  // Cogemos la IP
    $ip = getenv("REMOTE_ADDR");
  /*if ($_SERVER['HTTP_X_FORWARDED_FOR'] != "")
    $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];   
  else if ($_SERVER['HTTP_VIA'] != "")
         $ip = $_SERVER['HTTP_VIA'];   
  else if ($_SERVER['REMOTE_ADDR'] != "")
         $ip = $_SERVER['REMOTE_ADDR']; 
       else
         $ip = _UNKNOWIP; */
 
  // Miramos si esta baneado
  if (estaBaneado($ip)) {
  $error = _NOWRITE;
  } else {
  $error = "";
if (!isset($_SESSION['nnick'])) {
   $nick = str_replace(" ","",stripSlashes($_POST['nick']));
   $nick = str_replace(" ","",$nick);
   $existe = comprobarNick(htmlentities($nick), $_POST['clave']);
   if ($existe != "-1" && $existe != "0") {
     $_SESSION['nnick'] = $existe;
$nick = $existe;
$existeNick = "true";
   } else if ($existe == "-1")
      $error = _INCORRECTPASS;
    } else {
  $nick = $_SESSION['nnick']; 
$existeNick = "true";
}

$fecha2 = microtime();
$fecha2 = explode(" ", $fecha2);
$fecha2 = $fecha2[1];
   
if ($existeNick == "true");
else

$mensaje = str_replace(" ","",trim(stripSlashes($_POST['mensaje'])));

    if ($mensaje !=_MESSAGE && $mensaje != "" && $nick != _NICKNAME && $nick != "" && $error == "") {

  if (isset($_POST['url']))
        $url = str_replace(" ","",$_POST['url']);
 
  if (esAdmin(htmlentities($nick)))
$esAdmin = "true";  
 
$query = "SELECT * FROM `flood` WHERE ip = '$ip'";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);

  if ($rows) {
  $flood = @mysql_fetch_array($resp);
$difseg = $fecha2 - $flood['tiempo'];
if ($difseg < $esperar && $esAdmin != "true")
   $error = _FLOOD;
  else {
        $error = guardarMensaje($nick, $mensaje, $url, $ip);
if ($esAdmin != "true")
  actualizarIp($fecha2, $ip);
}
  } else {
  $error = guardarMensaje($nick, $mensaje, $url, $ip);
if ($esAdmin != "true")
   actualizarIp($fecha2, $ip);
  }
  actualizarIps($esperar);
 
    } else {
      if ($nick == _NICKNAME || $nick == "")
  $error = _NONICK;
  else if ($mensaje == _MESSAGE || $mensaje == "")
  $error = _NOMESSAGE;
    }
  }
 
  if ($error != "") {
  header("Location: ftag.php?mostrar=error&error=".$error."&n=".$nick."&u=".$url."&".session_name()."=".session_id());
  exit;
  } else {
     header("Location: ftag.php?mostrar=tag&n=".$nick."&u=".$url."&".session_name()."=".session_id());
  exit;
  }
 
} else if (isset($_POST['actualizar'])) {
        header("Location: ftag.php?&".session_name()."=".session_id());
  exit;
}

?>

Si alguno quieres los archivos del minichat para su uso me avisan :D ya que los links en este foro están vencidos.

Comunidad PHPeros

[Ayuda] MiniChat v6.0 - Error enviar mensajes.
« en: 15 de Abril de 2017, 05:39:50 am »

Desconectado ferdi342

  • PHPero Experto
  • *****
  • Mensajes: 735
  • Karma: 8
  • Sexo: Masculino
  • Gúgol
    • Ver Perfil
    • Google - La solución a todo
Re:[Ayuda] MiniChat v6.0 - Error enviar mensajes.
« Respuesta #1 en: 17 de Abril de 2017, 20:51:00 pm »
Hola,

por lo que he podido ver, tanto la 54 como la 86 comparten la variable $mensaje y la constante _MESSAGE.

En la linea 52 del código que has pasado tienes esto:


$mensaje 
str_replace(" ","",trim(stripSlashes($_POST['mensaje'])));


Intentaria hacer debug printando $mensaje a ver si estas capturando la variable mensaje de $_POST.

Por otro lado comprueba que la constante _MESSAGE exista.

No has dado mucha más información, es todo lo que puedo ayudar.
A veces hay que dejar terminar cosas buenas para que empiecen mejores, How I Met Your Mother

Desconectado Kronix

  • PHPerit@
  • *
  • Mensajes: 2
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Re:[Ayuda] MiniChat v6.0 - Error enviar mensajes.
« Respuesta #2 en: 27 de Abril de 2017, 02:01:37 am »
Ya solucione, muchas gracias la verdad no se mucho de PHP, pero descargue otro MiniChat que esta en este foro y cambie el archivo que me daba error y se soluciono, ahora funciona perfecto... Pueden verlo en www.KronixRadio.com