elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  AYUDA EN SISTEMA DE APROBAR COMENTARIOS
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: AYUDA EN SISTEMA DE APROBAR COMENTARIOS  (Leído 3,543 veces)
Cerdo

Desconectado Desconectado

Mensajes: 22


Ver Perfil
AYUDA EN SISTEMA DE APROBAR COMENTARIOS
« en: 14 Agosto 2008, 13:38 pm »

Buenas, tengo el siguiente codigo que hice con la finalidad de generar un sistema de comentarios con sistema de aprobarlos o rechazarlos desde un panel de administracion "Administrando_comments.php" y despues mostrarlos en otro lugar sea pues por ejemplo "Mostrar_comments.php" pero tengo un problema al momento de mostrar los datos de la base de datos valga la redundancia ya que por ejemplo tenemos que el formulario escribe los siguientes datos en la base de datos


<form action="2.php" method="POST">
Nombre: <input type="text" name="nombre">
Telefono: <input type="text" name="telefono">&nbsp;
<input type="submit" value="Enviar" name="B1">



Hasta ahi todo bien, escribe los datos de forma correcta haciendo uso del codigo de "2.php" pero a la hora de pasarme al area "Administrando_comments.php" me doy cuenta que los datos de la base de datos no se muestran ahi...pero en la tabla del mysql si estan escritos, ok pero permitanme terminar de explicar esto a detalle...el problema no radica ahi, el problema es que cuando haces una entrada por segunda ocasion en el formulario, pues ya aparece en "Aprobar_comments.php" y luego, cuando le das "aprobar comentario" se tendria que ir a la parte de "Mostrar_comentarios.php" pero esto no sucede...es decir no los muestra, pero otra vez se repite el error, haces una tercera llamada a "Aprobar comentario" y entonces ya se muestran los datos...es un error algo raro y no se si me explique bien, en resumen el codigo funciona sin problemas, hace lo que deberia hacer, pero tiene ese pequeño detalle o inconveniente o error, lo que sea, QUE SE SALTA LA PRIMERA ENTRADA QUE UNO INGRESA o_O

Sea pues que pones por ejemplo

Nombre: pepe
Telefono: 333333

Enviar
 
y nos devuelve, ENVIADO CORRECTAMENTE !!  ( y en efecto se escriben los datos en la tabla en el mysql)


te vas a "aprobar_comentarios.php" y no aparecen los datos...

Entonces te regresas a la pagina de "Comentarios.html" vuelves a meter

Nombre: pepe_numero2
Telefono: 4444444

y nos devuelve, ENVIADO CORRECTAMENTE !!  ( y en efecto se escriben los datos en la tabla en el mysql)

te vas a "aprobar_comentarios.php" y ya aparecen los datos o_o


Osea se salto la primer linea de los datos en la tabla de la base de datos y empezo a mostrarme los datos a partir de la segunda linea con los datos de la tabla, esto esta muy raro, es normal ? xD no creo pero esque no se donde este mi error.... pego aqui el codigo que estoy utilizando en "Aprobar_comments.php" pues ese es el que se encarga de mostrar los datos de la tabla en la base de datos y puede que ahi este mi error...

======= Aprobar_comments.php =========


<?php
//conexion a la base de datos

require_once('conexion.php');

//Creamos una consulta para filtrar los datos y un bucle para mostrarlos todos:
$select = "SELECT * FROM tabla WHERE Aprobado = '0'";
$query = mysql_query($select) or die(mysql_error());
$row = mysql_fetch_assoc($query);

while ($row = mysql_fetch_assoc($query)) {
echo $row['Nombre']."<br>";
echo $row['Telefono']."<br>";
echo '<a href="aprobar.php?ID='.$row['ID'].'">Aprobar</a><br>';
echo '<a href="rechazar.php?ID='.$row['ID'].'">Rechazar</a><br><br>';
}
?>





y este es el codigo del archivo "2.php" que se encarga de escribir los datos en la tabla


<?php

include('conexion.php');

//Conexion a la base de datos
require_once('conexion.php');

//Insertamos los datos:
$insert = "INSERT INTO tabla (Nombre, Telefono, Aprobado) VALUES ('".mysql_real_escape_string($_POST['nombre'])."', '".mysql_real_escape_string($_POST['telefono'])."', '0')";
$result = mysql_query($insert) or die(mysql_error());

if(!$result) 
{
echo "Los datos no pudieron ser insertados";
}
else {
//Datos insertados correctamente, si quieres puedes mostrar un mensaje o redireccionar con Header
header("Location: sistema.html");
}
?>



Ojala ustedes puedan ayudarme a encontrar el porque pasa esto y como solucionarlo, gracias !


« Última modificación: 14 Agosto 2008, 13:56 pm por Cerdo » En línea

kmykc

Desconectado Desconectado

Mensajes: 20



