Comunidad PHPeros
Lenguajes => Aplicaciones Pre-Fabricadas => Minichat o MC => Mensaje iniciado por: callosino en 01 de Noviembre de 2006, 20:52:01 pm
-
El error es este:
Parse error: parse error, unexpected T_ELSE in /home/webcindario/felipeadrian/MC/funciones.php on line 374
y no se donde es, aqui teneis el funciones:
<?
function estaBaneado($ip) {
$query = "SELECT * FROM `baneos` WHERE ip = '$ip'";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);
if ($rows) {
$ban = @mysql_fetch_array($resp);
if ($ban['desbanear'] == 0)
return true;
else {
$actual = time();
if ($ban['desbanear'] <= $actual) {
$query = "DELETE FROM `baneos` WHERE ip = '$ip'";
@mysql_query($query);
return false;
} else
return true;
}
} else
return false;
}
function actualizarIps($esperar) {
$fecha2 = microtime();
$fecha2 = explode(" ", $fecha2);
$fecha2 = $fecha2[1];
$query = "SELECT * FROM `flood`";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);
if ($rows)
while ($flood = @mysql_fetch_array($resp)) {
$difseg = $fecha2 - $flood['tiempo'];
if ($difseg >= $esperar)
$query2 = "DELETE FROM `flood` WHERE ip = '".$flood['ip']."'";
@mysql_query($query2);
}
}
function actualizarIp($fecha, $ip) {
$query = "SELECT * FROM `flood` WHERE ip = '$ip'";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);
if (!$rows)
$query = "INSERT INTO `flood` (ip, tiempo) values ('".$ip."', '".$fecha."')";
else
$query = "UPDATE `flood` set tiempo = '".$fecha."' WHERE ip = '".$ip."'";
@mysql_query($query);
}
function validarIp($ip) {
if (!is_string($ip))
return false;
$ip_long = ip2long($ip);
$ip_reverse = long2ip($ip_long);
if ($ip == $ip_reverse)
return true;
else
return false;
}
function yaExiste($login) {
$query = "SELECT * FROM `usuarios` WHERE nick = '$login'";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);
if (!$rows)
return false;
else
return true;
}
// Verifica que existe un usuario y que su password es el indicado
function comprobarNick($login, $pas) {
global $activarReg;
$pas = md5($pas);
$query = "SELECT * FROM `usuarios` WHERE nick = '".$login."'";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);
if ($rows) {
$usuario = @mysql_fetch_array($resp);
if ($activarReg == "on" && $usuario['rol'] == "0") {
if ($usuario['pass'] == $pas)
return $usuario['nick'];
else
return "-1";
}
if ($usuario['rol'] == "Owner"
|| $usuario['rol'] == "Tecnico"
|| $usuario['rol'] == "Moderador"
|| $usuario['rol'] == "Rubi"
|| $usuario['rol'] == "Zafiro"
|| $usuario['rol'] == "Bronze") {
if ($usuario['pass'] == $pas)
return $usuario['nick'];
else
return "-1";
}
}
return "0";
}
function guardar($user, $pas, $email) {
$id = "";
$query = "INSERT INTO `usuarios` (id, nick, rol, pass, fecha_registro, censuras, email) VALUES ('".$id."', '".$user."', '0', '".md5($pas)."', '".date("d.m.y, H:i:s")."', 0, '".$email."')";
@mysql_query($query);
}
// Verifica que existe un usuario y un admin
function existeUser($login, $rol, $id) {
global $activarReg;
$query = "SELECT * FROM `usuarios` WHERE nick = '".strtolower($login)."'";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);
if ($rows)
$user = @mysql_fetch_array($resp);
if ($activarReg == "on") {
if ($rows && $user['rol'] == "0")
return true;
}
if ($rol == "Owner" && $rows && $user['rol'] == "Owner" && $user['id'] != $id)
return true;
if ($rol == "Tecnico" && $rows && $user['rol'] == "Tecnico" && $user['id'] != $id)
return true;
if ($rol == "Zafiro" && $rows && $user['rol'] == "Zafiro" && $user['id'] != $id)
return true;
if ($rol == "Moderador" && $rows && $user['rol'] == "Moderador" && $user['id'] != $id)
return true;
if ($rol == "Rubi" && $rows && $user['rol'] == "Rubi" && $user['id'] != $id)
return true;
if ($rol == "Bronze" && $rows && $user['rol'] == "Bronze" && $user['id'] != $id)
return true;
return false;
}
// Busca el Rango identificativo del admin
function idenAdmin($login) {
$query = "SELECT * FROM `usuarios` WHERE nick = '$login'";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);
$usuario = @mysql_fetch_array($resp);
if (!$rows)
return -1;
else
return $usuario['rol'];
}
// Busca el numero identificativo del admin
function idAdmin($login) {
$query = "SELECT * FROM `usuarios` WHERE nick = '$login'";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);
$usuario = @mysql_fetch_array($resp);
if (!$rows)
return -1;
else
return $usuario['id'];
}
// Verifica si es uno de los administradores
function esAdmin($login) {
$query = "SELECT * FROM `usuarios` WHERE nick = '$login'";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);
$usuario = @mysql_fetch_array($resp);
if ($usuario['rol'] == "Owner"
|| $usuario['rol'] == "Tecnico"
|| $usuario['rol'] == "Moderador"
|| $usuario['rol'] == "Zafiro"
|| $usuario['rol'] == "Rubi"
|| $usuario['rol'] == "Bronze")
return true;
else
return false;
}
// Verifica si es el SUPERadministrador
function esSuperAdmin($login) {
$query = "SELECT * FROM `usuarios` WHERE nick = '$login'";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);
$usuario = @mysql_fetch_array($resp);
if ($usuario['rol'] == "Owner")
return true;
else
return false;
}
// Función para reemplazar los códigos por su respectivo smilie
function reemplazarSmilies($palabra) {
$query = "SELECT * FROM `smilies`";
$resp = @mysql_query($query);
$rows = @mysql_num_rows($resp);
if ($rows) {
while ($placa = @mysql_fetch_array($resp))
$palabra = str_replace($placa['codigo'] ,"<img src=".$placa['imagen']." align=middle>", $palabra);
}
return $palabra;
}
function bbcode($texto) {
$texto = eregi_replace("\\[u\\]([^\\[]*)\\[/u\\]","<u>\\1</u>", $texto);
$texto = eregi_replace("\\[i\\]([^\\[]*)\\[/i\\]","<em>\\1</em>", $texto);
$texto = eregi_replace("\\[b\\]([^\\[]*)\\[/b\\]","<strong>\\1</strong>", $texto);
return $texto;
}
function arrayCensura() {
$query = "SELECT * from censuras";
$resp = @mysql_query($query);
$palabras = array();
$i = 0;
while ($palabras[$i] = @mysql_fetch_array($resp)) {
$palabras[$i] = $palabras[$i]['palabra'];
$i ++;
}
return $palabras;
}
function arrayCaracteres() {
$query = "SELECT * from caracteres";
$resp = @mysql_query($query);
$palabras = array();
$i = 0;
while ($palabras[$i] = @mysql_fetch_array($resp)) {
$palabras[$i] = $palabras[$i]['caracter'];
$i ++;
}
return $palabras;
}
function guardarMensaje($login, $texto, $web, $ipLogin) {
global $maximo, $existeNick, $activarIp, $activarHora, $maxMsg, $activarBBcode, $mensajes,
$maxNick, $colorowners, $colormoderador, $colorvip, $coloranonimo, $colorrubi, $colorzafiro,
$colorbronze, $activarAutomensaje, $tAutomensaje;
if (strlen($login) > $maxNick)
return _NEXCEEDSLIMITCHARS;
if (strlen($texto) > $maxMsg)
return _MEXCEEDSLIMITCHARS;
$login = htmlentities($login);
// No permitir etiquetas HTML, ni espacios en blanco en el nick
$login = reemplazarSmilies($login);
$web = htmlentities($web);
// Aquí vamos a procesar el mensaje palabra por palabra para que ninguna
// sea demasiado larga y destroce el diseño
// Dividimos el mensaje por palabras
$palabrasm = explode(" ",$texto);
// Contamos cuantas palabras son
$numpalabras = count($palabrasm);
// Bucle "for" para recorrer las palabras y dividirlas si hay alguna larga
for ($i = 0; $i < $numpalabras; $i++) {
// Comparamos la longitud de las palabras con el máximo
if (strlen($palabrasm[$i]) > $maximo) {
// Dividimos las palabras que excedan el máximo
$palabrasm[$i] = wordwrap($palabrasm[$i], $maximo, "<br>", 1);
$palabrasm[$i] = htmlentities($palabrasm[$i]);
$palabrasm[$i] = str_replace("<","<", $palabrasm[$i]);
$palabrasm[$i] = str_replace(">",">", $palabrasm[$i]);
} else
$palabrasm[$i] = htmlentities($palabrasm[$i]);
$palabrasm[$i] = reemplazarSmilies($palabrasm[$i]);
} // Fin bucle "for"
$palabras = arrayCensura();
if ($palabras[0] != "") {
for ($i = 0; $i < sizeof($palabrasm); $i ++)
for ($j = 0; $j < (sizeof($palabras) - 1); $j ++) {
if (eregi($palabras[$j], $palabrasm[$i])) {
$palabrasm[$i] = "****";
if (isset($_SESSION['nnick'])) {
$query = "UPDATE `usuarios` SET censuras = censuras + 1 WHERE nick ='".$_SESSION['nnick']."'";
@mysql_query($query);
}
}
}
}
$caracteres = arrayCaracteres();
if ($caracteres[0] != "") {
for ($i = 0; $i < sizeof($palabrasm); $i ++)
for ($j = 0; $j < (sizeof($caracteres) - 1); $j ++) {
if (eregi($caracteres[$j], $palabrasm[$i])) {
$palabrasm[$i] = "";
if (isset($_SESSION['nnick'])) {
$query = "UPDATE `usuarios` SET censuras = censuras + 1 WHERE nick ='".$_SESSION['nnick']."'";
@mysql_query($query);
}
}
}
}
// Unimos las palabras mediante espacios vacíos para crear el mensaje
$texto = implode(" ",$palabrasm);
if ($texto == "")
return _NOMESSAGE;
if ($palabras[0] != "") {
for ($i = 0; $i < (sizeof($palabras) - 1); $i ++) {
if (eregi($palabras[$i],$login)) {
$login = "****";
if (isset($_SESSION['nnick'])) {
$query = "UPDATE `usuarios` SET censuras = censuras + 1 WHERE id ='".$_SESSION['nnick']."'";
@mysql_query($query);
}
}
}
}
if ($caracteres[0] != "") {
for ($i = 0; $i < (sizeof($caracteres) - 1); $i ++) {
if (eregi($caracteres[$i], $login)) {
$login = "";
if (isset($_SESSION['nnick'])) {
$query = "UPDATE `usuarios` SET censuras = censuras + 1 WHERE id ='".$_SESSION['nnick']."'";
@mysql_query($query);
}
}
}
}
if ($login == "")
return _NONICK;
if ($activarBBcode == "on")
$texto = bbcode($texto);
// Fecha en la que se envió el mensaje
$fecha .= " "._AT." ";
$fecha .= Date("H:i");
if ($existeNick == "true") {
$rol = idenAdmin($login);
if ($rol == "Owner")
$color= $colorowner;
else if ($rol == "Tecnico")
$color= $colortecnico
else if ($rol == "Moderador")
$color = $colormoderador;
else if ($rol == "Zafiro")
$color = $colorzafiro;
else if ($rol == "Bronze")
$color = $colorbronze;
else if ($rol == "Rubi")
$color = $colorrubi;
else if ($rol == "0")
$color = $colorvip;
// Comprobamos si no quiere mostrar placa, y activamos el autoplacas
if ($ocultarplaca != "si"){
if ($placasAutomaticas == "on") {
if ($rol == "Moderador")
$anadir = "es";
else
$anadir = "s";
$b = $rol."".$anadir;
$sql = "SELECT imagen FROM smilies WHERE mostrar = '$b'";
$resp = mysql_query($sql);
$rows = mysql_num_rows($resp);
if ($rows) {
$placa = mysql_fetch_array($resp);
$placa = $placa['imagen'];
$texto = "<img border=\"0\" src=\"".$placa."\" style=\"float: left\">".$texto;
}
}
}
if ($rol == "Owner") {
$color = $colorowners;
$texto = "<img src=\"http://felipeadrian.webcindario.com/MC/img/lyg3061fn.gif\">".$texto;
} else if ($rol == "Tecnico") {
$color = $colortecnico;
$texto = "<img src=\"http://felipeadrian.webcindario.com/MC/img/lyg3061fn.gif\">".$texto;
} else if ($rol == "Moderador") {
$color = $colormoderador;
$texto = "<img src=\"http://felipeadrian.webcindario.com/MC/img/badge_staff.gif\">".$texto;
} else if ($rol == "Zafiro"){
$color = $colorzafiro;
$texto = "<img src=\"http://felipeadrian.webcindario.com/MC/img/p.gif\">".$texto;
} else if ($rol == "Bronze"){
$color = $colorbronze;
$texto = "<img src=\"http://felipeadrian.webcindario.com/MC/img/b.gif\">".$texto;
} else if ($rol == "Rubi"){
$color = $colorrubi;
$texto = "<img src=\"http://felipeadrian.webcindario.com/MC/img/lyg3061fn.gif\">".$texto;
} else if ($rol == "0") {
$color = $colorvip;
$texto = "<img src=\"http://felipeadrian.webcindario.com/MC/img/badge_vampireopen.gif\">".$texto;
}
$query = "SELECT * FROM `usuarios` WHERE nick = '".$login."'";
$resp = @mysql_query($query);
$usuario = @mysql_fetch_array($resp);
$user_id = $usuario['id'];
$login = "";
$query = "UPDATE `usuarios` SET mensajes = mensajes + 1 WHERE id ='" .$user_id. "'";
@mysql_query($query);
} else {
$color = $coloranonimo; // anonimo
$user_id = -1;
}
$query = "UPDATE `configuracion` SET valor = valor + 1 WHERE campo = 'total_mensajes'";
@mysql_query($query);
$id = "";
$tiempo = microtime();
$tiempo = explode(" ", $tiempo);
$tiempo = $tiempo[1];
$query = "INSERT INTO mensajes (id, usuario, texto, web, color, ip, fecha, nombre, tiempo) VALUES ('".$id."', '".$user_id."', '".$texto."', '".$web."', '".$color."', '".$ipLogin."', '".$fecha."', '".$login."', '".$tiempo."')";
@mysql_query($query);
if ($activarAutomensaje == "on") {
$query = "SELECT * FROM `automensaje` WHERE id = '1'";
$resp = @mysql_query($query);
$automensaje = @mysql_fetch_array($resp);
$fecha1 = $automensaje['ultimo'];
$fecha2 = microtime();
$fecha2 = explode(" ", $fecha2);
$fecha2 = $fecha2[1];
if (($fecha2 - $fecha1) >= $tAutomensaje) {
$id = "";
$fecha .= " "._AT." ";
$fecha .= Date("H:i");
$query = "INSERT INTO mensajes (id, usuario, texto, web, color, ip, fecha, nombre, tiempo) VALUES ('".$id."', '-1', '".$automensaje['texto']."', 'http://www.diver-habbo.net/', '#cc0000', '', '".$fecha."', 'InfoMensaje', '".$tiempo."')";
@mysql_query($query);
$query = "UPDATE `automensaje` set ultimo = '".$fecha2."' WHERE id = '1'";
@mysql_query($query);
}
}
return "";
}
?>
Haber quien lo sabe.
-
Postea aqui la linea 374 plis. Gracias!
-
Aora mismo no dispongo de ningun programa que me diga cual es la linea 374, en cuanto tenga el Dreamweaver que hay si que sale os lo digo ;)
-
Ok, pero de toas, maneras dime cuantos rangos añadiste y el nombre del rango, y te creo el funciones.pp y lo pruebas a ver que tal.
-
Solo añadi el rango Tecnico, que lo pongo justo abajo de Owner, porque quiero hacerlo SUPERadminitrador, ah pon lo de las placas auto ;)
Muchas Gracias
-
El codigo que tu deberias utilizar seria:
// Fecha en la que se envió el mensaje
$fecha .= " "._AT." ";
$fecha .= Date("H:i");
if ($existeNick == "true") {
$rol = idenAdmin($login);
// Comprobamos si no quiere mostrar placa, y activamos el autoplacas
if ($ocultarplaca != "si"){
if ($placasAutomaticas == "on") {
if ($rol == "Moderador")
$anadir = "es";
else
$anadir = "s";
$b = $rol."".$anadir;
$sql = "SELECT imagen FROM smilies WHERE mostrar = '$b'";
$resp = mysql_query($sql);
$rows = mysql_num_rows($resp);
if ($rows) {
$placa = mysql_fetch_array($resp);
$placa = $placa['imagen'];
$texto = "<img border=\"0\" src=\"".$placa."\" style=\"float: left\">".$texto;
}
}
}
if ($rol == "Owner") {
$color = $colorowners;
$texto = "<img src=\"owner.gif\">".$texto;
} else if ($rol == "Moderador") {
$color = $colormoderador;
$texto = "<img src=\"z.gif\">".$texto;
} else if ($rol == "Zafiro"){
$color = $colorzafiro;
$texto = "<img src=\"p.gif\">".$texto;
} else if ($rol == "Tecnico"){
$color = $colortecnico;
$texto = "<img src=\"tecnico.gif\">".$texto;
} else if ($rol == "Bronze"){
$color = $colorbronze;
$texto = "<img src=\"b.gif\">".$texto;
} else if ($rol == "Rubi"){
$color = $colorrubi;
$texto = "<img src=\"r.gif\">".$texto;
} else if ($rol == "0") {
$color = $colorvip;
$texto = "<img src=\"vips.gif\">".$texto;
}
-
eso es el placas autos, pero el problema ya esta solucionado gracias
-
de nada ;)
-
Los colores si los tengo bien pero ala hora de Iniciar seccion con el user ya con el rango no lo reconose y no se conecta a que se debera o que archivo sera
-
Aora mismo no dispongo de ningun programa que me diga cual es la linea 374, en cuanto tenga el Dreamweaver que hay si que sale os lo digo ;)
PHP Designer ;) Es gratuito y muy muy bueno, Lo recomiento.
-
Caha, revisa los archivos. si a un rango le pusiste Coordinador, no le pongas coordinador. Siempre si lo pones el MAYUSCULa la primera letra, en todos los sitios, igual.