![]() |
|
|
#1 |
|
Recien llegado
![]() Fecha de Ingreso: abril-2010
Amigos 0
Mensajes: 9
Gracias: 0
Agradecido 0 veces en 0 mensajes.
|
Bueno antes que nada explicarles que estoy creando una especie de hosting de archivos tipo rapidshare pero gratuito
ya tengo hecho casi todo el script para subir los archivos script para listar y buscar archivos ya enviados todo con php lo que quiero implementar es un contador de descargas para los archivos, para que de esta manera pueda identificar periódicamente los archivos mas antiguos que esten fuera de uso para esto necesito usar mysql me imagino a menos que alguien me de un metodo mas sencillo estuve buscando con google pero no encontre ningun script parecido y no tengo conocimientos de mysql asi que recurro a uds para que me ayuden El script para enviar archivos es con un form y un action en php eso ya esta listo sube archivos y todo Quiero agregar que al momento de subir un archivo, en una base de datos se cree una entrada (no se como se llama) con los datos Archivo, usuario, ip, numero de descargas -al subir el numero de descargas es 0 -el usuario viene del form -la ip se como sacarla -el nombre del archivo ya lo tengo lo que necesito es saber como crear esta entrada en la base de datos y llenarla con los datos que ya tengo ya se el host de mysql de mi web tengo una base de datos llamada Files creada y en blanco a esa quiero que vallan todos estos datos Y para descargar un archivo llamo a un php asi sitio/download.php?archivo="nombre" y con un get saco el nombre del archivo Con este nombre quiero que busque en la base de datos y el numero de descargas que corresponde a ese archivo aumente en 1 no tengo grandes conocimientos de php y ninguno de mysql pero programo en vb.net, c# y java que es muy parecido a php en la sintaxis creo que ya di todos los datos importantes y espero haberme hecho entender asi que no me queda mas que agradecer a quien quiera que pueda y desee ayudarme |
|
|
|
|
|
#2 | |
|
Moderador
![]() Fecha de Ingreso: marzo-2007
Amigos 5
Mensajes: 1.436
Gracias: 17
Agradecido 261 veces en 232 mensajes.
|
Mostro, no te falta nada ya casi lo tenés. El problema que tienes de MySQL no es tanto (es más, incluso ya tienes hecha hasta la base de datos).
Te falta, crear la tabla (utilizando CREATE, o algún gestor gráfico como phpmyadmin). Para insertar los datos en una base de datos MySQL, utiliza INSERT. Código:
$qry = "INSERT INTO Files(usuario, ip, nombre_archivo, cantidad_descarga) VALUES('$nombre_usuario', '$ip', '$nombre_archivo', 0)";
Código:
$qry = "UPDATE contado SET contador = contador + 1 WHERE nombre_archivo = '$nombre_archivo'";
__________________
Hay pocas frases que me identifican tanto Cita:
|
|
|
|
|
|
|
#3 | |||||||||
|
Gran Colaborador
![]() Fecha de Ingreso: junio-2007
Amigos 3
Mensajes: 1.922
Gracias: 48
Agradecido 752 veces en 307 mensajes.
|
Cita:
Cita:
Aquí un ejemplo simple para usar un contador con MySQL: Código:
<?php
//Configuracion de la conexion a base de datos
$bd_host = "localhost";
$bd_usuario = "root";
$bd_password = ""; //Aqui el password para acceder a la BD
$bd_base = "prueba";
//Conexion BD
$conexion = mysql_connect($bd_host, $bd_usuario, $bd_password) or die("No se puede conectar a MySQL");
mysql_select_db($bd_base, $conexion) or die("No se puede seleccionar base de datos");
//consulta BD
$sql=mysql_query("SELECT contador FROM tabla1 WHERE id = 1",$conexion);
//Obtener informacion BD
$row = mysql_fetch_array($sql);
echo "
<tr>
<td width=\"100%\">
Contador: <input type=\"text\" value = \"{$row['contador']}\" size=\"4\"/>
</td>
</tr>
<br />
";
echo "
<form name=\"form1\" method=\"post\" action=\"\">
<table width=\"100%\" border=\"0\">
<tr>
<td bgcolor=\"#D6E3F7\">Aqui informacion formulario..........</td>
</tr>
<tr>
<td><input type=\"submit\" name=\"Submit\" value=\"Enviar\">
</td>
</tr>
</table>
</form>";
//Aumentamos contador a 1
$cont = $row['contador'] + 1;
//Actualizar contador BD
$sql2 = mysql_query("UPDATE tabla1 SET contador = '$cont' WHERE id = 1",$conexion);
//Cerrar BD
mysql_close($conexion);
?>
Código:
-- ----------------------------
-- Crear tabla
-- ----------------------------
CREATE DATABASE `prueba`;
USE `prueba`;
-- ----------------------------
-- Estructura de tabla1
-- ----------------------------
DROP TABLE IF EXISTS `tabla1`;
CREATE TABLE `tabla1` (
`id` int UNIQUE NOT NULL,
`contador` int(10) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- ----------------------------
-- Información
-- ----------------------------
INSERT INTO tabla1 (id, contador) VALUES ('1', '1');
También podrías utilizar archivos, pero eso lo dejo a tu criterio, aquí un ejemplo: Código:
<?php
// Archivo en donde se acumulará el contador
$archivo = "contador.txt";
// Abrimos el archivo
$conexion = fopen($archivo, "r");
// Leemos el contenido
$cont = fread($conexion, filesize($archivo));
// Cerramos la conexión
fclose($conexion);
// Abrimos nuevamente el archivo
$conexion = fopen($archivo, "w");
// Sumamos 1 al contador
$cont = $cont + 1;
// Y reemplazamos por el nuevo contador
$grabar = fwrite($conexion, $cont);
// Cerramos la conexión al archivo
fclose($conexion);
// Imprimimos el contador
echo "
<tr>
<td width=\"100%\">
Contador: <input type=\"text\" value = \"{$cont}\" size=\"4\"/>
</td>
</tr>
<br />
";
echo "
<form name=\"form1\" method=\"post\" action=\"\">
<table width=\"100%\" border=\"0\">
<tr>
<td bgcolor=\"#D6E3F7\">Aqui informacion formulario..........</td>
</tr>
<tr>
<td><input type=\"submit\" name=\"Submit\" value=\"Enviar\">
</td>
</tr>
</table>
</form>";
?>
Tienes que crear el archivo "contador.txt" y agregarle un 0 (valor por defecto), el archivo .txt tiene que estar en la misma carpeta donde está el archivo .php.
__________________
Última edición por Fashion; 01-mar-2011 a las 22:16 |
|||||||||
|
|
|
|
|
#4 | |
|
Recien llegado
![]() Fecha de Ingreso: abril-2010
Amigos 0
Mensajes: 9
Gracias: 0
Agradecido 0 veces en 0 mensajes.
|
Gracias a los 2 por responder
haber si esta semana me doy un poco de tiempo para terminar el servidor les doy el link de la pagina cuando la acabe EDITADO """""""""" ya subi el servidor a una pagina que tenia la dirreccion es
haganlo la prueba y me avisan si es que encuentran algun error El servidor es de 1.5 GB asi que puse un limite de 5 Mb para los archivos que suban Solo se puede subir archivos comprimidos (rar, zip, gz) De momento para las pruevas este es el usuario y contraseña Usuario: El-Hacker.com Contraseña: Test si quieren tener su propia cuenta me mandan un mp es gratis pero para usuarios del foro con mas de 10 mensajes Última edición por zXLestath587Xz; 10-mar-2011 a las 09:08 |
|
|
|
|
|
|
#5 |
|
Recien llegado
![]() Fecha de Ingreso: octubre-2011
Amigos 0
Mensajes: 2
Gracias: 0
Agradecido 0 veces en 0 mensajes.
|
Si alguien esta interesado en algo más sencillo pero completo no duden en enviarme un MP.
Saludos, |
|
|
|
![]() |
| Etiquetas |
| contador, descargas, mysql, php |
| Herramientas | |
| Desplegado | |
|
|

Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| El sendero del hacker | arcangel_night | Hack para newbies | 34 | 26-dic-2012 16:41 |
| Actualización de php para Red Hat Enterprise Linux 4 y 5 [031210] | pamda | Noticias | 0 | 04-dic-2010 08:54 |
| [duda]ya tengo listo mi php pero no se como enviar datos a un correo | spawn_mty | Php | 1 | 07-jul-2010 04:37 |
| Denegación de servicio en MySQL | pamda | Noticias | 0 | 30-jun-2010 11:44 |
| <<->> CURSOS - VÍDEOS - TUTORIALEs <<->> | Fashion | Php | 5 | 11-mar-2010 10:43 |