Foros del Web » Programando para Internet » PHP »

php foro listo pero....

Estas en el tema de php foro listo pero.... en el foro de PHP en Foros del Web. quiero hacer que diga bienvenido usuario 'x' toda la session como le hago...
  #1 (permalink)  
Antiguo 17/09/2008, 18:01
 
Fecha de Ingreso: mayo-2008
Mensajes: 499
Antigüedad: 16 años
Puntos: 1
Pregunta php foro listo pero....

quiero hacer que diga bienvenido usuario 'x' toda la session como le hago
  #2 (permalink)  
Antiguo 17/09/2008, 18:08
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 6 meses
Puntos: 25
Respuesta: php foro listo pero....

debes registrar una sesion

Código PHP:
<?php

session_start
();
$nombre_usuario 'Lobsang';
 
$_SESSION['usuario'] = $nombre;

 echo 
'hola'.$_SESSION['usuario'].'Bienvenido al sistema';

?>
eso es una forma basica saludos.. otra cosa usa linux :D eso es ser libre :D
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #3 (permalink)  
Antiguo 23/09/2008, 18:30
 
Fecha de Ingreso: mayo-2008
Mensajes: 499
Antigüedad: 16 años
Puntos: 1
Respuesta: php foro listo pero....

proque no puedo grabar un mensaje solo falta esto y ya no molesto



este es elcodigo


<?php
@session_start();
if(!isset($_SESSION['username'])){
echo "No estas logeado.";
}
else
{
require('configuracion.php');
$autor = $_SESSION['username'];
$titulo = $_POST["titulo"];
$mensaje = $_POST["mensaje"];
$ident = $_POST["identificador"];

//Hacemos algunas validaciones
if(empty($titulo)) $titulo = "Sin título";
//Evitamos que el usuario ingrese HTML
$mensaje = htmlentities($mensaje);

// Grabamos el mensaje en la base.
$sql = "INSERT INTO foro (autor, titulo, mensaje, identificador, fecha, ult_respuesta) ";
$sql.= "VALUES ('$autor','$titulo','$mensaje','$ident',NOW(),NOW( ))";
$rs = mysql_query($sql, $con) or die("Error al grabar un mensaje: ".mysql_error);
$ult_id = mysql_insert_id($con);

/* si es un mensaje en respuesta a otro
actualizamos los datos */
if(!empty($ident))
{
$sql = "UPDATE foro SET respuestas=respuestas+1, ult_respuesta=NOW()";
$sql.= " WHERE id = '$ident'";
$rs = mysql_query($sql, $con);
Header("Location: foro.php?id=$ident#$ult_id");
exit();
}
Header("Location: index.php");
}
?>


me dicen si hace falta otro mas


psdta

porque quitaron mi ultimo mensaje ya no me quieren ayudar verdad?
  #4 (permalink)  
Antiguo 23/09/2008, 19:33
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 6 meses
Puntos: 25
Respuesta: php foro listo pero....

revisastes que tu SQL haya sido talmente correcto ? aveces pasa que hay error en el SQL..
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #5 (permalink)  
Antiguo 24/09/2008, 15:57
 
Fecha de Ingreso: mayo-2008
Mensajes: 499
Antigüedad: 16 años
Puntos: 1
Respuesta: php foro listo pero....

no veo que pueda estar mal ve aqui <a href='http://i254.photobucket.com/albums/hh93/iozk/db.png'>aquie</a>
quizas tu pedas verlo
  #6 (permalink)  
Antiguo 24/09/2008, 15:58
 
Fecha de Ingreso: mayo-2008
Mensajes: 499
Antigüedad: 16 años
Puntos: 1
Respuesta: php foro listo pero....

digo aquihttp://i254.photobucket.com/albums/hh93/iozk/db.png
  #7 (permalink)  
Antiguo 24/09/2008, 16:08
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: php foro listo pero....

