0 votos
por (20 puntos) en PHP
mostrada de nuevo por

hola siento molestar pero estaba intentando realizar una aplicación pero e llegado a un punto que se como continuar, la aplicación es un foro donde se realizan preguntas pero al realizar las respuestas aparecen repetidas: Gracias de antemano 

<?php

//Asegurar el acceso solo autenticado a esta página

session_start(); // Permite acceso a las variables de sesion

if(!isset($_SESSION['autenticado'])){

header("Location:../index.php");

}

include_once "../conf/config.php";

include_once "../conf/fecha.php";

// Borrar una fila

  if(isset($_GET['borrar'])){

$conexion=mysqli_connect($host,$userDB,$passwordDB,$db); 

$anuncioBorrar = $_GET['borrar'];

$sql="DELETE from anuncios where id = '$anuncioBorrar';";

    mysqli_query($conexion,$sql);

    mysqli_close($conexion);

//header("Location:../registrado/registrado.php");

  }

// Borrar una respuesta

  if(isset($_GET['borrar'])){

$conexion=mysqli_connect($host,$userDB,$passwordDB,$db); 

$anuncioBorrar = $_GET['borrar'];

$sql="DELETE from comentario where id = '$anuncioBorrar';";

    mysqli_query($conexion,$sql);

    mysqli_close($conexion);

//header("Location:../registrado/registrado.php");

  }

 //Insertar mensaje

if(isset($_POST['Insertar'])){

$conexion=mysqli_connect($host,$userDB,$passwordDB,$db);

$mensaje=$_POST['mensaje'];

$activado=1;

$fk=$_SESSION['usuario'];

$id=$_POST['mensaje'];

$sql="INSERT INTO anuncios VALUES(default,'$mensaje','$fk',1);";

mysqli_query($conexion,$sql);

mysqli_close($conexion);

}

 //Insertar comentarios 

if(isset($_POST['comenta'])){

$conexion=mysqli_connect($host,$userDB,$passwordDB,$db);

$mensaje=$_POST['mensaje'];

$activado=1;

$fk=$_SESSION['usuario'];

$id=$_POST['mensaje'];

$va=0;

$sql="INSERT INTO comentario VALUES(default,'$mensaje','$fk,1');";

mysqli_query($conexion,$sql);

mysqli_close($conexion);

}

 ?>

 

  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">

<head>

<title>Foro</title>

<meta http-equiv="content-type" content="text/html;charset=utf-8" />

<meta name="generator" content="Geany 1.32" />

<link rel="stylesheet" type="text/css" href='../css/estilos.css' />

<script src='../script/script.js'></script>

</head>

<body>

<div id="izquierda">

<!-- Panel de bienvenida -->

<div id="private_bienvenida">

<img src="../img/imagen.png" class="imagen_portada">

<h2>¡Bienvenido!</h2>

<p align='center'> Hola <?php echo "$_SESSION[usuario]" ?>

,esperemos que te diviertas en nuestra aplicacion web </p>

<p> Tienes rol de <?php echo "$_SESSION[rol]" ?> </p>

<p> Cambia tu contraseña <a href='../admin/cambiar.php'>cambiar</a> </p>

</div>

<div id="salir">

<a href="../salir/salir.php">

<img src="../img/salir.png" width="50" height="50">

</a>

</div>

<div id="admin">

<?php if($_SESSION['rol']==0){

echo "

<a href='../admin/admin.php'>

<img src='../img/admin.png' width='50' height='50'>

</a>";}

?>

</div>

</div>

<div id="centro">

<!-- Panel de mensaje -->

<div id="private_nuevomensaje">

<form method='POST'>

Mensaje <i>(Máximo 140 Caracteres)</i><input type="text" minlength="0" maxlength="140" name="mensaje" id="botonmensaje" 

onsubmit="if(this.value.length > this.maxLength) this.value = this.value.slice(0, this.maxLength);"/> 

<input type="submit" name="Insertar" value="Enviar"/>

</form>

</div>

<!-- Cargar Anuncios -->

<div id="private_anuncios">

<h2>Mensajes</h2>

<?php

include_once "../conf/config.php";

    $conexion=mysqli_connect($host,$userDB,$passwordDB,$db);

    $consulta="SELECT * FROM anuncios";

    $datos=mysqli_query($conexion,$consulta);    

while($fila=mysqli_fetch_array($datos,MYSQLI_ASSOC)){

if($fila['activado']==1){ 

echo "<p id='private_mensaje'>

<b>$fila[fk]</b><br>

$fila[mensaje]<br>

<i></i></p>";

if($_SESSION['usuario']==$fila['fk']){

echo "<a href='?borrar=$fila[id]'>BORRAR</a>";}

}?>

<!-- Cargar Respuestas -->

<?php

include_once "../conf/config.php";

    $conexions=mysqli_connect($host,$userDB,$passwordDB,$db);

    $consultas="SELECT * FROM comentario";

    $datoss=mysqli_query($conexions,$consultas);    

while($filas=mysqli_fetch_array($datoss,MYSQLI_ASSOC)){

if($filas['va']==$fila['mensaje']){

if($filas['activado']==1){ 

echo "<p id='private_mensaje'>

<b>$filas[fk]</b><br>

$filas[mensaje]<br>

<i></i></p>";

if($_SESSION['usuario']==$fila['fk']){

echo "<a href='?borrar=$filas[id]'>BORRAR</a>";}

}}

}?>

<!--formulario en el bucle--->

<div id="respuesta">

<form method='POST'>

Responde<input type="text" minlength="0" maxlength="140" name="mensaje" id="botonmensaje" 

onsubmit="if(this.value.length > this.maxLength) this.value = this.value.slice(0, this.maxLength);"/> 

<input type="submit" name="comenta" value="Enviar"/>

</form>

<?php

}?>

</div>

</body>

</html>

1 Respuesta

0 votos
por (1.8k puntos)
Se me hace un poco confuso leer todo ese código... a priori lo que te recomiendo es que no abras y cierres la conexión a la base de datos en cada lugar... podrías hacer eso antes de evaluar la acción particular que se necesita..

Preguntas relacionadas

0 votos
0 respuestas
preguntado por comun (20 puntos) Ene 14, 2019 en Java
0 votos
1 respuesta
preguntado por jabnsg (60 puntos) Ene 28, 2016 en HTML
0 votos
0 respuestas
0 votos
8 respuestas
preguntado por LUIS FERNANDO MOLINA (60 puntos) Ene 28, 2016 en Java
0 votos
0 respuestas
Bienvenido a Dudas de Programación, donde puedes hacer preguntas y recibir respuestas sobre los problemas más frecuentes de los lenguajes de programación, frameworks de desarrollo y bases de datos que utilices. Foro de Línea de Código

Categorías

...