Problemas con un Get
Javier Valenzuela
jvalenzuela en tecnova.cl
Mie Ago 1 11:20:20 CLT 2007
anibal leiva wrote:
> Señores, junto con saludarles, espero no hacerles una pregunta muy
> basica para no ofenderlos, estoy reciviendo un Get asi:
>
> http://192.168.0.1/prueba/get.php?evento=prueba&fecha=date&hora=time&dispositivo=router&ip=1.1.1.1
> <http://192.168.0.1/prueba/get.php?evento=prueba&fecha=date&hora=time&dispositivo=router&ip=1.1.1.1>
>
> y yo lo recivo de la siguente manera:
>
> <?php
>
>
> $handle = fopen("/var/www/prueba/prueba.txt","a");
> /*
> $evento = "";
> $fecha = "";
> $hora = "";
> $dispositivo = "";
> $ip = "";
> */
> foreach($_GET as $dato)
> {
> fputs($handle,$dato);
> }
> fclose($handle);
>
>
>
> {
>
> mysql_connect('localhost','usuario','pass') or die('Error de
> conexion.');
> mysql_select_db('base');
>
> $sql = "insert into eventorecividos(evento) values ('$evento')";
> $sql = "insert into eventorecividos(fecha) values ('$fecha')";
> $sql = "insert into eventorecividos(hora) values ('$hora')";
> $sql = "insert into eventorecividos(dispositivo) values
> ('$dispositivo')";
> $sql = "insert into eventorecividos(ip) values ('$ip')";
>
>
> mysql_query($sql) or die('Error de BD.');
>
> }
>
>
>
> ?>
>
> y cuando ejecuto el get en la base me muestra esto:
>
> mysql> select * from eventorecividos;
> +----+--------+------------+----------+-------------+------+
> | id | evento | fecha | hora | dispositivo | ip |
> +----+--------+------------+----------+-------------+------+
> | 43 | NULL | 0000-00-00 | 00:00:00 | NULL | 0 |
> | 44 | NULL | 0000-00-00 | 00:00:00 | NULL | 0 |
> | 45 | NULL | 0000-00-00 | 00:00:00 | NULL | |
> | 46 | NULL | 0000-00-00 | 00:00:00 | NULL | |
> | 47 | NULL | 0000-00-00 | 00:00:00 | NULL | |
> | 48 | NULL | 0000-00-00 | 00:00:00 | NULL | |
> +----+--------+------------+----------+-------------+------+
> 6 rows in set (0.00 sec)
>
> y hasta ahora he probado variadas formulas, pero todavia no tengo
> resultado, solo logro guardar los datos en un txt, y si en el SQL
> reemplazo cada variable solo con la var $dato, lo unico q' guarda bien
> es la ip en la base, y si alguen sabe como registrar la hora y la
> fecha seria genial, por favor ayuden a este principiante, y de
> antemano Gracias!!!
>
> Salu2
> Anibal L. Y.
Hola,
Es "recibido" no "recivido"
Recibe las variables de esta manera:
$evento = $_GET["evento"];
$hora = $_GET["hora"];
etc...
Te aconsejo buscar comillas y caracteres extraños antes de hacer la
insercion SQL, puede ser con str_replace. La query sql deberias hacerla
en una sola linea (mas que nada por orden).
Ah, y fijate que estes insertando datos de tipo correcto en la tabla, no
puedes escribir la palabra "date" dentro de un campo date en mysql.
str_replace= http://www.php.net/manual/es/function.str-replace.php;
Inserciones SQL = http://www.w3schools.com/sql/sql_insert.asp
PD: Si es posible deberias usar POST en vez de GET como metodo de
traspaso de variables de una pagina a otra.
--
Por favor no haga Top Posting!
http://es.wikipedia.org/wiki/Top-posting
+-----------------------------+
|Javier Valenzuela P. |
|Ingeniero de Desarrollo |
|jvalenzuela en tecnova.cl |
|-----------------------------|
|Fijo : +(56)(02)594 23 05 |
|Anexo: 2305 |
|Movil: +(56)(08)188 91 13 |
+-----------------------------+
Más información sobre la lista de distribución PHP