Ver Perfil
Re: AYUDA EN SISTEMA DE APROBAR COMENTARIOS
« Respuesta #1 en: 15 Agosto 2008, 01:48 am »

Que hay brother, pues mira, despues de hacer pruebas con los dos codigos que posteaste, lamento decir que efectivamente no imprime el primer registro de la DB.

Pero lo hice de otra manera con la cual tuve resultados muy buenos, y si imprime el primer registro, te posteare el codigo con mis modificaciones y algunas de tus lineas las dejo comentariadas, espero no te confundas.

El problema obviamente esta en el archivo "Aprobar_comments.php"

Código:
<?php
//conexion a la base de datos

require_once('conexion.php');

//Creamos una consulta para filtrar los datos y un bucle para mostrarlos todos:
$select = "SELECT * FROM tabla WHERE aprobado = '0'";
$query = mysql_query($select) or die(mysql_error());
//$row = mysql_fetch_assoc($query);     //REMOVIDO
$num=mysql_num_rows($query); //Obtener el numero de filas

$i=0;     //AGREGADO
while ($i < $num) {     //AGREGADO
          //while ($row = mysql_fetch_assoc($query)) {     //REMOVIDO
          $nombre=mysql_result($query,$i,"nombre");     //AGREGADO
          $telefono=mysql_result($query,$i,"telefono");     //AGREGADO
          $id=mysql_result($result,$i,"id");     //AGREGADO
          echo $nombre."<br>";     //AGREGADO
          echo $telefono."<br>";     //AGREGADO
          echo '<a href="aprobar.php?ID='.$id.'">Aprobar</a><br>';
          echo '<a href="rechazar.php?ID='.$id.'">Rechazar</a><br><br>';

          //TODO ESTO TAMBIEN REMOVIDO
  /*echo $num['nombre']."<br>";
     echo $row['nelefono']."<br>";
     echo '<a href="aprobar.php?ID='.$row['aprobado'].'">Aprobar</a>         <br>';
     echo '<a href="rechazar.php?ID='.$row['aprobado'].'">Rechazar</a>  <br><br>';*/

          $i+=1;     //AGREGADO
}
?>

De esa forma a mi me funciono, espero que te aya servido de algo brother.



Saludos...


En línea

Cerdo

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: AYUDA EN SISTEMA DE APROBAR COMENTARIOS
« Respuesta #2 en: 15 Agosto 2008, 08:26 am »

Que tal kmykc muchas gracias por ayudarme ! eh colocado el codigo que me hiciste favor de pasar y la verdad que funciona bien a la hora de mostrarme los datos de la tabla, ahora si ya se muestra la primera =D , pero pasa 1 cosa


Que al darle "Aprobar" a un comentario, ya no lo aprueba xD es decir ya no sirve ese sistema...eh mirado tu codigo y todo parece estar en orden  tu k opinas =S
« Última modificación: 15 Agosto 2008, 08:47 am por Cerdo » En línea

kmykc

Desconectado Desconectado

Mensajes: 20



Ver Perfil
Re: AYUDA EN SISTEMA DE APROBAR COMENTARIOS
« Respuesta #3 en: 15 Agosto 2008, 17:32 pm »

Que tal Cerdo, que bueno que te aya funcionado bien.

Sobre el enlace para aprobar creo que el problema ya estaria en el codigo que tienes en tu archivo "aprobar.hp", postea tu codigo para verlo y haber que podemos hacer.


Saludos...
En línea

Cerdo

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: AYUDA EN SISTEMA DE APROBAR COMENTARIOS
« Respuesta #4 en: 15 Agosto 2008, 22:22 pm »

hola que onda kmykc mira este es el codigo de aprobar.php



<?php
require_once('conexion.php');

if(isset($_GET['ID']))
{
$update = "UPDATE tabla SET Aprobado = 1 WHERE ID = '".$_GET['ID']."'";
if(mysql_query($update))
{
//echo "Comentario agregado satisfactoriamente.";
header("Location: aprobar_comments.php");
}
else {
echo "El comentario no pudo ser aprobado o el ID suministrado es incorrecto.";
}
}
else {
echo "No especifico ningun ID.";
}
?>




y este es el de rechazar.php





<?php
require_once('conexion.php');

if(isset($_GET['ID']))
{
$update = "DELETE * FROM tabla WHERE ID = '".$_GET['ID']."'";
if(mysql_query($update))
{
//echo "Comentario agregado satisfactoriamente.";
header("Location: aprobar_comments.php");
}
else {
echo "El comentario no pudo ser rechazado o el ID suministrado es incorrecto.";
}
}
else {
echo "No especifico ningun ID.";
}
?>




Creo que requieren un par de modificaciones pero me esta dando un par de errores.
En línea

kmykc

Desconectado Desconectado

Mensajes: 20



Ver Perfil
Re: AYUDA EN SISTEMA DE APROBAR COMENTARIOS
« Respuesta #5 en: 15 Agosto 2008, 23:32 pm »

