elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
06 Octubre 2008, 15:38  



+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderadores: дٳŦ٭, Red Mx)
| | |-+  Sistema de descargas... ayuda
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 4 Ir Abajo Imprimir
Autor Tema: Sistema de descargas... ayuda  (Leído 1572 veces)
Cab Calloway
Colaborador

Desconectado Desconectado

Mensajes: 4.292



Ver Perfil
Sistema de descargas... ayuda
« en: 16 Julio 2005, 14:50 »

Hola, estoy configurandome un sistema de descargas, pero, no se hacer una cosa:

Lo k quiero es mostrar la descripcion de la descarga en una celda, la descripcion se coge de la variable $datos, k esta en la base de datos, os pongo el codigo, k no me se explicar bien...

Código:
<LINK REL=STYLESHEET TYPE="text/css" HREF="estilo.css">
</head>

<body>
<style type="text/css">
A:link {text-decoration:none; color:#666666;}
A:visited {color:#666666;}
A:active {color:#666666;}
A:hover {color:#666666;}

A.clase1:visited {color:#666666;}
A.clase1:active {color:#666666;}
A.clase1:link {color:#666666}
A.clase1:hover {color:#666666}

</style>

<?


//// Este archivo muestra los datos de las descargas  ////
include('conexio.php'); //incluimos el config.php que contiene los datos de la conexión a la db

if($cat) { // si viene con la variable cat de categoria, mostramos los resultados de las descargas con esa categoria

 echo $cat;
 $numdesc = mysql_query("SELECT * FROM `descargas` WHERE categoria='$cat' ORDER BY `id` DESC LIMIT 0, 30");
 $desc = mysql_num_rows($numdesc);   // esto es para ver el numero total de descargas añadidas
 echo '<br><br><span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
                <strong style="font-weight: 400"> Total descargas añadidas '.$desc.'  </strong></span>';
 $query = mysql_query("SELECT * FROM `descargas` WHERE categoria='$cat'  ORDER BY `id` DESC LIMIT 0, 30");
 while($row=mysql_fetch_array($query))  // aqui hacemos ya la llamada a la base de dqatos
 {
 $gondo = $row[id];
 $link = "descargas.php?id=$gondo";  // asignamos una variable con un link del perfil de la descarga
 $linkdesc = "mirror.php?id=$gondo"; // asignamos una variable con un link de la descarga
 echo
 '<br><br><table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#666666" width="100%" id="AutoNumber1">
  <tr>
    <td width="80">
    <p align="center"><strong style="font-weight: 400">'.$row[nombre].'</strong>
    <td width="250">
    <p align="center">'.$datos["descripcion"].'</p></td>
    <td width="80">
    <p align="center">
                <strong style="font-weight: 400"> <a href='.$linkdesc.'>Descargar</a> </strong> </td>
  </tr>
</table>';  // mostramos las descargas que hay
 }
 }
 if (empty($cat)) {  // si la variable cat esta vacia, osea que no esta marcada, mostramos lo demas


if(!isset($id))  // comprbamos si viene con id, si no viene mostramos las categorias
{
echo '<span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font><strong style="font-weight: 400">sección
Descargas>Categorias</strong></span>'; 
 $query = mysql_query("SELECT * FROM `desc_categorias` LIMIT 0, 30");
 while($row=mysql_fetch_array($query))  // aqui hacemos ya la llamada a la base de dqatos para mostrar las categorias
 {
 $gondo = $row[categoria];
 $link = "descargas.php?cat=$gondo";  // asignamos una variable con un link hacia la categoria
 echo '<br><br>
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="35%" id="AutoNumber1">
  <tr>
    <td width="50%"> <p align="center">&nbsp;<span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
        <strong style="font-weight: 400"> <a href='.$link.'>'.$row[categoria].'</a> </strong></span></td>
  </tr>
</table>';
 }

}else{

echo 'la descargas seleccionada no existe';
}
}

?>

Pos, en la tabla esa k hay, he puesto el ECHO para mostrar $datos[descripcion ] pero, no me lo muestra, se keda en blanco, no se por k sera, supongo k sera algo sencillo...
El codigo original era este:

Código:
<?

include('conexio.php'); //incluimos el config.php que contiene los datos de la conexión a la db

if ($cat) { // si viene con la variable cat de categoria, mostramos los resultados de las descargas con esa categoria

 echo '<span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
                <strong style="font-weight: 400">Descargas>Categoria>'.$cat.' </strong></span>';
 $numdesc = mysql_query("SELECT * FROM `descargas` WHERE categoria='$cat' ORDER BY `id` DESC LIMIT 0, 30");
 $desc = mysql_num_rows($numdesc);   // esto es para ver el numero total de descargas añadidas
 echo '<br><br><span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
                <strong style="font-weight: 400"> Total descargas añadidas '.$desc.'  </strong></span>';
 $query = mysql_query("SELECT * FROM `descargas` WHERE categoria='$cat'  ORDER BY `id` DESC LIMIT 0, 30");
 while($row=mysql_fetch_array($query))  // aqui hacemos ya la llamada a la base de dqatos
 {
 $gondo = $row[id];
 $link = "descargas.php?id=$gondo";  // asignamos una variable con un link del perfil de la descarga
 $linkdesc = "mirror.php?id=$gondo"; // asignamos una variable con un link de la descarga
 echo '<br><br><table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1">
  <tr>
    <td width="50%">
    <p align="center">&nbsp;<span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
                <strong style="font-weight: 400"> <a href='.$link.'>'.$row[nombre].'</a> </strong></span></td>
    <td width="50%">
    <p align="center"><span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
                <strong style="font-weight: 400"> <a href='.$linkdesc.'>descargatelo</a> </strong></span> </td>
  </tr>
</table>';  // mostramos las descargas que hay
 }
 }
 if (empty($cat)) {  // si la variable cat esta vacia, osea que no esta marcada, mostramos lo demas


if(!isset($id))  // comprbamos si viene con id, si no viene mostramos las categorias
{
echo '<span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font><strong style="font-weight: 400">sección
Descargas>Categorias</strong></span>'; 
 $query = mysql_query("SELECT * FROM `desc_categorias` LIMIT 0, 30");
 while($row=mysql_fetch_array($query))  // aqui hacemos ya la llamada a la base de dqatos para mostrar las categorias
 {
 $gondo = $row[categoria];
 $link = "descargas.php?cat=$gondo";  // asignamos una variable con un link hacia la categoria
 echo '<br><br>
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="35%" id="AutoNumber1">
  <tr>
    <td width="50%"> <p align="center">&nbsp;<span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
        <strong style="font-weight: 400"> <a href='.$link.'>'.$row[categoria].'</a> </strong></span></td>
  </tr>
</table>';
 }
 
}else{
//  nos cercionamos de que la id existe
$query2=mysql_query("SELECT * FROM descargas WHERE id='$id' ");
if($datos=mysql_fetch_array($query2) )
{
// ya esta todo comprobado, mostramos los datos

echo ' <span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
                <strong style="font-weight: 400">Info de Descarga <strong><em>'.$datos["nombre"].' </em></strong> </strong></span>';
$link = "mirror.php?id=$id";
echo '<br>  ';

echo '<br><span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
<strong style="font-weight: 400">Nombre - <b>'.$datos["nombre"].'</b></em></strong> </strong></span>
<br><span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
<strong style="font-weight: 400">Descripcion - <b>'.$datos["descripcion"].'</b></em></strong> </strong></span>
<br><span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
<strong style="font-weight: 400">Tamaño - <b>'.$datos["tamaño"].'</b></em></strong> </strong></span>
<br><span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font>
<strong style="font-weight: 400">Puesto por :  - <b>'.$datos["autor"].'</b></em></strong> </strong></span>
<br>
<span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font> <strong style="font-weight: 400">Enlace
- <a  href="'.$link.'">'.$datos["nombre"].'</a></em></strong> </strong></span> </strong></span>
<br>
<span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font><strong style="font-weight: 400"> Categoria
: - <b>'.$datos["categoria"].'</b></strong> </span> <br>
<span style="FONT-SIZE: 8pt"><font color="#315090"><b>»</b></font> <strong style="font-weight: 400">Veces
Descargado: - '.$datos["contador"].'</strong> </span> <br>
<span style="FONT-SIZE: 8pt"><br>';
echo ' Comentarios Sobre esta Noticia ';

$comentarios = mysql_query("SELECT * FROM `comentarios` WHERE id='$id'  LIMIT 0, 30");  // hacemos un query para seleccionar las comentarios de la id que tenemos seleccionada
while($gon=mysql_fetch_array($comentarios))  // con un while creamos un bucle que muestra todas
{
echo ' <br><b>'.$gon["nombre"].'</b> - '.$gon["comentario"].'<br>';  // mostramos los comentarios
}
echo // ahora mostramos el form para añadir los comentarios
'<form action="insertarcomentario.php" method="POST">
Autor <input type="text" name="nombre" size="30"><br>
ID: <INPUT TYPE="TEXT" value="'.$id.'" NAME="id" readonly><br>
Contenido <textarea name="comentario" cols="30" rows="10"></textarea><br>
<input type="submit" name="submit" value="Enviar"></form>';

 
}else{
echo 'la descargas seleccionada no existe';
}
}
}

?>


Haber kien se anima a leerlo... esk no se mucho sobre manejar bases de datos y to la pesca..

Gracias y Saludos!
En línea

Max 400; caracteres restantes: 366
-Riven-Ward-
RivenSoft

Desconectado Desconectado

Mensajes: 2.219


Do you like Mario? xDDDDDDDDDDDD


Ver Perfil WWW
Re: Sistema de descargas... ayuda
« Respuesta #1 en: 16 Julio 2005, 15:05 »

Es fácil, es un error simple :).

En el While pusiste que la variable para mostrar los datos es $row[], mientras que para mostrar descripción usas $datos[], que no existe.

Cambia esto:

Código:
    <p align="center">'.$datos["descripcion"].'</p></td>

Por esto:

Código:
    <p align="center">'.$row["descripcion"].'</p></td>

Salu2!
En línea

Usuario Banneado
Cab Calloway
Colaborador

Desconectado Desconectado

Mensajes: 4.292



Ver Perfil
Re: Sistema de descargas... ayuda
« Respuesta #2 en: 16 Julio 2005, 15:11 »

Siiiiiiiiiiiiiiiiiiiiiiiiiiii!!!!!!!!!!, -Riven-Ward- muchas gracias! Era eso!! ya me funciona a la perfeccion! y muestra la descripcion perfectamente!!!! Gracias de nuevo!!
En línea

Max 400; caracteres restantes: 366
Cab Calloway
Colaborador

Desconectado Desconectado

Mensajes: 4.292



Ver Perfil
Re: Sistema de descargas... ayuda
« Respuesta #3 en: 16 Julio 2005, 15:19 »

Bueno, ahora me ha surgido una nueva duda  ::)

Esta vez es en el archivo INTRODUCIR.PHP el cual introduce las categorias y las descargas, este esta protegido por contraseña, y procesa la informacion del formulario por un archivo k se llama INSERTARDESCARGAS.PHP, o bien INSERTARCATEGORIAS.PHP ademas de INSERTARCOMENTARIO.PHP, pues bien, a estos archivo le he puesto un include() para k cuando inserte alguna descarga o alguna categoria, de nuevo me redireccione a INTRODUCIR.PHP, y asi no tenga k estar cambiando la URL, pero el problema esk al estar protegido el INTRODUCIR.PHP por una contraseña, me la vuelve a pedir, y no es nada práctico tener k estar metiendo la contraseña... Por eso, me preguntaba yo si habia alguna forma de, mateniendo el mismo método de pass, guardar la pass en una cookie, o algo asi parecido, para k no me vuelva a pedir la contraseña, aki os dejo el INTRODUCIR.PHP:

Código:
<?php
$password="ammm";
if ((isset($pwd)) AND ($pwd=="$password")):
?>
<?php
include('conexio.php');

echo 'Para insertar descargas<br>';
echo '<form action="insertardescargas.php" method="POST">
nombre del programa: <input type="text" name="nombre" size="30"><br>
tu nick: <input type="text" name="autor" size="30" ><br>
link: <input type="text" name="link" size="50"><br>
descripcion del programa: <textarea name="descripcion" cols="30" rows="10"></textarea><br>
tamallo: <input type="text" name="tamaño" size="30"><br>
categoria:';
echo'<select size=1 name=categoria>';
$pepit0 = mysql_query("SELECT * FROM `desc_categorias`");
 while($am=mysql_fetch_array($pepit0))  // aqui hacemos un bucle para mostrar las categorias
 { 
   
    echo'<option>'.$am[categoria].'</option>';
}


echo'</select><br>';
echo '<input type="submit" name="submit" value="Enviar"></form><br>';
echo 'Para insertar categorias<br>';
echo '<form action="insertarcategorias.php" method="POST">
nombre de la Categoria: <input type="text" name="categoria" size="30"><br>
<input type="submit" name="submit" value="Enviar"></form><br>';


?>


<?php
else:


?>

Introduce el password:<br>
<FORM ACTION="introducir.php" METHOD="post">
    <input type="password" name="pwd" SIZE="20" MAXLENGTH="30">
    <input type="submit" name="Submit" value="Enviar">
    <input type="reset" name="reset" value="Borrar">
</FORM>

<?php
endif;
?>

Bueno, haber si se puede hacer esto con el mismo método de pass, sino pos me decir otro método pa ponerlo y k sea mas práctico al meter descargas.

Saludos!
« Última modificación: 16 Julio 2005, 15:22 por kasswed » En línea

Max 400; caracteres restantes: 366
-Riven-Ward-
RivenSoft

Desconectado Desconectado

Mensajes: 2.219


Do you like Mario? xDDDDDDDDDDDD


Ver Perfil WWW
Re: Sistema de descargas... ayuda
« Respuesta #4 en: 16 Julio 2005, 16:31 »

Al momento de introducir la contraseña por primera vez, guarda una cookie de esta manera:

Código:
<?php
if ($_POST["pwd"] == $password) {
setcookie ("pwd_desc", $password, time()+3600);
[...]
}
[...]
?>

Y luego cuando requiera contraseña, simplemente haz un IF así:

Código:
<?php
if ($_COOKIE["pwd_desc"]) {
[...]
}
else {
echo "Necesitas entrar una contraseña!";
}
?>

Salu2!
En línea

Usuario Banneado
Cab Calloway
Colaborador

Desconectado Desconectado

Mensajes: 4.292



Ver Perfil
Re: Sistema de descargas... ayuda
« Respuesta #5 en: 16 Julio 2005, 16:48 »

A ver, he puesto lo del recoradtorio de cookie en INSERTARCATEGORIAS.PHP en INSERTADESCARGAS.PHP y en INSERTACOMENTARIOS.PHP de forma, k si la cookie ta, pues te hace un include() llevandote a introducir.php, pero resulta, k si cambio el metodo y pongo ese k me has puesto tu, me tira error en la linea 38, k es la del ELSE, y no se pork, a lo mejor esk no he puesto los codigos donde debia, o yo k se... Pero me tira error, y si dejo el mismo metodo k tiene, pero guardando la cookie, me vuelve a pedir la pass. Por eso, yo ya me toy volviendo loco :S...

Ayuda plz
En línea

Max 400; caracteres restantes: 366
-Riven-Ward-
RivenSoft

Desconectado Desconectado

Mensajes: 2.219


Do you like Mario? xDDDDDDDDDDDD


Ver Perfil WWW
Re: Sistema de descargas... ayuda
« Respuesta #6 en: 16 Julio 2005, 16:52 »

¿Qué error te tira?

Salu2!
En línea

Usuario Banneado
Rentero
Colaborador

Desconectado Desconectado

Mensajes: 1.152


La paciencia es la madre de la ciencia.


Ver Perfil
Re: Sistema de descargas... ayuda
« Respuesta #7 en: 16 Julio 2005, 16:56 »

Si la cookie está, en vez de incluir introducir.php, sería mejor que redireccionaras:
Código:
header("Location: introducir.php");
En línea

Firmado.
Cab Calloway
Colaborador

Desconectado Desconectado

Mensajes: 4.292



Ver Perfil
Re: Sistema de descargas... ayuda
« Respuesta #8 en: 16 Julio 2005, 17:10 »

Uffff, seguro k lo hago mal , aki os pongo el codigo de como me keda el introducir.php y el (por ejemplo) insertacategorias.php

INTRODUCIR.PHP

Código:
<?php
$password="ammm";
if ($_POST["pwd"] == $password) {
setcookie ("pwd_desc", $password, time()+3600);
?>
<?php
include('conexio.php');

echo 'Para insertar descargas<br>';
echo '<form action="insertardescargas.php" method="POST">
nombre del programa: <input type="text" name="nombre" size="30"><br>
tu nick: <input type="text" name="autor" size="30" ><br>
link: <input type="text" name="link" size="50"><br>
descripcion del programa: <textarea name="descripcion" cols="30" rows="10"></textarea><br>
tamallo: <input type="text" name="tamaño" size="30"><br>
categoria:';
echo'<select size=1 name=categoria>';
$pepit0 = mysql_query("SELECT * FROM `desc_categorias`");
 while($am=mysql_fetch_array($pepit0))  // aqui hacemos un bucle para mostrar las categorias
 { 
   
    echo'<option>'.$am[categoria].'</option>';
}


echo'</select><br>';
echo '<input type="submit" name="submit" value="Enviar"></form><br>';
echo 'Para insertar categorias<br>';
echo '<form action="insertarcategorias.php" method="POST">
nombre de la Categoria: <input type="text" name="categoria" size="30"><br>
<input type="submit" name="submit" value="Enviar"></form><br>';


?>


<?php
else:
?>

Introduce el password:<br>
<FORM ACTION="introducir.php" METHOD="post">   <!-- Si le cambias el nombre a este archivo poner en Action="nombre del archvio.php" !-->
    <input type="password" name="pwd" SIZE="20" MAXLENGTH="30">
    <input type="submit" name="Submit" value="Enviar">
    <input type="reset" name="reset" value="Borrar">
</FORM>

<?php
endif;
?>
Ok, en este codigo me tira error en la linea 38, k es:

Código:
?>


<?php
[b]else:[/b] //linea 38
?>

Introduce el password:<br>

OK, ahora pongo el INSERTACATEGORIA.PHP:

Código:
<?php
include('conexio.php');
//introducimos el nuevo registro en la tabla comentarios
mysql_query("INSERT INTO desc_categorias (categoria) values ('$categoria') ");
if ($_COOKIE["pwd_desc"]){
header("Location: introducir.php");
}
else {
 echo 'Pon pass, k ya se acabó la cookie...';
}
?>

Este, supuestamente va bien, pero al redireccionar al INTRODUCIR.PHP, y este tener el rekisito de la pass, te la vuelve a pedir, en cualkier caso, me tira error en linea 38 antes de poder meter la pass.

Yo estoy seguro de k lo hago mal, y no pongo las cosas donde tienen k ir xD...

PD: Esk no se mucho PHP, se nota? xD

Ayuda plz.  :'(
« Última modificación: 16 Julio 2005, 17:15 por kasswed » En línea

Max 400; caracteres restantes: 366
Rentero
Colaborador

Desconectado Desconectado

Mensajes: 1.152


La paciencia es la madre de la ciencia.


Ver Perfil
Re: Sistema de descargas... ayuda
« Respuesta #9 en: 16 Julio 2005, 17:37 »

Mira. En introducir.php
Esto haces tu:
Código:
<?php
$password="ammm";
if ($_POST["pwd"] == $password) {
//......
else:
//.......
endif;

Haz esto:
Código:
<?php
$password="ammm";
if ($_POST["pwd"] == $password) {
//......
}else{
//.......
}

Weno, estoy un poco perdido(cosas mias) si te sigue dando problemas el sistema(despues de solucionar lo de la ln 38) dilo ;)



UFFFF!!!!, que lio tienes montado. Ahora te pongo como debes dejar esos archivos...espera unos minutos.
« Última modificación: 16 Julio 2005, 17:49 por neohex » En línea

Firmado.
Cab Calloway
Colaborador

Desconectado Desconectado

Mensajes: 4.292



Ver Perfil
Re: Sistema de descargas... ayuda
« Respuesta #10 en: 16 Julio 2005, 17:51 »

Si, ya solucione la linea 38, era el post k has borrao, eso de k abro, pero no cierro, y lo del ELSE: lo cambie por  } ELSE {  , ya no me tira error en ningun sitio, pero no sirve lo de la cookie... a lo mejor esk no lo pongo en el sitio adecuado...  ??? ??? ???
En línea

Max 400; caracteres restantes: 366
Rentero
Colaborador

Desconectado Desconectado

Mensajes: 1.152


La paciencia es la madre de la ciencia.


Ver Perfil
Re: Sistema de descargas... ayuda
« Respuesta #11 en: 16 Julio 2005, 17:58 »

Es por que la comprobación de la cookie debes hacerla en introducir.php y no la haces...de todas maneras ahora te pongo como dejaría yo este archivo...

Aún así prueba a sacarlo tú ;)

Mira lo que te dijo Riven antes...sobre lo de comprobar si está la cookie o no.
En línea

Firmado.
Cab Calloway
Colaborador

Desconectado Desconectado

Mensajes: 4.292



Ver Perfil
Re: Sistema de descargas... ayuda
« Respuesta #12 en: 16 Julio 2005, 18:12 »

:S:S:S:S:S:S nuse...  ??? ??? ???
En línea

Max 400; caracteres restantes: 366
.Master.

Desconectado Desconectado

Mensajes: 96



Ver Perfil
Re: Sistema de descargas... ayuda
« Respuesta #13 en: 16 Julio 2005, 18:15 »

una pregunta amigo cual sistema de descargas estas usando? , yo ando buscando uno.

Saludos :D
En línea
Cab Calloway
Colaborador

Desconectado Desconectado

Mensajes: 4.292



Ver Perfil
Re: Sistema de descargas... ayuda
« Respuesta #14 en: 16 Julio 2005, 18:20 »

Pos, vete a www.webtaller.com, hay muchos.

Saludos!
En línea

Max 400; caracteres restantes: 366
Páginas: [1] 2 3 4 Ir Arriba Imprimir 
Ir a:  







Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.6 | SMF © 2006-2008, Simple Machines LLC
Free counter and web stats