epelpad

Chat en PHP ( Básico )

Muy buenas Taringueros.

Chat en PHP ( Básico )

Bienvenido a todo sobre PHP.


Que crearemos ?
Crearemos un sencillo chat, crearemos un inicio de sesion y un registro de usuarios para ponerlo mas interesante, tambien crearemos un rango ( Admin ), un sistema de baneo, un sistema de publicar un mensaje de bienvenida, otorgar privilegios a un usuario ( convertirlo en admin ).El chat estará situado con un iframe, es algo obsoleto pero te servirá para que aprendas mucho. Tambien detectaremos si el usuario esta conectado o desconectado, esto lo interpretaremos con 1 y 0, 1 = Online y 0 = Offline.

Que necesitamos ?
Necesitamos un interpretador de php ( Apache ) y conocimientos basicos de programación. Y si se te facilita un editor de texto avanzado como notepad++, netbeans 7.0, etc.

Bueno manos a la obra !!


Primero que todo aclaro algo si tienes Xampp, debes crear los archivos .php dentro de la carpeta htdocs, si usas appserv guardas los ficheros en la carpeta www para que puedan ser publicados y vistos en la dirección http://localhost/. creamos un archivo llamado index.php, este inicio tendra un formulario de registro en html aquí está:

index.php

<html>
<head>
<title>Registro</title>
</head>
<body>
<h1>Bienvenido</h1>
<form method="POST" action="regis_user.php">
<br>
Nombre<br>
<input type="text" name="nombre" size=20>
<br>
Apellidos
<br>
<input type="text" name="apellidos" size=20>
<br>
Login
<br>
<input type="text" name="login" size=20>
<br>
Password
<br>
<input type="password" name="pass1" size=20>
<br>
Re-Password
<br>
<input type="password" name="pass2" size=20>
<br>
Email
<br>
<input type="text" name="email" size=20>
<br>
<input type="submit" value="Enviar">
<br>
</form>
<label><a href="login.php">Ya estas registrado?</a></label>


Como ven este formulario se esta dirigiendo a un archivo llamado "regis_user.php", este archivo se encargara de inyectar al usuario a la base de datos. PERO QUE ..... NO HEMOS CREADO LA BASE DE DATOS!!, sencillo en tu phpmyadmin crea una base de datos llamada "sistemas" y en sql inserta el siguiente código:

CREATE TABLE `bienvenida` (
   `mensaje` varchar(400) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;


CREATE TABLE `mensajes` (
  `id` int(2) NOT NULL auto_increment,
  `alias` varchar(20) NOT NULL,
  `mensaje` varchar(120) NOT NULL,
  `ip` varchar(20) NOT NULL,
  `fecha` varchar(20) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=24 ;

CREATE TABLE `usuarios` (
  `id` int(4) NOT NULL auto_increment,
  `nombre` text,
  `apellidos` text,
  `login` varchar(40) NOT NULL,
  `password` varchar(80) NOT NULL,
  `email` text,
  `estado` int(11) NOT NULL default '0',
  `banned` int(11) NOT NULL default '0',
  `rango` int(11) NOT NULL default '0',
  UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;


Perfecto!!! ahora si podremos continuar con nuestro chat, en que íbamos?...... ah si "regis_user.php" este se encargara de inyectar en la base de datos los datos puestos por el usuario en el formulario anterior. el codigo de este archivo es el siguiente:

regis_user.php:
<?php
include("config.php");
$nombre htmlspecialchars(trim($_POST['nombre']));
$apell htmlspecialchars(trim($_POST['apellidos']));
$login htmlspecialchars(trim($_POST['login']));
$pass1 trim($_POST['pass1']);
$pass2 trim($_POST['pass2']);
$email htmlspecialchars(trim($_POST['email']));
$link mysql_connect($datos[0],$datos[1],$datos[2]);
$query sprintf("SELECT login FROM usuarios WHERE usuarios.login='%s'",
mysql_real_escape_string($login));
$result mysql_db_query($datos[3],$query,$link);
if(
mysql_num_rows($result)){
    echo 
"usuario ya existente, porfavor intentalo de nuevo.";
} else {
mysql_free_result($result);
if(
$pass1 != $pass2){
echo 
"Los passwords deben coincidir, por favor intentalo de nuevo.";
} else {
$pass1 sha1(md5($pass1));
$query sprintf("INSERT INTO usuarios (nombre, apellidos, login, password, email) VALUES ('%s','%s','%s','%s','%s')",
mysql_real_escape_string($nombre) , mysql_real_escape_string($apell),
mysql_real_escape_string($login) , mysql_real_escape_string($pass1),
mysql_real_escape_string($email));
$result mysql_db_query($datos[3],$query,$link);
if(
mysql_affected_rows()){
echo 
"usuario introducido correctamente.<br>";
echo 
"<a href='login.php'>Iniciar Sesi&oacute;n</a>";
} else {
echo 
"Error introduciendo el usuario";
}
}
}
?>


Pero como ven estamos incluyendo un archivo llamado "config.php" este se encarga de la contraseña, el nombre de usuario y el nombre de la base de datos, el codigo es el siguiente :

config.php

<?php
$datos 
= array('0' => 'localhost',
              
'1' => 'root',
              
'2' => 'password',
              
'3' => 'sistemas');
?>



Bien ahora creamos el archivo que permitira que si una persona ya esta registrada pueda ingresar al chat, llamaremos este archivo "login.php" y el codigo será el siguiente.

login.php

<?php
session_start
();
if(isset(
$SESSION)){
header("Location:usuarios.php");
} else {
?>
<h1>Identificacion</h1>
<form action="inicio_sesion.php" method="post">
login:
<br>
<input type="text" name="login">
<br>
Password:
<br>
<input type="password" name="pass">
<br>
<input type="submit" value="Ingresar">
</form>
<label><a href="index.php">Deseas registrarte?</a></label>
<?php
}
?>


Bien anteriormente en "login.php" vemos que es un formulario de ingreso pero tenemos un condicional (if) este lo que hace es verificar si la persona que ingrese a esta seccion esta logeada o no, si lo esta lo mandara a la zona de usuarios y si no lo esta pedira que por favor se identifique.

Bien ahora crearemos otro archivo llamado "inicio_sesion.php" este lo que hará es verificar si el usuario esta registrado en la base de datos y si lo esta su sesion estara iniciada, el codigo de este archivo es :

inicio_sesion.php

<?php
session_start
();
include(
"config.php");
$login htmlspecialchars(trim($_POST['login']));
$pass sha1(md5(trim($_POST['pass'])));
$link mysql_connect($datos[0],$datos[1],$datos[2]);
$query sprintf("SELECT nombre,apellidos,login,password,email FROM usuarios WHERE login='%s'and password='%s'",
mysql_real_escape_string($login), mysql_real_escape_string($pass));
$result mysql_db_query($datos[3],$query,$link);
if(
mysql_num_rows($result)){
$array mysql_fetch_array($result);
$_SESSION["login"] = $array["login"];
$_SESSION["nombre"] = $array["nombre"];
$_SESSION["apellidos"] = $array["apellidos"];
$_SESSION["email"] = $array["email"];
header("Location:user.php");
} else {
echo 
"Login o password incorrectos.";
}

?>



Ahora crearemos la pagina principal que contendrá todo, esta pagina la llamo "user.php" esta pagina tendra todo el chat y si es administrador un pequeño panel administrativo,, tambien enviara a la base de datos un 1 para indicar que el usuario esta conectado. El código de este archivo es :

user.php

<?php
session_start
();
include(
"config.php");
mysql_connect($datos[0],$datos[1],$datos[2]);
mysql_select_db($datos[3]);
$bd "SELECT banned FROM usuarios WHERE login='".$_SESSION['login']."'";
$rank "SELECT rango FROM usuarios WHERE login='".$_SESSION['login']."'";
$res mysql_query($rank);
$rango mysql_fetch_array($res);
$result mysql_query($bd);
$ban mysql_fetch_array($result);
if(
$ban["banned"] == 0){
if(!isset(
$_SESSION)){
header("Location:login.php");
} else {
echo 
"";
echo 
"<h1>Pagina Principal</h1>";
echo 
"Bienvenido a la zona de usuarios :<strong>";
echo 
$_SESSION["nombre"]." ".$_SESSION["apellidos"]."<br>";
echo 
"</strong> Has ingresado con el nick : <strong> ";
echo 
$_SESSION["login"];
echo 
"</strong><br>";
echo 
"<a href='logout.php'>Cerrar Sesion</a>";
echo 
"";
}
$sql "UPDATE usuarios SET estado=1 WHERE login='".$_SESSION['login']."'";
mysql_query($sql);
?>
<title>Bienvenido</title>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="400"><iframe src="mensajes.php" width="700" height="300" scrolling="no"></iframe></td>
</tr>
<tr>
<td align="center"><form id="form1" name="form1" method="post" action="ejecutar.php">
<label></label>
<label></label>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<label>
<?php $alias $_SESSION['login']; echo $alias." dice :"?>
</label></td>
<td bgcolor="#FFFFFF">Mensaje<br>
    <script>
    contenido_textarea = ""
    num_caracteres_permitidos = 100
    
    function valida_longitud(){
        num_caracteres = document.forms[0].mensaje.value.length 

   if (num_caracteres > num_caracteres_permitidos){ 
      document.forms[0].mensaje.value = contenido_textarea 
   }else{ 
      contenido_textarea = document.forms[0].mensaje.value    
   } 

   if (num_caracteres >= num_caracteres_permitidos){ 
      document.forms[0].caracteres.style.color="#ff0000"; 
   }else{ 
      document.forms[0].caracteres.style.color="#000000"; 
   } 

   cuenta() 

function cuenta(){ 
   document.forms[0].caracteres.value=document.forms[0].mensaje.value.length 

    
    </script>
<textarea name="mensaje" cols="40" rows="5" onKeyDown="valida_longitud()" onKeyUp="valida_longitud()"></textarea>
<br> <input type="text" name=caracteres size=4><br>
<input type="submit" name="submit" value="Enviar">
</td>
</tr>
</table>
</form></td>
</tr>
</table>
<?php
if($rango['rango'] >= 5){
echo 
"Panel Administrativo.<br>";
echo 
"Que deseas realizar?<br>";
?>
<i>Recuerda escribir todo con exactitud.<br></i>
<form method="post">
<select name="sel">
<option selected>Elejir</option>
<option>Banear una cuenta</option>
<option>Dar rango</option>
<option>Cambiar mensaje de bienvenida</option>
</select><br>
Nick :<input type="text" name="nick" size="10"><br>
Valor :<input type="text" name="valor" size="10"><br>
<input type="submit" value="Realizar"><br>
<?php
$nick 
$_POST['nick'];
$valor $_POST['valor'];
$sel $_POST['sel'];
switch(
$sel){
case(
"Banear una cuenta"):
$sql "UPDATE usuarios SET banned='".$valor."' WHERE login='".$nick."'";
mysql_query($sql);
echo 
"El usuario ".$nick." ah sido baneado con exito.";
break;
case(
"Dar rango"):
$sql "UPDATE usuarios SET rango='".$valor."' WHERE login='".$nick."'";
mysql_query($sql);
echo 
"El usuario ".$nick." se le ah asignado nivel ".$valor;
break;
case(
"Cambiar mensaje de bienvenida"):
$sql "UPDATE bienvenida SET mensaje='".$valor."'"
mysql_query($sql);
echo 
"Mensaje de bienvenida cambiado a <font color='green'>".$valor."</font>.";
break;
default:
echo 
"Selecciona porfavor";
}
echo 
"</form>";
}
?>
<?php
}else{
    echo 
"La cuenta ah sido baneada por motivos de seguridad.<a href='index.php'>Regresar</a>";
}
?>



Ahora creamos otro archivo llamado "ejecutar.php" este se encarga de recibir los mensajes que los usuarios envien y guardarlos en una base de datos eh aquí el código:

ejecutar.php

<?php
session_start
();
$mensaje=$_POST['mensaje'];
$alias $_SESSION['login'];
$ip=$_SERVER['REMOTE_ADDR'];
$fecha=date("H-i-s");
if(
$alias!="" and $mensaje!="") {
mysql_connect("localhost","root","28927420");
mysql_select_db("sistemas");
mysql_query("insert into mensajes(alias,mensaje,ip,fecha) values('$alias','$mensaje','$ip','$fecha')");
$conteo=mysql_query("select count(*) from mensajes group by fecha");
$primero=mysql_query("select min(id) from mensajes");
$repri=mysql_result($primero,0);
$registros=mysql_num_rows($conteo);
if(
$registros>15) {
mysql_query("delete from mensajes where id=$repri");
}
}
header("Location:user.php");
?>




Ahora crearemos un archivo que se llame "mensajes.php" este se encarga de llamar de la base de datos los mensajes que los usuarios envían y los imprime. el código aquí:

mensajes.php

<?php
session_start
();
include(
"config.php");
mysql_connect($datos[0],$datos[1],$datos[2]);
mysql_select_db($datos[3]);
header('refresh:2; url=mensajes.php');
?>
<link href="estilo.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
body {
    background-color: #CDC1C5;
}
-->
</style><table width="202" border="0" cellspacing="0" cellpadding="0">
Sala principal...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<?php
$sql 
"SELECT * FROM bienvenida";
$query mysql_query($sql);
$bnv mysql_fetch_array($query);
echo 
"<font color='red'>".$bnv[0]." </FONT>--<font color='green'> ".$_SESSION['login']."</font>";
?>
<hr>
  <tr>
    <td width="202">
   <?php
                $rank 
"SELECT rango FROM usuarios WHERE login='".$_SESSION['login']."'";
                
$res mysql_query($rank);
                
$rango mysql_fetch_array($res);
        
$re=mysql_query("select * from mensajes order by id desc");
                
        while(
$f=mysql_fetch_array($re)){
                
        echo 
"<scpan class='fecha'></span>".$f['fecha']."&nbsp;&nbsp;<span class='usuario'>".$f['alias']."</span>:&nbsp;&nbsp;&nbsp;<span class='mensaje'>".htmlentities($f['mensaje'])."</span><br>";
        
                }
                
        
?></td>
  </tr>
</table>



Le daré un poquito de diseño con css, la verdad soy muy malo cuando se trata de diseño asi que por eso es algo muy sencillo el archivo css se llamara "estilo.css" y su código es:

estilo.css

.fecha {
font-family: Arial, Helvetica, sans-serif;
font-size: 10px;
color: #000000;
}
.mensaje {
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
color: #000000;
}
.usuario {
font-family: Arial,Helvetica, sans-serif;
font-size: 11px;
color: #000000;
font-weight: bold;
}
.fechagm {
font-family: Arial, Helvetica, sans-serif;
font-size: 10px;
color: #FF0000;
}
.mensajegm {
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
color: orange;
}
.usuariogm {
font-family: Arial,Helvetica, sans-serif;
font-size: 11px;
color: #3D9140;
font-weight: bold;
}



Bien ahora para terminar crearemos el ultimo archivo y es el que hará que el usuario destruya su sesion y mande a la base de datos que esta desconectado(0 = offline), este archivo lo llamo "logout.php" y su código es :

logout.php

<?php
session_start
();
if(!isset(
$_SESSION)){
header("Location:login.php");
} else {
include(
"config.php");
mysql_connect($datos[0],$datos[1],$datos[2]);
$db mysql_select_db($datos[3]);
$sql "UPDATE usuarios SET estado=0 WHERE login='".$_SESSION['login']."'";
mysql_query($sql);
session_unset();
session_destroy();
echo 
"<center>La sesion ah sido cerrada con exito, si deseas identificarte entra <a href='login.php'>AQUI</a>";
echo 
"</center>";
}
?>


Bueno eso es todo, como saben cualquier duda o sugerencia bien y pueden hacermelo saber por comentarios, mensajes no respondo. Muchas gracias por su atención y esperen mas muy pronto .
UN EJEMPLO AQUI http://chatsistemas.260mb.com


registro


JuLiAnChz

Comentarios Destacados

JuLiAnChz +9
Subiendo un ejemplo, este chat lo hize para mis compañeros de curso, como las redes sociales tipos de chats, etc estaban bloqueados, utilizariamos este medio para darnos copia en los parciales jajajaja!

40 comentarios - Chat en PHP ( Básico )

singulargab
&lt;?php
include(&quot;config.php&quot;
$nombre = htmlspecialchars(trim($_POST['nombre']));
$apell = htmlspecialchars(trim($_POST['apellidos']));
$login = htmlspecialchars(trim($_POST['login']));
$pass1 = trim($_POST['pass1']);
$pass2 = trim($_POST['pass2']);
$email = htmlspecialchars(trim($_POST['email']));
$link = mysql_connect($datos[0],$datos[1],$datos[2]);
$query = sprintf(&quot;SELECT login FROM usuarios WHERE usuarios.login='%s'&quot;,
mysql_real_escape_string($login));
$result = mysql_db_query($datos[3],$query,$link);
if(mysql_num_rows($result)){
echo &quot;usuario ya existente, porfavor intentalo de nuevo.&quot;;
} else {
mysql_free_result($result);
if($pass1 != $pass2){
echo &quot;Los passwords deben coincidir, por favor intentalo de nuevo.&quot;;
} else {
$pass1 = sha1(md5($pass1));
$query = sprintf(&quot;INSERT INTO usuarios (nombre, apellidos, login, password, email) VALUES ('%s','%s','%s','%s','%s')&quot;,
mysql_real_escape_string($nombre) , mysql_real_escape_string($apell),
mysql_real_escape_string($login) , mysql_real_escape_string($pass1),
mysql_real_escape_string($email));
$result = mysql_db_query($datos[3],$query,$link);
if(mysql_affected_rows()){
echo &quot;usuario introducido correctamente.&lt;br&gt;&quot;;
echo &quot;&lt;a href='login.php'&gt;Iniciar Sesi&amp;oacute;n&lt;/a&gt;&quot;;
} else {
echo &quot;Error introduciendo el usuario&quot;;
}
}
}
?&gt;
pdrokpo
}
.usuario {
font-family: Arial,Helvetica, sans-serif;
font-size: 11px;
color: #000000;
font-weight: bold;
}
.fechagm {
font-family: Arial, Helvetica, sans-serif;
font-size: 10px;
color: #FF0000;
}
.mensajegm {
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
color: orange;
}
.usuariogm {
font-family: Arial,Helvetica, sans-serif;
font-size: 11px;
color: #3D9140;
font-weight: bold;
}



Bien ahora para terminar crearemos el ultimo archivo y es el que hará que el usuario destruya su sesion y mande a la base de datos que esta desconectado(0 = offline), este archivo lo llamo &quot;logout.php&quot; y su código es :

logout.php

&lt;?php
session_start();
if(!isset($_SESSION)){
header(&quot;Location:login.php&quot;
} else {
include(&quot;config.php&quot;
mysql_connect($datos[0],$datos[1],$datos[2]);
$db = mysql_select_db($datos[3]);
$sql = &quot;UPDATE usuarios SET estado=0 WHERE login='&quot;.$_SESSION['login'].&quot;'&quot;;
mysql_query($sql);
session_unset();
session_destroy();
echo &quot;&lt;center&gt;La sesion ah sido cerrada con exito, si deseas identificarte entra &lt;a href='login.php'&gt;AQUI&lt;/a&gt;&quot;;
echo &quot;&lt;/center&gt;&quot;;
F3De +3
+10
Despues lo leo mejor
drx186 +2
Podrías subir un ejemplo para verlo terminado
nicoelcoyote +1
pone el codigo para descargar, el post esta bueno, pero lo vas a poder ordenar mas que metiendo el codigo aca
leo995jojo -3
emm esta bueno pero creo que con esto no se aprende.. o sirve copiar y pegar codigos..
(no lo digo por el creador del post, si no por los que tienen ganas de aprender y piensan que copiando estos codigos sin nisiquera analizarlos los utilizan)
oskrdavis
excelente aporte, con un poco de modificaciones quedaría super..!! lo necesitaba..!! graciass..!!
stalking2114
No te Doy 10 porque se podria mejorar mas pero te doy 5 porque vi algo que no se me ha ocurrido
JuLiAnChz +1
Tienes razón. Muchas gracias igual, hace rato no posteo nada... pero haré algunos posts
Otty_Guitarras +2
si cierro el navegador, quedo siempre como conectado o no?
JuLiAnChz +1
No, es algo muy basico, como para dar ideas o una base y alguien pueda complementarlo!
Grovern
Tengo un error en: Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: YES) in C:AppServwwwphp1regis_user.php on line 9

Me puede decir cual es el problema, te lo agradecería mucho, gracias de antemano.
Grovern
Ya me ejecuta..., era cambiar el password del servicio local. Gracias amigo ehhh +10 para ti
Fiopinazo
Warning: mysql_connect(): Access denied for user 'root'@'localhost' (using password: YES) in C:xampphtdocschatinicio_sesion.php on line 6

Warning: mysql_db_query() expects parameter 3 to be resource, boolean given in C:xampphtdocschatinicio_sesion.php on line 9

Warning: mysql_num_rows() expects parameter 1 to be resource, null given in C:xampphtdocschatinicio_sesion.php on line 10
Login o password incorrectos.


que esta mal?
KevimetalPizarro
la contraseña que diste en mysql_connect esta mal y por eso te da esos errores, porque esta obteniendo datos sin autenticacion
colonix
me interesa saber como haces para que el usuario no aparesca mas como desconectado, si ha cerrado el navegador y se fue sin deslogear, he visto tu codigo a grandes rasgos y me ha servido como base para algo que estoy haciendo
colonix
como conectado, perdon
AkariAkaza
@colonix es una buena observación.
djchanto
Gracias por compartirlo (Y)
unangel86
no me funciona en localhost me sale este error:
Warning: mysql_connect(): Access denied for user 'root'@'localhost' (using password: YES) in D:xampphtdocschatregis_user.php on line 9
negritos8
fijate en php myadmin como se llama tu base de datos bien hermano y luego en config .php le pones el nombre tal cual te lo muestra en phpmy admin
negritos8 +1
Hola. oyes algun libro que sirva de referencia de el codigo del chat??
ahi te van los 10 de mi dia
JuLiAnChz
No, pero puedes documentarte en google con las cosas que necesitas!
lovemix
oye agregame vamos hacer negocios
negritos8
OYES MAN EL METODO DE ENCRIPTACION NO SABES COMO SE QUITA ES QUE LO CONSULTO DESDE PHPMYADMIN Y ME APARECE ENCRIPTADO
AkariAkaza
<?php echo sha1(md5(trim("Escribe aquí'tu contraseña nueva"));?>

luego miras en el navegador que te sale y luego copias y pegas eso en la base de datos donde esta tu contraseña cifrada y lo cambias por el nuevo (no dejes espacios) que te sale con lo que te escribí arriba y lo guardas.
elfamosonegro
oye hermano, gracias por compartir esto, lo probe y anda fino con mi db, claro simple pero con algo de estilo se vera bien lo andaba buscando, mil gracias parce +10
nccpwifi
Buenas quien me puede ayudar con este error que me arroja el chat agradezco de antemano

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /home/fvmhy7/public_html/diarioc/assets/regis_user.php on line 14

Warning: mysql_free_result() expects parameter 1 to be resource, boolean given in /home/fvmhy7/public_html/diarioc/assets/regis_user.php on line 17
usuario introducido correctamente.
Iniciar Sesión
ignachobal
oie amigo todo funciona bien, solo que los mensajes no se imprimen o no se insertan ey por eso no sale nada,
para mi es lo segundo porque despues de escribir algo y enviarlo, checo en la base de datos en la tabla mensajes y no hay nada
porfa dime cual es el problema
rogmariop
Eso que no conecta es por que nuestro amigo se olvido de solo invocar las variables de coneccion y las re define en ejecutar.php

mysql_connect("localhost","root","28927420";
mysql_select_db("sistemas";

Alli debería jalar las variables definidas en el archivo config
nccpwifi
Buenas gracias por el aporte todo inicio bien pero me sale este error Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/fvmhy7/public_html/chat/login.php:23) in /home/fvmhy7/public_html/chat/login.php on line 24 podrian decirme como lo soluciono? gracias de antemano
JuLiAnChz +1
marcale un @ al session_start(); y me cuentas. Queda asi: @session_start();
nccpwifi
@JuLiAnChz Gracias amigos muy amable problema resulto solo agregue el @ y listo http://social.interla.co.ve/chat/index.php asi quedo de limpio.
JuLiAnChz
@nccpwifi si, la cosa es que eso solo bloquea el error, pero no te generará ningun inconveniente!
AndrewGiraldo
Yo supongo que si se modifica un poco podria hacer una tabla de log_mensaje donde establesco el id de la tabla mensaje y una columna que establece como leido y no leido. De esa forma los leido podrian borrarse cuando se cumpla un cierta cantidad de mensajes.
basic5
para aprender lo basico esta bien..pero el chat flashea mucho y le falta un scroll para bajar y ver los mensajes y mil detalles mas..pero para propito de enseñanza esta bien
KevimetalPizarro
por algo el post se llama Chat en PHP Basico, igual agregarle las demás cosas no es para nada dificil, es solo cosa de buscar
SamuelCastro1
Tengo una duda, yo tengo phpmyadmin pero no se usarlo mucho porque soy nuevo es phpmyadmin mi duda es donde coloco el codigo de mysql?
FMGAMES
que tipo de sql es ?
AkariAkaza
Si ya no te sirve, prueba mysqli_connect agregando una " i " a todo lo que diga mysql.
blodiaks
hola amigos me manda error cuando quiero registrar usuarios

Error introduciendo el usuario

alguien me puede apoyar?
blodiaks
jajaja ya olvidenlo ya vi por que era jajajajaj gracias