Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/03/2009, 20:39
arcanisgk
 
Fecha de Ingreso: noviembre-2008
Mensajes: 279
Antigüedad: 15 años, 5 meses
Puntos: 0
Exclamación php opensource insertarle un de script adicional o funcion ayuda plz

hola amigos que tal estoy aqui por que tengo un chat open source pero el codigo de la mensajeria no lo entiendo al 100% estoy intentando anclarle un scrip a ver si me dan una manito

aqui esta el codigo de mensajeria, lo marcado en rojo es lo que llevo modificado

Primera parte


Código PHP:
<?php

// Archivo para enviar los mensajes nuevos a la
// capa de mensajes

include 'configuracion.php';
include 
'conexion.php';

unset(
$usuario);
$ahora time();
if(
substr($_GET['texto'],0,1) == '/'){
  
$comandos split(' ',substr($_GET['texto'],1,strlen($_GET['texto'])));
  
$texto '';
}
if(isset(
$_COOKIE["ident"])){
  
$sql "SELECT nombre FROM c_usuarios WHERE cookie = ".$_COOKIE["ident"];
  
$result mysql_query($sql,$db);
  if(
mysql_num_rows($result))$usuario mysql_result($result,0);
}
if(isset(
$usuario)){
  if(isset(
$comandos) && ($comandos[0] == 'logout')){
    
setcookie ("ident",""); 
    
$sql "DELETE FROM c_usuarios WHERE nombre = '$usuario'";
    
mysql_query($sql,$db);
    for(
$i=1;$i<count($comandos);$i++)$texto .= $comandos[$i].' ';
    
mysql_query("INSERT INTO c_mensajes (de,texto,time,color,para) VALUES ('','/logout $usuario $texto',".time().",'#FFFFFF','*')",$db);
  }
} else {
  if(isset(
$comandos) && ($comandos[0] == 'login')){
    if(!
ereg("^[a-zA-Z0-9_]{4,12}$",$comandos[1])){
      
$loginError 'El nombre de usuario no es válido';
    } else {
      
$sql "SELECT * FROM c_usuarios WHERE nombre LIKE '".$comandos[1]."'";
      
$q mysql_query($sql,$db);
      if(!
mysql_num_rows($q)){
        
$r1 rand(100,999);
        
$r2 rand(100,999);
        
$random $r1.$r2;
        
setcookie ("ident","$random"); 
        
mysql_query("INSERT INTO c_usuarios (nombre,time,cookie) VALUES ('".$comandos[1]."','".$ahora."',$random)",$db); 
        
$sql "INSERT INTO c_mensajes (de,texto,time,color,para) VALUES ('','/login ".$comandos[1]."',$ahora,'#FFFFFF','*')";
        
mysql_query($sql,$db);
      } else {
        
$loginError 'El nombre de usuario esta ocupado';
      }
    }
  }
}
?><html>
  <head>
    <meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
    <script languaje="javascript"><!--