Prueba con esto a ver si resuelves algo:
Código PHP:
<?php
error_reporting
(E_ALL); //esto sirve para ver los errores
session_start(); //si le sacas el @ veras si es un problema de sesion
if(!isset($_SESSION['username'])){
    echo 
"No estas logeado.";
}else{
    require_once(
'configuracion.php');
    
$autor         $_SESSION['username'];
    
$titulo        $_POST["titulo"];
    
$mensaje    $_POST["mensaje"];
    
$ident        $_POST["identificador"];
    
//Hacemos algunas validaciones
    
if(empty($titulo)) $titulo "Sin título";
    
//Evitamos que el usuario ingrese HTML
    
$mensaje htmlentities($mensaje);

    
// Grabamos el mensaje en la base.
    
$sql "INSERT INTO foro (autor, titulo, mensaje, identificador, fecha, ult_respuesta)
            VALUES ('$autor','$titulo','$mensaje','$ident',NOW(),NOW())"
;
    if(
mysql_query($sql)){
        
$ult_id mysql_insert_id();
    }else{
        die(
"Error al grabar un mensaje: ".mysql_error());
    }
    
/* si es un mensaje en respuesta a otro
    actualizamos los datos */
    
if(!empty($ident)){
        
$sq2 "UPDATE foro 
                SET respuestas = respuestas+1, 
                    ult_respuesta = NOW()
                WHERE id = '$ident'"
;
        if(
mysql_query($sq2)){
            
Header("Location: foro.php?id=$ident#$ult_id");
            exit();
        }else{
            
//este die para saber que paso con el update
            //cuando funcione lo comentas
            
die("Error al actualizar: ".mysql_error());
            
Header("Location: index.php");
        }
    }
}
?>
Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #8 (permalink)  
Antiguo 25/09/2008, 17:57
 
Fecha de Ingreso: mayo-2008
Mensajes: 499
Antigüedad: 16 años
Puntos: 1
Respuesta: php foro listo pero....

ahora dice esto

Error al grabar un mensaje: Duplicate entry '0' for key 1

que hago?
  #9 (permalink)  
Antiguo 25/09/2008, 18:27
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: php foro listo pero....

Eso dice que estas tratando de ingresar un mensaje con el mismo id del que ya esta en la base de datos.
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #10 (permalink)  
Antiguo 26/09/2008, 15:34
 
Fecha de Ingreso: mayo-2008
Mensajes: 499
Antigüedad: 16 años
Puntos: 1
Respuesta: php foro listo pero....

y como le hago para que enves de tratar de hacer que escriba un id a la base hacer que grabe el mensaje en el¿
  #11 (permalink)  
Antiguo 26/09/2008, 16:55
 
Fecha de Ingreso: mayo-2008
Mensajes: 499
Antigüedad: 16 años
Puntos: 1
Respuesta: php foro listo pero....

ya lo tengo pero ahora no muestra ningun texto en el foro

aqui est el codigo


foro.php

<style type="text/css">
<!--
body {
background-color: white;
}
a:link {
color: #FFFFFF;
}
a:visited {
color: #FFFFFF;
}
a:hover {
color: #CCCCCC;
}
a:active {
color: #FF0000;
}
-->
</style>
<?php
@session_start();
require('configuracion.php');
require('funciones.php');
$id = $_GET["id"];
if(empty($id)) Header("Location: index.php");

$sql = "SELECT id, autor, titulo, mensaje, ";
$sql.= "DATE_FORMAT(fecha, '%d/%m/%Y %H:%i:%s') as enviado FROM foro ";
$sql.= "WHERE id='$id' OR identificador='$id' ORDER BY fecha ASC";
$rs = mysql_query($sql, $con);
include('header.html');
if(mysql_num_rows($rs)>0)
{
include('res.html');
include('titulos_post.html');
$template = implode("", file('post.html'));
while($row = mysql_fetch_assoc($rs))
{
$firma=$row["firma"];
$color=($color==""?"#5b69a6":"");
$row["color"] = $color;
//manipulamos el mensaje
$row["mensaje"] = nl2br($row["mensaje"]);
$row["mensaje"] = parsearTags($row["mensaje"]);
mostrarTemplate($template, $row);
}
}
include('footer.html');
?>


y este codigo que se supone lo postea

<head>
<style Type='text/css'>
b{
color:black;}
</style>
</head>
<table width="90%" border="1" align="center" cellpadding="2" cellspacing="2" bordercolor="#000000">
<tr bgcolor="<?=$color?>">
<td width="25%" valign="top" bgcolor="gold"> <b><a name="<?=$id?>">
<?=$autor?></a>
</b><br>
<font size="2">Enviado el : <?=$enviado?></font> </td>
<td bgcolor="orange"> <table width="100%" border="2" cellspacing="1" cellpadding="1">
<tr>
<td bgcolor="orange"><strong><font size="-1">
<?=$titulo?>
</font></strong> </td>
<td width="10%" align="right">
<?
if(isset($_SESSION['s_username'])){
?>[ <a href="respuesta.php?id=<?=$id?>&citar=1" ><b>CIT</b></a>
]
<?
}
?></td>
</tr>
</table>
<hr align="center" width="100%" size="2">
<?=$mensaje?></td>
</tr>
<tr>
<td colspan="2" height="5"></td>
</tr>
</table>
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 06:00.