Páginas: [1] 2 3 4
|
 |
|
Autor
|
Tema: Sistema de descargas... ayuda (Leído 1572 veces)
|
Cab Calloway
Colaborador
Desconectado
Mensajes: 4.292
|
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... <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"> <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: <?
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"> <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"> <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
Mensajes: 2.219
Do you like Mario? xDDDDDDDDDDDD
|
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: <p align="center">'.$datos["descripcion"].'</p></td> Por esto: <p align="center">'.$row["descripcion"].'</p></td> Salu2!
|
|
|
|
|
En línea
|
Usuario Banneado
|
|
|
Cab Calloway
Colaborador
Desconectado
Mensajes: 4.292
|
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
Mensajes: 4.292
|
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: <?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
Mensajes: 2.219
Do you like Mario? xDDDDDDDDDDDD
|
Al momento de introducir la contraseña por primera vez, guarda una cookie de esta manera: <?php if ($_POST["pwd"] == $password) { setcookie ("pwd_desc", $password, time()+3600); [...] } [...] ?> Y luego cuando requiera contraseña, simplemente haz un IF así: <?php if ($_COOKIE["pwd_desc"]) { [...] } else { echo "Necesitas entrar una contraseña!"; } ?> Salu2!
|
|
|
|
|
En línea
|
Usuario Banneado
|
|
|
Cab Calloway
Colaborador
Desconectado
Mensajes: 4.292
|
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
Mensajes: 2.219
Do you like Mario? xDDDDDDDDDDDD
|
¿Qué error te tira?
Salu2!
|
|
|
|
|
En línea
|
Usuario Banneado
|
|
|
Rentero
Colaborador
Desconectado
Mensajes: 1.152
La paciencia es la madre de la ciencia.
|
Si la cookie está, en vez de incluir introducir.php, sería mejor que redireccionaras: header("Location: introducir.php");
|
|
|
|
|
En línea
|
Firmado.
|
|
|
Cab Calloway
Colaborador
Desconectado
Mensajes: 4.292
|
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 <?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: ?>
<?php [b]else:[/b] //linea 38 ?>
Introduce el password:<br> OK, ahora pongo el INSERTACATEGORIA.PHP: <?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
Mensajes: 1.152
La paciencia es la madre de la ciencia.
|
Mira. En introducir.phpEsto haces tu: <?php $password="ammm"; if ($_POST["pwd"] == $password) { //...... else: //....... endif; Haz esto: <?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
Mensajes: 4.292
|
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
Mensajes: 1.152
La paciencia es la madre de la ciencia.
|
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
Mensajes: 4.292
|
:S:S:S:S:S:S nuse... ??? ??? ???
|
|
|
|
|
En línea
|
Max 400; caracteres restantes: 366
|
|
|
.Master.
Desconectado
Mensajes: 96
|
una pregunta amigo cual sistema de descargas estas usando? , yo ando buscando uno. Saludos 
|
|
|
|
|
En línea
|
|
|
|
Cab Calloway
Colaborador
Desconectado
Mensajes: 4.292
|
|
|
|
|
|
En línea
|
Max 400; caracteres restantes: 366
|
|
|
|
Páginas: [1] 2 3 4
|
|
|
|