<?php
if(isset($comandos)){
  switch (
$comandos[0]){
    case 
'login':
      if(isset(
$usuario))echo "    parent.am('Ya estas conectado cómo $usuario');\n";
      else {
        if(isset(
$loginError)){
          echo 
"    parent.am('$loginError');\n";
          echo 
"    parent.mn('/login ".$comandos[1]."');\n";
        }
        else {
          echo 
"    parent.am('Acabas de iniciar sesion cómo ".$comandos[1]."');\n";
          echo 
"    parent.st();\n";
          echo 
"    u = new Array(";
          
$sql="SELECT * FROM c_usuarios ORDER BY nombre";
          
$result=mysql_query($sql,$db);
          
$temp 0;
          if(
mysql_num_rows($result))while ($row=mysql_fetch_array($result)){
            if(
$temp++)echo ",";
            echo 
"'".$row['nombre']."'";
          }
          echo 
");\n";
          echo 
"    parent.ul(u);\n";
        }
      }
      break;
    case 
'logout':
      if(isset(
$usuario)){
        echo 
"    parent.am('Has sido desconectado del sistema');\n";
        echo 
"    parent.ul();\n";
        echo 
"    parent.sp();\n";
      } else echo 
"    parent.am('Para conectarte utiliza <a href=# onclick=\"mn(&quot;/login nombre&quot;)\">/login nombre</a>');\n";
      break;
    case 
'clear':
      echo 
"    parent.cl();\n";
      break;
    case 
'time':
      echo 
"    parent.am('Son las ".date("h:i:s")."');\n";
      break;
    case 
'smilies':
        echo 
"    parent.am('Los smilies disponibles són:<br>&nbsp;&nbsp;<a href=# onclick=\"mn(&quot;:)&quot;)\">Sonrisa</a><br>&nbsp;&nbsp;<a href=# onclick=\"mn(&quot;:(&quot;)\">Triste</a><br>&nbsp;&nbsp;<a href=# onclick=\"mn(&quot;:\'(&quot;)\">Llora</a><br>&nbsp;&nbsp;<a href=# onclick=\"mn(&quot;:D&quot;)\">Carcajada</a><br>&nbsp;&nbsp;<a href=# onclick=\"mn(&quot;:O&quot;)\">Sorprendido</a><br>&nbsp;&nbsp;<a href=# onclick=\"mn(&quot;:P&quot;)\">Saca la lengua</a>');\n";
      break;
    case 
'msg':
      if(isset(
$usuario)){
        for(
$i=2;$i<count($comandos);$i++)$texto .= $comandos[$i].' ';
        
$sql "INSERT INTO c_mensajes (texto,time,color,para,de) VALUES ('".htmlspecialchars(htmlspecialchars($texto))."',".time().",'".$_GET['color']."','".$comandos[1]."','$usuario')";
        
mysql_query($sql,$db);
        echo 
"    parent.mn('/msg ".$comandos[1]." ');\n";
      } else echo 
"    parent.am('Para conectarte utiliza <a href=# onclick=\"mn(&quot;/login nombre&quot;)\">/login nombre</a>');\n";
      break;
    case 
'names':
      if(isset(
$usuario)){
        
$sql="SELECT * FROM c_usuarios";
        
$result=mysql_query($sql,$db);
        if(
mysql_num_rows($result))while ($row=mysql_fetch_array($result))$lista .= '<br>&nbsp;&nbsp;<a href=# onclick=to(this)>'.$row['nombre'].'</a>';
        
$mensaje 'Lista de usuarios conectados:'.$lista;
        echo 
"    parent.am('$mensaje');\n";
      } else echo 
"    parent.am('Para conectarte utiliza <a href=# onclick=\"mn(&quot;/login nombre&quot;)\">/login nombre</a>');\n";
      break;
    case 
'whois':
      if(isset(
$usuario)){
        
$sql "SELECT nombre FROM c_usuarios WHERE nombre = '".$comandos[1]."'";
        
$result mysql_query($sql,$db);
        if(
mysql_num_rows($result)){
          
$mensaje 'El usuario '.$comandos[1].' esta conectado';
          
$url 'script.php?t='.$ahora;
        } else {
          
$mensaje 'El usuario '.$comandos[1].' no esta conectado';
          
$url 'script.php?t='.$ahora;
        }
       echo 
"    parent.am('$mensaje');\n";
      } else echo 
"    parent.am('Para conectarte utiliza <a href=# onclick=\"mn(&quot;/login nombre&quot;)\">/login nombre</a>');\n";
      break;
    case 
'kick':
      if(isset(
$usuario)){
        if(
$comandos[2] == pwd){
        
$sql "DELETE FROM c_usuarios WHERE nombre = '".$comandos[1]."'";
        
$mensaje '';
        
mysql_query($sql,$db);
        
$sql "INSERT INTO c_mensajes (texto,time,color,para) VALUES ('/logout ".$comandos[1]." baneado',".time().",'#FFFFFF','*')";
        
mysql_query($sql,$db);
        
$url 'script.php';
        } else echo 
"    parent.am('La contraseña de administrador no es correcta');\n";
      } else echo 
"    parent.am('Para conectarte utiliza <a href=# onclick=\"mn(&quot;/login nombre&quot;)\">/login nombre</a>');\n";
      break;