hacker


Ingresar con nombre de usuario, contraseña y duración de la sesión
| Portal Hacker | Editorial | Descargas | Ezine |
Inicio Ayuda Ingresar Registrarse
25 de Julio de 2008, 01:58:59
Noticias: Te gusta el nuevo diseño?
Opina al respecto en:
Para ver este enlace Registrate o Inicia Sesion
Este Tema

+  Foros pOrtal Hacker
|-+  Programacion
| |-+  Desarrollo Web
| | |-+  Php (Moderador: shevchenko)
| | | |-+  Tutorial de programación en php con bases de datos
0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Tutorial de programación en php con bases de datos  (Leído 363 veces)
reydelmundo11
NZ1
*
Desconectado Desconectado

Mensajes: 43


Hackersclub


Ver Perfil WWW
« : 27 de Marzo de 2006, 09:33:20 »

Bueno, pues estaba un poquito aburrido aqui y me he decidido a poner un tutorial de como escribir datos dentro de una bd con php, leerlos, borrar tablas etc...
Lo primero, aunque esto viene ya preparado en los hoting hay que saber 4 datos basicos:Una vez puestos estos datos vemos si va bien las conexiones:
La orden mysql_connect, permite conectarse a un servidor de bases de datos y logearse.
La variable $co, marca que con esa variable de conexion vamos a enviar instrucciones y demas.
Luego con la instruccion mysql_select_d b seleccionamos la bd a partir de abernos conectado con la variable $co.
Código:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
?>

La instruccion or die, permite en caso de fallo de la sentencia mostrar un error, no todas las sentencias pueden usar or die. Me acuerdo que puse un or die en un include, me volvi loco  Grin.
La filosofia de una tabla en la bd es la siguiente.
Tenemos por ejemplo una tabla llamada estadisticas, y con los campos equipo|goles|posicion
Y se podria representar asi:
Ahora estan las ordenes en mysql para coger esos datos. Tienen la siguiente sintaxis.Esto es como sería asi hablado, para que se entienda pero la sentencia como la escribimos es:
Código:
SELECT dato FROM tabla WHERE dato='datodelusuario'
La sentencia WHERE es opcional.
Para enviar estas ordenes se usa:
mysql_query, esta funcion manda una orden a una bd, en base a  una conexion. La repuesta se guarda en una variable, que se transforma en un array, un ejemplo de como podemos nosotros coger un dato de la bd, un dato sin tener en cuenta de algo que el usuario haya seleccionado.
Código:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$dato mysql_query("SELECT Posicion FROM estadisticas",$co);
if(
mysql_num_rows($dato)){
//Primero se comprueva si el dato existe, de existir le sacamos
$dato mysql_fetch_array($dato); //Esta funcion nos permite sacar el dato, en forma de array, dato[0] muestra el primero que haya encontrado en la bd, esto es solo util si hay solo un dato
$dato[0] = htmlspecialchars($dato[0]); //Lo vamos a mostrar y por seguridad lo limpiamos, no vaya a ser que haya una vulnerabiliad XSS.
$dato $dato[0]; //pasamos la variable dato[0] a otra que es un array, yo lo hago para que se mas facil el trabajo, vosotros podeis hacer lo que querais.
echo 'El dato sacado es '.$dato;
}else{
echo 
'No se puedo sacar el dato de la bd';
}
?>
                   
Esto nos permite sacar un dato, la sentencia de antes se usa normalmente cuando hay que sacar muchos datos.Cuando queremos sacar solo uno, que por ejemplo nos muestre, cual equipo esta en la 3    º posicion, usamos esto, con la instruccion WHERE:
Código:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$dato mysql_query("SELECT Equipo FROM estadistica WHERE posicion='3'",$co);
if(
mysql_num_rows($dato)){
//Primero se comprueva si el dato existe, de existir le sacamos
$dato mysql_fetch_array($dato); //Esta funcion nos permite sacar el dato, en forma de array, dato[0] muestra el primero que haya encontrado en la bd, esto es solo util si hay solo un dato
$dato[0] = htmlspecialchars($dato[0]); //Lo vamos a mostrar y por seguridad lo limpiamos, no vaya a ser que haya una vulnerabiliad XSS.
$dato $dato[0]; //pasamos la variable dato[0] a otra que es un array, yo lo hago para que se mas facil el trabajo, vosotros podeis hacer lo que querais.
echo 'El tercer equipo es: '.$dato;
}else{
echo 
'No se puedo sacar el dato de la bd, posiblemente no existe';
}
?>

Ahora si nosotros queremos sacar los datos de la bd, todos pero sin ningun orden, podemos usar:
Código:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$lista mysql_query("SELECT * FROM estadisticas",$co); //El * sirve para acceder a todo tipo de datos dentro de esa tabla
while ($listando mysql_fetch_array($lista)) {
echo 
'Equipo: '.$listando["Equipo"].', '.'Goles: '.$listando["Goles"].', '.'Posicion: '.$listando["Posicion"];
}
?>

Aunque si ademas, quieres que los datos te salgan ordenados, puedes:
Código:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$lista mysql_query("SELECT * FROM estadisticas ORDER BY 'Posicion' DESC",$co); //El * sirve para acceder a todo tipo de datos dentro de esa tabla, ahora estan los datos ordenados
while ($listando mysql_fetch_array($lista)) {
echo 
'Equipo: '.$listando["Equipo"].', '.'Goles: '.$listando["Goles"].', '.'Posicion: '.$listando["Posicion"];
}
?>
Se puede hacer lo mimo, pero en vez de poner DESC puedes poner ASC.
Ahora, si quieres grabar datos en una base de datos, se puede hacer:
Código:
<?php
//Estos datos son enviamos por un formulario, damos poor hecho que sabe hacer formularios
$co mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$equipo $_POST["equipo"];
$goles $_POST["goles"];
$posicion $_POST["posicion"];
$guardarficha mysql_query("REPLACE INTO N_noticias (Equipo,Goles,Posicion) VALUES ('$equipo','$goles',$posicion')",$co) or die (mysql_error());
Echo 
'Datos agregados con exito';
?>

Siempre hay que tener cuidado con estas ordenes que van a la bd, entre otras cosas porque, con pueden producirse mysql inyection.
Ahora vamos a crear una tabla, la tabla con la que hemos hecho todos estos ejemplos:
Código:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$creartabla mysql_query("CREATE TABLE estadisticas(
Equipo TEXT NOT NULL,
Goles INT(2) NOT NULL,
Posicion INT(2) NOT NULL
);"
)or die(mysql_error());
echo 
'Tabal creada:';
?>

Tambien, podemos cambiar un dato por otro:
Código:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$goles $_POST["goles"];
$cambiar mysql_query("Update estadisticas Set  Goles='$goles' Where Equipo='Real.M'",$co) or die (mensaje(mysql_error()));
echo 
'Ficha cambiada';
?>

Y tambien podemos borrar un dato de nuestra bd:
Código:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$eliminar mysql_query("DELETE FROM `estadisticas` WHERE Equipo='atletic'",$co);
echo 
'Ficha borrada con exito';
?>

Vaciar el contenido entero de una tabla:
Código:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$eliminartabla0 mysql_query("DELETE FROM `estadisticas`");
echo 
'Tabla vaciada';
?>
Importante no confundir DELETE con DROP delete es para vaciar una tabla y drop es para borrarla, ejemplo de borrar una tabla:
Código:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$eliminartabla0 mysql_query("DROP TABLE `estadisticas`");
echo 
'Tabla borrada';
?>
A lo mejor despues de este tutorial esto de las bases de datos hos puede parecer una tonteria..., y no lo es actualmente en internet muchisimas cosas de almazenar informacion se hace en las bases de datos.
Para que veais un ejemplo de una base de datos, aqui en el smf:
Si nosotros, los usuarios normales (en cualquier foro smf), tenemos el numero 1 (no se cual tenemos). Y imaginaros que el 5 es el admin, pues con modificar un numero podríamos tener un acceso total al sistema. Mientras que con el 1 somo usuarios normales.     ¿fascinante el poder que tienen, no??
Bueno, dicho esto me despido de todos vosotros, me he entretenido un rato escribiendo esto..., podeis hacer lo que hos de la gana con este tutorial, pero por favor me gustaría mucho que si le copiais que pusiera mi nombre en el  Grin
Sin mas, me despido de quien me este leyendo y hasta otra que este aburrido y me de por escribir  Cheesy
Saludos a todos  :rolleyes:
Fuente original:
http://hackersclub.info
P.D pongo este mensaje para inagurar el foro., Saludos
En línea

Obtenga su foro
Para ver este enlace Registrate o Inicia Sesion
smf
gratuito en:

Para ver este enlace Registrate o Inicia Sesion
Páginas: [1] Ir Arriba Imprimir 
« anterior próximo »
Ir a:  


Ingresar con nombre de usuario, contraseña y duración de la sesión

Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC hacker

Juegos gratis - Articulos PHP - Juegos - Trucos - Letras - Juegos - Juegos Online