Foros del Web » Programando para Internet » PHP »

Respuesta de un foro

Estas en el tema de Respuesta de un foro en el foro de PHP en Foros del Web. Buenas Tardes: Necesito su ayuda para programar las respuestas de un foro en el que estoy trabajando y solo me falta programar las respuesta de ...
  #1 (permalink)  
Antiguo 31/05/2015, 16:46
 
Fecha de Ingreso: mayo-2015
Mensajes: 6
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta de un foro

Buenas Tardes:

Necesito su ayuda para programar las respuestas de un foro en el que estoy trabajando y solo me falta programar las respuesta de cada tema y que me lo muestre debajo del mismo.

Por Favor necesito la ayuda de alguien, aunque sea una pista algo corto pero que funcione. Es Urgente.
  #2 (permalink)  
Antiguo 31/05/2015, 17:04
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Respuesta de un foro

Hola:

Supongo que el foro lo estás programando, porque los prefabricados lo tienen previsto...

Mi experiencia es sobre sistemas de comentarios, pero supongo que basta con que la tabla que tengas para la gestión tenga un campo que referencie al tema, y otro campo timestamp por el que se ordenen los resultados...

Pero, para no dar palos de ciego, mejor será que nos indiques mejor qué es lo que tienes...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 31/05/2015, 18:22
 
Fecha de Ingreso: mayo-2015
Mensajes: 6
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Respuesta de un foro

BUENO NO CONOZCO MUCHO SOBRE PHP ASI QUE LO HICE LOS MAS SENCILLO POSIBLE ESTE ES CODIGO

<FORM name="f" method="GET" action="mensaje.php" target="derecha" onSubmit="return validar();">
<TABLE align="center" bordercolor="cc0033">
<TR>
<TD><INPUT type="hidden" name="id" VALUE="<?
echo $id; ?>"></TD>
<TD> <font color="">Autor: </font></TD>
<TD><INPUT type="text" name="autor" size="20" MAXLENGTH="50" title="Autor"></TD>
</TR>
<br>
<TR>
<TD> <font color=""> Titulo:</font> </TD>
<TD><INPUT type="text" name="titulo" size="20" MAXLENGTH="50" title="Titulo"></TD>
</TR>
<TR>
<TD> <font color=""> Mensaje:</font> </TD><br>
<TD><TEXTAREA NAME="mensaje" COLS="70" ROWS="30" value="Mensaje"> </TEXTAREA></TD>
</TR>
<TR>
<TD></TD>
<TD><INPUT type="submit" value="Enviar Mensaje"><INPUT type="reset" value="Limpiar"></TD>
</TR>
</TABLE>
</FORM>

<?
//CONECTAR CON LA BASE DE DATOS

$id = $_GET ['id'];
$autor = $_GET ['autor'];
$titulo = $_GET ['titulo'];
$mensaje = $_GET ['mensaje'];


$con=mysql_connect("localhost","root",""); //conexion MySQl
mysql_select_db("base1",$con); //Seleccionar base datos
$comando = "INSERT INTO foro2 VALUES ('$id','$autor ','$titulo','$mensaje');";
$result = mysql_query($comando, $con);
?>

EL QUE ME LOS MUESTRA
<?
$con = mysql_connect("localhost:3306", "root", "");
$dbSelect = mysql_select_db('base1', $con);


$sql=" select * from foro2 "; //código MySQL
$datos=mysql_query($sql,$con); //enviar código MySQL


while ($row=mysql_fetch_array($datos)) { //Bucle para ver todos los registros
//$ID =$row['ID'];
$autor =$row['autor']; //datos del campo nombre
$titulo =$row['titulo'];
$mensaje =$row['mensaje']; //datos del campo mensaje

//visualizar datos
echo " Autor:<b>$autor</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Titulo: <a href='responder.php?id=id &
autor=$autor & titulo=$titulo & mensaje=$mensaje'>$titulo</a> <br><br>";

echo "Mensaje $mensaje. <br/>&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;<hr>";


}
?>

EL CODIGO QUE LO SELECCIONA Y LO LLEVA A OTRA PAGINA
<?php



$con = mysql_connect("localhost:3306", "root", "");
$dbSelect = mysql_select_db('base1', $con);


$sql=" select * from foro2 "; //código MySQL
$datos=mysql_query($sql,$con); //enviar código MySQL

echo " &nbsp;&nbsp;&nbsp;<hr color ='cc0033' size ='5'>";

$autor = $_GET ['autor'];
$titulo = $_GET ['titulo'];
$mensaje = $_GET ['mensaje'];

echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;& nbsp;&nbsp;&nbsp;&nbsp;
<h2>TITULO: &nbsp;&nbsp;&nbsp;$titulo.</h2><br>
Autor: $autor<br><br><br>";

echo "
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;Mensaje: $mensaje";

echo " <br><br>";


mysql_close($con);//cerrar conexion

?>

Y EL SEGUNDO FORMULARIO DE LA OPCION RESPONDER
<form name="f" action ="responder2.php" method="GET">
<TABLE align="center">
<H2 align="center"> Incresar un Nuevo Tema</H2>
<TABLE align="center" bordercolor="cc0033">
<TR>
<TD><INPUT type="hidden" name="id_titulo" VALUE="<?
echo $id_titulo; ?>"></TD>
</TR>
<br>
<TR>
<TD> <font color="">Autor: </font></TD>
<TD><INPUT type="text" name="re_autor" size="20" MAXLENGTH="50" title="Autor"></TD>
</TR>
<br>

<TR>
<TD> <font color=""> Mensaje:</font> </TD><br>
<TD><TEXTAREA NAME="re_mensaje" COLS="70" ROWS="30" value="Mensaje"> </TEXTAREA></TD>
</TR>
<TR>
<TD></TD>
<TD><INPUT type="submit" value="Enviar Mensaje"><INPUT type="reset" value="Limpiar"></TD>
</TR>
</TABLE>

</form>



//CONECTAR CON LA BASE DE DATOS

$id_titulo = $_GET ['id_titulo'];
$re_autor = $_GET ['re_autor'];
//$re_titulo = $_POST ['re_titulo'];
$re_mensaje = $_GET ['re_mensaje'];


$con=mysql_connect("localhost","root",""); //conexion MySQl
mysql_select_db("base1",$con); //Seleccionar base datos
$comando = "INSERT INTO respuesta VALUES ('$id_titulo','$re_autor ','$re_mensaje');";
$result = mysql_query($comando, $con);

HASTA AHORA TENGO ESO SOLO ME FALTA QUE LAS RESPUESTA DE CADA TEMA APAREZCA DEBAJO DE ESE MISMO TEMA.

SALUDOS
  #4 (permalink)  
Antiguo 01/06/2015, 00:07
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Respuesta de un foro

Hola:

Para empezar veo que usas el método get en un formulario en donde esperas muchos datos, al menos desde el textarea, y creo que no es aconsejable... sería mejor el método post...

Con tantas líneas me pierdo, así que te comentaré cual es la idea...

De los campos de tu tabla parece que existe un id, que supongo que será autoincrement. Como ya te había comentado también es de suponer que habrá un campo fecha timestamp, y la idea que se me ocurre, es como también te he comentado usar un campo que podría llamarse ref (o refiere) que se llene con el id del tema... entonces en el formulario de respuesta poner un campo oculto con ese ref...

<input type="hidden" name="ref" value="<?php echo $id; ?>" />

Y la consulta sería algo así:

$sql = "select * from mensajes where id='$id' or ref='$id' order by fecha desc";

Creo que es la parte básica...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo

Etiquetas: foro, respuesta
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 23:27.