Mi primer contacto con mysql
Hola buenas tardes.
Estoy haciendo unas pruebas con mysql y php, y este serÃa mi primer contacto con ellos.
He leÃdo un poco por la web y he hecho lo siguiente.
Bueno mi objetivo, igual no es funcional pero es un capricho. En una sección de la web quisiera restringir el acceso y guardar en una base de datos los usuarios que intenten acceder.
En primer lugar he creado una base con el nombre bdatos y una tabla con el nombre usuarios:
CREATE TABLE `usuarios` (
`Id` int(11) NOT NULL auto_increment,
`Ip` varchar(80) NOT NULL default '',
`Fecha` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`Id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
Luego en php he hecho lo siguiente
En el index.php
<?php
function Saber_IP(){
if(getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")){
$ip = getenv("HTTP_CLIENT_IP");
}
elseif(getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")){
$ip = getenv("HTTP_X_FORWARDED_FOR");
}
elseif(getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")){
$ip = getenv("REMOTE_ADDR");
}
elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")){
$ip = $_SERVER['REMOTE_ADDR'];
}
else {
$ip = "Unknown";
}
return $ip;
}
$Ip = Saber_Ip();
include "conexion.php";
mysql_query("INSERT INTO usuarios (Id, Ip, Fecha)VALUES ('', '$Ip', ''");
include "cerrar_conexion.php";
?>
En conexion.php
<?php
$dbhost="localhost";
$dbusuario="Mi_usuario";
$dbpassword="Mi_contraseña";
$db="bdatos";
$conexion = mysql_connect($dbhost, $dbusuario, $dbpassword);
mysql_select_db($db, $conexion);
?>
En cerrar_conexion.php
<?php mysql_close($conexion);?>
El problema es que entro en el index.php y no guarda mi ip en la base de datos, no guarda nada.
Gracias.
Estoy haciendo unas pruebas con mysql y php, y este serÃa mi primer contacto con ellos.
He leÃdo un poco por la web y he hecho lo siguiente.
Bueno mi objetivo, igual no es funcional pero es un capricho. En una sección de la web quisiera restringir el acceso y guardar en una base de datos los usuarios que intenten acceder.
En primer lugar he creado una base con el nombre bdatos y una tabla con el nombre usuarios:
CREATE TABLE `usuarios` (
`Id` int(11) NOT NULL auto_increment,
`Ip` varchar(80) NOT NULL default '',
`Fecha` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`Id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
Luego en php he hecho lo siguiente
En el index.php
<?php
function Saber_IP(){
if(getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")){
$ip = getenv("HTTP_CLIENT_IP");
}
elseif(getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")){
$ip = getenv("HTTP_X_FORWARDED_FOR");
}
elseif(getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")){
$ip = getenv("REMOTE_ADDR");
}
elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")){
$ip = $_SERVER['REMOTE_ADDR'];
}
else {
$ip = "Unknown";
}
return $ip;
}
$Ip = Saber_Ip();
include "conexion.php";
mysql_query("INSERT INTO usuarios (Id, Ip, Fecha)VALUES ('', '$Ip', ''");
include "cerrar_conexion.php";
?>
En conexion.php
<?php
$dbhost="localhost";
$dbusuario="Mi_usuario";
$dbpassword="Mi_contraseña";
$db="bdatos";
$conexion = mysql_connect($dbhost, $dbusuario, $dbpassword);
mysql_select_db($db, $conexion);
?>
En cerrar_conexion.php
<?php mysql_close($conexion);?>
El problema es que entro en el index.php y no guarda mi ip en la base de datos, no guarda nada.
Gracias.