Que hay cerdo.

Bueno mira, vamonos por partes, ya cheque tus dos codigos y me lanzaron algunos errorsillos pero nada fuerte, empecemos con el primero.

Pero antes que todo, quiero saber si en tu tabla, tienes:

1.- Un campo que se llame ID, si lo tienes no hay problema
2.- Si ese campo es autoincrement por que si no lo es, no asignara el indice de cada registro que agregues y por eso te mandaria un error ya que el argumento que le pasarias llegaria como NULL, si no tienes ese problema, sigamos, pero si lo tienes deberás solucionarlo.

----------"aprobar.php"---------------
OJO, pondre con comentarios (// ERROR) el error y lo explicare despues del code

Código:
<?php
require_once('conexion.php');

if(isset($_GET['ID']))
{
$update = "UPDATE tabla SET Aprobado = 1 WHERE ID = '".$_GET['ID']."'";
if(mysql_query($update))
{
echo "Comentario agregado satisfactoriamente.<br><br>";
//header("Location: aprobar_comments.php");  // ERROR 1
include_once("aprobar_comments.php");
}
else {
echo "El comentario no pudo ser aprobado o el ID suministrado es incorrecto.";
}
}
else {
echo "No especifico ningun ID.";
}
mysql_close($con);
?>

ERROR 1: Estas haciendo un redireccionamiento, al parecer ilegal, lo que hice fue mejor incluir una sola vez la pagina "aprobar_comments.php", pero de hay en fuera todo tu code esta bien.

Vamos con el otro

-----------rechazar.php----------
OJO, pondre con comentarios (// ERROR) el error y lo explicare despues del code

Código:
<?php
require_once('conexion.php');

if(isset($_GET['ID']))
{
        // ERROR 1
        //$update = "DELETE * FROM tabla WHERE ID = '".$_GET['ID']."'";
        $update = "DELETE FROM tabla WHERE ID = '".$_GET['ID']."'";
if(mysql_query($update))
{
echo "Comentario rechazado satisfactoriamente.";
//header("Location: aprobar_comments.php"); // ERROR 2
include_once("aprobar_comments.php");
}
else {
echo "El comentario no pudo ser rechazado o el ID suministrado es incorrecto.";
}
}
else {
echo "No especifico ningun ID.";
}
mysql_close($con);
?>

ERROR 1: En esta parte si tuviste un error en la consulta, si te das cuenta el error era minimo, el "asterisco" despues de "DELETE" no se coloca, por lo tanto, solo bastaba con quitarlo.

ERROR 2: Este tiene la misma explicacion que el de el primer codigo.

Eso es todo, yo hice las pruebas y de esa manera me corrio sin ningun error, PERO QUE NO SE TE OLVIDE REVISAR SI TU CAMPO "ID" EN TU TALBA ES "AUTOINCREMENT".

Espero que te aya ayudado brother, cualquier cosa solo postea.

Tengo un tutorial que hice sobre el manejo de MySQL sobre la consola, esta hecho en PDF, si quieres hecharle un vistaso a qui te dejo el enlace de descarga directa, no es gran cosa, pero te puede servir para algo.

TUTORIAL -->  http://blendarchivos.net76.net/tutos/batchMysql.rar



Saludos...

En línea

Cerdo

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: AYUDA EN SISTEMA DE APROBAR COMENTARIOS
« Respuesta #6 en: 21 Agosto 2008, 05:59 am »

Muchas gracias kmykc gracias a tu ayuda pude terminar el sistema de aprobar comentarios, eres genial, una vez mas Gracias  :D
En línea

kmykc

Desconectado Desconectado

Mensajes: 20



Ver Perfil
Re: AYUDA EN SISTEMA DE APROBAR COMENTARIOS
« Respuesta #7 en: 22 Agosto 2008, 04:14 am »

No hay de que brother para eso estamos.

"Hoy por ti, mañana por mi"


Saludos...
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Sistema de comentarios en ajax
PHP
neopuerta360 2 3,851 Último mensaje 20 Abril 2011, 16:30 pm
por neopuerta360
ayuda con sistema de comentarios y sistema de censura
PHP
newbie007 4 4,513 Último mensaje 24 Noviembre 2011, 00:19 am
por newbie007
Ayuda: Agregar emoticons a este sistema de comentarios
Desarrollo Web
L3I_W0N6 1 2,733 Último mensaje 3 Noviembre 2012, 19:13 pm
por lamomiabmx
Sistema de comentarios en ajax
Programación General
WIитX 0 2,079 Último mensaje 10 Marzo 2013, 20:55 pm
por WIитX
Sistema de borrado de comentarios sin XSS como?
Desarrollo Web
z3nth10n 4 3,173 Último mensaje 2 Noviembre 2013, 12:20 pm
por z3nth10n
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines