Foros del Web » Programando para Internet » PHP »

Mensajeria Interna

Estas en el tema de Mensajeria Interna en el foro de PHP en Foros del Web. Hola, soy nuevo en php y en este mundo, y vi el código de Camargo. Y no me da errores de sintaxy, pero me dijerón ...
  #1 (permalink)  
Antiguo 17/04/2010, 15:08
 
Fecha de Ingreso: abril-2010
Mensajes: 9
Antigüedad: 14 años
Puntos: 0
Mensajeria Interna

Hola, soy nuevo en php y en este mundo, y vi el código de Camargo. Y no me da errores de sintaxy, pero me dijerón que se podia mejorar mucho la syntaxy, y que en no me muestra los mensajes, yo tengo un sistema de login por mi, y tengo que incluirle la mensajeria no?? Pero no me muestra los Mensajes:

Aparte de esto, gracias Camargo ya que me servirá mucho si aconseguimos arrelgarlo entre la gente XD

El código de camargo:


conexion.php


Código PHP:
<?php 
$conexio 
mysql_connect("localhost","usuario","password");    
mysql_select_db ("nombrebd"$conexio) OR die ("No es posible conectarte a la BD"); 
?>
Estructura de la tabla en mysql

Cita:
CREATE TABLE mensajes (
msgid int(9) NOT NULL auto_increment,
de char(255) NOT NULL,
para char(255) NOT NULL,
asunto char(255) NOT NULL,
mensaje longtext NOT NULL,
fecha char(255) NOT NULL,
leido int(10) NOT NULL default '0',
PRIMARY KEY (msgid)
);

leer_privados.php


Código PHP:
<?php 
include("conexion.php"); //conexion a la BD MYSQL 
if($accion == "borrar"){ 
include(
"conexion.php"); 
$SQLborrar "DELETE FROM mensajes WHERE msgid IN(".implode(', '$HTTP_POST_VARS['mens']).")"
mysql_query($SQLborrar); 
echo 
"<font face=Tahoma size=2><b>Mensaje Borrado</b>"
} else { 
$sqlmysql_query("SELECT * FROM mensajes WHERE para = '$nickUsuarioL' ORDER by msgid DESC"); //aki esta la var del sistema de JLMM 
while ($row mysql_fetch_array($sql) ){ 
$asunte $row[asunto]; 
$resto substr("$asunte"040); 
$aydi $row[msgid]; 
echo 

<tr><td bgcolor=#EEEEEE width=10><font face=Tahoma size=1><input type=checkbox name=\"mens[]\" value=$aydi></font></td> 
<td bgcolor=#EEEEEE 
<font face=Tahoma color=black size=1><center><i>"
.$row["de"]."</i></center></font></td> 
<td bgcolor=#EEEEEE><a href=leer_privados2.php?id="
.$row[msgid]."><font face=Tahoma color=black size=1><u>$resto..</u></a></font></td> 
<td bgcolor=#EEEEEE width=100><font face=Tahoma color=black size=1>"
.$row["fecha"]."</font></td></tr>"

echo 
"</table><br><table width=340 align=center cellspacing=2 cellpadding=2> 
<tr><td><input type=radio name=accion value=borrar> 
<font face=Tahoma size=1> Borrar</font></td> 
<td><input type=radio name=accion value=responder> 
<font face=Tahoma size=1> Responder</font></td> 
<td><a href=enviar_privados.php> 
<font face=Tahoma size=1 color=\"black\"> <u>Enviar Mensaje</u></font></td> 
<td><input type=\"submit\" value=\"Enviar\"></td> 
</table></form>"


?>
leer_privados2.php

Código PHP:
<?php 
include("conexion.php"); // CONEXION A LA BD MYSQL 
$sqlmysql_query("SELECT * FROM mensajes WHERE msgid = '$id' AND para = '$nickUsuarioL'"); //aki esta la var de nickUsuarioL 
while ($row mysql_fetch_array($sql) ){ 
$sql2 mysql_query("UPDATE mensajes set leido=1 WHERE msgid = $row[msgid]"); 
echo 
"<table bgcolor=black cellspacing=1 cellpadding=2 width=340 border=0 align=center> 
<tr><td bgcolor=#CCCCCC width=80><font face=Tahoma size=2><b>De:</b></td> 
<td bgcolor=#EEEEEE><font face=tahoma size=2>"
.$row[de]."</td></tr> <tr><td bgcolor=#CCCCCC width=80><font face=Tahoma size=2><b>Asunto:</b> 
<td bgcolor=#EEEEEE><font face=tahoma size=2>"
.$row[asunto]."</td></tr> 
<tr><td bgcolor=#CCCCCC width=80><font face=Tahoma size=2><b>Mensaje:</b> 
<td bgcolor=#EEEEEE><font face=tahoma size=2>"
.$row[mensaje]."</td></tr> 
</table>"

}
?>

en el login.php, que muestre los mensajes suyos

Código PHP:
<?php 
$i 
1
$nuevos 0
include(
"conexion.php"); 
$query mysql_query ("SELECT * FROM mensajes order by fecha DESC"); 
while ( 
$row mysql_fetch_array($query) ) { 
    if ( 
$row['para'] == $NICK ) { //$NICK significa el valor de la sesion del usuario o la cookie.. 
if ( $row[leido] < ) { 
    
$nuevos $nuevos +1

if ( 
$row[leido] < ) { 
    
$mensajesnuevos .= "</B>"

   
$tiene "Si"
    
$i $i+1
    } 




if ( 
$nuevos == ) { 
$nuevos "Ninguno"

    if ( 
$tiene != "Si" ) { 

    echo 
"<font size=1 face=Tahoma>No tienes mensajes, $NICK";//$NICK significa el valor de la sesion del usuario o la cookie.. 

    

    else { 
    
$j $i -1
    echo 
"<font size=1 face=Tahoma>Tienes <b>$j</b> mensajes.<br><B>$nuevos</b> son nuevos."

    } 
?>

enviar_privados.php

Código PHP:
<script languaje="Javascript">
<!--
function Smile(texto){
 document.form.mensaje.value = document.form.mensaje.value + texto;
}
// -->
</script>
<form method="post" name="form" action="enviar_privados2.php">
<input type=hidden name=de value=<? echo $nickUsuarioL?>>
  <table align=center bgcolor=black width=350 cellspacing=1 cellpadding=3>
    <tr>
      <td bgcolor=#c4dBFB width="55"><font size="2"><b><font face="Verdana">De:</font></b></font></td>
      <td bgcolor=#e8edf2 width="268"><? echo "<font face=Tahoma size=2><b>$nickUsuarioL</b> - $REMOTE_ADDR"?></td>
    </tr>
    <tr> 
      <td bgcolor=#E6EBFB width="55"><font face=Tahoma size=2><b>Para:</b></font></td>
      <td bgcolor=#e8edf2 width="268"> 
        <input type=text name=para style="Font-size= 8pt; Font-Face=Tahoma" size="24">
        </td>
    </tr>
    <tr> 
      <td bgcolor=#c4dBFB width="55"><font face=Tahoma size=2><b>Titulo:</b></font></td>
      <td bgcolor=#e8edf2 width="268"> 
        <input type=text name=asunto style="Font-size= 8pt; Font-Face=Tahoma" size="24" maxlength="255">
      </td>
    </tr>
    <tr bgcolor="#E6EBFB"> 
      <td colspan=2><font size=2 face=Tahoma> 
        <center>
          <b>Mensaje:</b> 
        </center>
        </font></td>
    </tr>
    <tr bgcolor="#e8edf2"> 
      <td colspan=2> 
        <center>
          <table width="70%" border="0" cellspacing="0" cellpadding="0">
            <tr> 
              <td> 
                <textarea name=mensaje cols=42 rows=7 style="Font-size= 8pt; Font-Face=Tahoma">
</textarea>
              </td>
            </tr>
          </table>
          <table width="70%" border="0" cellspacing="0" cellpadding="0">
            <tr> 
              <td> 
                <div align="center"><a href="javascript:Smile('[a][/a]')"><img src="ikon/bb1.gif" width="36" height="15" border="0"></a></div>
              </td>
              <td> 
                <div align="center"><a href="javascript:Smile('[citar][/citar]')"><img src="ikon/bb2.gif" width="36" height="15" border="0"></a></div>
              </td>
              <td> 
                <div align="center"><a href="javascript:Smile('')"><img src="ikon/bb3.gif" width="36" height="15" border="0"></a></div>
              </td>
              <td> 
                <div align="center"><a href="javascript:Smile('')"><img src="ikon/bb4.gif" width="36" height="15" border="0"></a></div>
              </td>
              <td> 
                <div align="center"><a href="javascript:Smile('')"><img src="ikon/bb5.gif" width="36" height="15" border="0"></a></div>
              </td>
            </tr>
          </table>
        </center>
        <table width="70%" border="0" cellspacing="3" cellpadding="2" align="center">
          <tr> 
            <td> 
              <div align="center"><a href="javascript:Smile('[pensando]')"><img src="ikon/1.gif" width="15" height="20" border="0" alt="Pensando"></a></div>
            </td>
            <td> 
              <div align="center"><a href="javascript:Smile('[sonriendo]')"><img src="ikon/2.gif" width="15" height="15" border="0" alt="Sonriendo"></a></div>
            </td>
            <td> 
              <div align="center"><a href="javascript:Smile('[si]')"><img src="ikon/3.gif" width="15" height="15" border="0" alt="Arriba"></a></div>
            </td>
            <td> 
              <div align="center"><a href="javascript:Smile('[no]')"><img src="ikon/4.gif" width="15" height="15" border="0" alt="Abajo"></a></div>
            </td>
            <td> 
              <div align="center"><a href="javascript:Smile('[llorando]')"><img src="ikon/5.gif" width="25" height="15" border="0" alt="Llorando"></a></div>
            </td>
            <td> 
              <div align="center"><a href="javascript:Smile('[afirmando]')"><img src="ikon/11.gif" width="15" height="15" border="0" alt="Afirmando"></a></div>
            </td>
          </tr>
          <tr> 
            <td> 
              <div align="center"><a href="javascript:Smile('[censurado]')"><img src="ikon/6.gif" width="15" height="15" border="0" alt="Censura"></a></div>
            </td>
            <td> 
              <div align="center"><a href="javascript:Smile('[ojotes]')"><img src="ikon/7.gif" width="15" height="15" border="0" alt="Ojotes"></a></div>
            </td>
            <td> 
              <div align="center"><a href="javascript:Smile('[adios]')"><img src="ikon/8.gif" width="25" height="15" border="0" alt="Adios"></a></div>
            </td>
            <td> 
              <div align="center"><a href="javascript:Smile('[policia]')"><img src="ikon/9.gif" width="19" height="20" border="0" alt="Policia"></a></div>
            </td>
            <td> 
              <div align="center"><a href="javascript:Smile('[carcajeando]')"><img src="ikon/10.gif" width="16" height="19" border="0" alt="Carcajeando"></a></div>
            </td>
            <td> 
              <div align="center"><a href="javascript:Smile('[negando]')"><img src="ikon/12.gif" width="15" height="15" alt="Negando" border="0"></a></div>
            </td>
          </tr>
        </table>
      </td>
    </tr>
    <tr bgcolor="#c4dBFB"> 
      <td colspan="2"><font face=Tahoma size=2><b> 
        <input type=submit value=Enviar style="Font-size= 8pt; Font-Face=Tahoma">
        <input type=reset value=Borrar name="reset" style="Font-size= 8pt; Font-Face=Tahoma">
        </b></font> </td>
    </tr>
  </table>
</form>
  #2 (permalink)  
Antiguo 17/04/2010, 15:10
 
Fecha de Ingreso: abril-2010
Mensajes: 9
Antigüedad: 14 años
Puntos: 0
Respuesta: Mensajeria Interna

enviar_privados2.php

Código PHP:
<? 

include("conexion.php"); 
include(
"fecha.php"); 

if(
$para=="$nickUsuarioL"){ //Aki esta la var de nickUsuarioL 
echo "<font face=Tahoma size=2><b><center>Te quieres mandar un mensaje tu solo?</b></center>"
}  
else if(empty(
$para)){ 
echo 
"<font face=Tahoma size=2><b><center>A quien va el mensaje?</b><br></center>"

else if(empty(
$mensaje)){ 
echo 
"<font face=Tahoma size=2><b><center>Y el mensaje?</center></b><br>"
}  
else { 

//QUITAMOS CARACTERES INVALIDOS 
    
$mensaje str_replace("<","&lt;",$mensaje); 
    
$mensaje str_replace(">","&gt;",$mensaje); 
    
$mensaje str_replace('\"',"&quot;",$mensaje); 
    
$mensaje str_replace("'","'",$mensaje); 
    
$mensaje str_replace("\'","'",$mensaje); 

//PONEMOS LOS SMILIES AL MENSAJE 
    
$mensaje str_replace("[pensando]","<img src=\"ikon/1.gif\">",$mensaje); 
    
$mensaje str_replace("[sonriendo]","<img src=\"ikon/2.gif\">",$mensaje); 
    
$mensaje str_replace("[si]","<img src=\"ikon/3.gif\">",$mensaje); 
    
$mensaje str_replace("[no]","<img src=\"ikon/4.gif\">",$mensaje); 
    
$mensaje str_replace("[llorando]","<img src=\"ikon/5.gif\">",$mensaje); 
    
$mensaje str_replace("[afirmando]","<img src=\"ikon/6.gif\">",$mensaje); 
    
$mensaje str_replace("[censurado]","<img src=\"ikon/7.gif\">",$mensaje); 
    
$mensaje str_replace("[ojotes]","<img src=\"ikon/8.gif\">",$mensaje); 
    
$mensaje str_replace("[adios]","<img src=\"ikon/9.gif\">",$mensaje); 
    
$mensaje str_replace("[policia]","<img src=\"ikon/10.gif\">",$mensaje); 
    
$mensaje str_replace("[carcajeando]","<img src=\"ikon/11.gif\">",$mensaje); 
    
$mensaje str_replace("[negando]","<img src=\"ikon/12.gif\">",$mensaje); 

//PONEMOS LOS BBCODE 
    
$mensaje str_replace("[ b]","<b>",$mensaje); //modifica kitando el espacio,, x k si no los reproduce en los foros ;) 
    
$mensaje str_replace("[ /b]","</b>",$mensaje); 
    
$mensaje str_replace("[ i]","<i>",$mensaje); 
    
$mensaje str_replace("[ /i]","</i>",$mensaje); 
    
$mensaje str_replace("[ u]","<u>",$mensaje); 
    
$mensaje str_replace("[ /u]","</u>",$mensaje); 

    
$mensaje str_replace("[citar]","<table width=80% bgcolor=black align=center cellspacing=1 cellpadding=2><tr><td bgcolor=#eeeeee><font face=tahoma size=1><b>Citando:</b><br>",$mensaje); 
    
$mensaje str_replace("[/citar]","</td></tr></table>",$mensaje); 

    
$mensaje preg_replace("#\[a](.*?){1}\[/a]#""<a href=\"$1\" target=\"_blank\"><B>$1</B></A>"$mensaje); 

//CERRAMOS E INTRODUCIOMOS TODO A LA BD MYSQL 

$leido"0"
mysql_query("INSERT INTO mensajes (de,para,asunto,mensaje,fecha,leido) VALUES  
('$de','$para','$asunto','$mensaje','$fecha2','$leido')"
); 

echo 
"<font face=Tahoma size=2><center><b>Accion exitosa!</b></center>"
echo 
"<SCRIPT LANGUAGE=\"javascript\">window.location.href = \"leer_privados.php\";</SCRIPT>"



?>

fecha.php

Código PHP:
<?php 
$diasSemana
[0] = "Domingo"
$diasSemana[1] = "Lunes"
$diasSemana[2] = "Martes"
$diasSemana[3] = "Miercoles"
$diasSemana[4] = "Jueves"
$diasSemana[5] = "Viernes"
$diasSemana[6] = "Sabado"

$mesesAnho[1] = "Enero"
$mesesAnho[2] = "Febrero"
$mesesAnho[3] = "Marzo"
$mesesAnho[4] = "Abril"
$mesesAnho[5] = "Mayo"
$mesesAnho[6] = "Junio"
$mesesAnho[7] = "Julio"
$mesesAnho[8] = "Agosto"
$mesesAnho[9] = "Septiembre"
$mesesAnho[10] = "Octubre"
$mesesAnho[11] = "Noviembre"
$mesesAnho[12] = "Diciembre"

$diaSemana date(w); 
$diaMes date(j); 
$mesAnho date(n); 
$anho date(Y); 
$hora date(H); 
$hora .= ":"
$hora .= date(i); 

$horax date("h:i:s"); 
$horaxe date("j/n/Y"); 

$fecha $diasSemana[$diaSemana]." ".$diaMes." de ".$mesesAnho[$mesAnho]." del ".$anho
$fecha2 "$horax de $horaxe"


$hora2 $hora

?>


El PROMBLEMA que tengo esque no se que incluire en el lsistema de usuarios, y que no me muestra los mensajes, aunque están en la BD.


GRACIAS
  #3 (permalink)  
Antiguo 19/04/2010, 10:59
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Mensajeria Interna

Ok, tu problema es más bien, falta de conocimiento en lo básico de PHP, te recomiendo que leas primero este manual, una vez hallas entendido lo que enseñan, ya se te va a hacer más fácil entender lo que debes hacer.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: mensajeria
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 20:00.