elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


  Mostrar Temas
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [15] 16 17 18
141  Programación / PHP / Como logra hacer esto los script de Google Publicidad ?? en: 14 Octubre 2008, 01:19 am
Hola:

Que tal... Como bien sabemos, la publicidad de Google actualmente es un recurso que muchos webmasters utilizan para obtener ingresos en sus sitios web mediante click e impresiones de anuncios, pero lo que me llama la atencion es que con simplemente pegar un script de javascript en el area donde apareceran los anuncios, este de alguna forma hace que los anuncios de google (almacenados en la base de datos de google, me imagino..) se despliegen en tu sitio web como si estuviesen en tu propia base de datos.

Tratando de alguna forma emular este procedimiento y utilizando mi Servidor Local apache, en el espacio http://localhost/~diabliyo/ coloque un script (index.php) que solamente imprime una imagen, posteriormente en el espacio web http://localhost/~pruebas/ realize el siguiente script:

Código
  1.    <head>
  2.    <title>Test de Publicidad Local</title>
  3.    </head>
  4.  
  5.    <body>
  6.    <script language="javascript" type="text/javascript" src="http://localhost/~diabliyo/index.php"></script>
  7.    </body>
  8. </html>

Como bien saben, simplemente no sucedio nada :D. Asi que en base a mi explicacion me gustaris obtener mas opiniones :D !!

Gracias por su tiempo !!

bye bye
142  Programación / Bases de Datos / Tipos de Datos en MySQL !! en: 30 Septiembre 2008, 18:42 pm
Utilizando PHP y MySQL, realize un sistema de productos, y originalmente esta es mi tabla donde inserto mis productos:

Código:
create table PRODUCTOS(
     ID bigint not NULL,
     NOMBRE varchar(100) not NULL,
     TIPO int not NULL,
     sección varchar(50) not NULL,
     CATEGORIA varchar(50) not NULL,
     FECHA text not NULL,
     primary key(id)
     );

Con esa tabla puedo insertar ID's de tipo enteros, pero me he topado con la necesidad de insertar ID's de este tipo: M550, y pues me da error debido a que M550 no es tipo INT :S.

Como seria mas conveniente declarar el campo ID para que acepte valores enteros y enteros con caracteres ??...

bye bye
143  Programación / PHP / [SOLUCIONADO] Como controlar la Paginacion a gran escala ?? en: 25 Septiembre 2008, 17:24 pm
EDITADO...

Hola:

En la mayoria de mis sistemas web utilizo un par de funciones que me simplifican el trabajo de la paginacion, estas son las funciones:

selector_paginacion() :: Esta funcion genera los numeros de hojas/paginas a mostrar, con ella se manejan diversos argumentos para hacer esta funcion multifuncional y portable.
Código
  1. <?php
  2. function selector_paginacion( $base, $minimo, $hoja_actual, $enlace, $ajax_enlace, $capa_ajax )
  3. {
  4. $cons= consultar( $base, "*" );
  5.  
  6. //si existe el numero de registros 'minimo' +1, entonces se producira la paginacion
  7. if( mysql_num_rows($cons)>$minimo )
  8. {
  9. echo "<div id=\"paginacion\">";
  10. $roll= ceil(mysql_num_rows($cons)/$minimo); //total_registros/minimo
  11.  
  12. if( !strcmp( $ajax_enlace, "0") ) //Enlaces normales HTML/PHP
  13. {
  14. if( $hoja_actual>1 )
  15. echo "<a href=\"". $enlace. "&pagina=". ($hoja_actual-1). "\">";
  16.  
  17. echo "<img src=\"../admin/imagenes/flecha_izquierda.png\" border=\"0\">";
  18.  
  19. if( $hoja_actual>1 )
  20. echo "</a>";
  21. for( $i=0; $i<$roll; $i++ )
  22. {
  23. echo " ";
  24. if( $i==($hoja_actual-1) )
  25. echo "<span style=\"background-color:white;\">". ($i+1). "</span>";
  26. else echo "<a href=\"". $enlace. "&pagina=". ($i+1). "\"><span>". ($i+1). "</span></a>";
  27. }
  28. echo " ";
  29.  
  30. if( $hoja_actual<$roll )
  31. echo "<a href=\"". $enlace. "&pagina=". ($hoja_actual+1). "\">";
  32.  
  33. echo "<img src=\"../admin/imagenes/flecha_derecha.png\" border=\"0\">";
  34.  
  35. if( $hoja_actual<$roll )
  36. echo "</a>";
  37. }
  38.  
  39.  
  40. else //enlaces AJAX
  41. {
  42. if( $hoja_actual>1 )
  43. echo "<a href=\"#\" onclick=\"cargar_datos( '". $ajax_enlace. "&pagina=". ($hoja_actual-1). "', '". $capa_ajax. "', 'GET', '0' );\">";
  44.  
  45. echo "<img src=\"../admin/imagenes/flecha_izquierda.png\" border=\"0\">";
  46.  
  47. if( $hoja_actual>1 )
  48. echo "</a>";
  49. for( $i=0; $i<$roll; $i++ )
  50. {
  51. echo " ";
  52. if( $i==($hoja_actual-1) )
  53. echo "<span style=\"background-color:white;\">". ($i+1). "</span>";
  54. else echo "<a href=\"#\" onclick=\"cargar_datos( '". $ajax_enlace. "&pagina=". ($i+1). "', '". $capa_ajax. "', 'GET', '0' );\"><span>". ($i+1). "</span></a>";
  55. }
  56. echo " ";
  57.  
  58. if( $hoja_actual<$roll )
  59. echo "<a href=\"#\" onclick=\"cargar_datos( '". $ajax_enlace. "&pagina=". ($hoja_actual+1). "', '". $capa_ajax. "', 'GET', '0' );\">";
  60.  
  61. echo "<img src=\"../admin/imagenes/flecha_derecha.png\" border=\"0\">";
  62.  
  63. if( $hoja_actual<$roll )
  64. echo "</a>";
  65. }
  66.  
  67. unset($i);
  68. unset($roll);
  69. echo "</div>";
  70. }
  71.  
  72. unset($cons);
  73. }
  74. ?>

paginacion() :: esta funcion procesa la paginacion, brindando deteccion de errores o acceso a paginas inexistentes :D !!!

Código
  1. function paginacion( $pagina, $base, $minimo )
  2. {
  3. $cons= consultar( $base, "*" );
  4.  
  5. //si existen suficientes registros
  6. if( mysql_num_rows($cons)>$minimo )
  7. {
  8. $max_paginas= ceil(mysql_num_rows($cons)/$minimo); //num. de paginas totales
  9. //echo "<script language=\"javascript\" type=\"text/javascript\">alert('". $max_paginas. "');</script>";
  10.  
  11. //si estamos en el rango, entonces la consultar es favorable y no estan alterando la consulta
  12. if( $pagina>1 && $pagina<($max_paginas+1) )
  13. return $pagina;
  14. }
  15. return 1;
  16. }

Mi Pregunta es: en la funcion selector_pagina() genero el numero de hojas, pero actualmente tengo mas de 20 hojas y se me ha echo un amontonadero :S, como logro re-paginas las hojas, permitiendo visualizar solo un rango de 10 hojas, ya si existen mas de 10 hojas poder pasar de hoja en hoja sin que se sature la barra donde se muestran las hojas :S !!??

144  Programación / PHP / Problema para realizar respaldo de MySQL con PHP !! en: 23 Septiembre 2008, 22:35 pm
Tengo una aplicacion web casi completada, solo me falta la parte de RESPALDOS, en esta parte tengo la idea de que el usuario con solo presionar un boton se realize un respaldo de todas las tablas y valores de la Base de Datos existente.

Estoy iniciando a codificar el script pero no logro obtener los nombres de las tablas :S, vaya, para obtener el contenido de cada tabla solamente utilizo mysql_query() y meto toda la consulta a un mysql_fetch_array(). Pero no encuentro como obtener los nombres de las tablas ?? (show tables;)...

Alguna idea ??...

Código
  1. <?php
  2. if( !strcmp($_GET["set"], "generar_respaldo") ) //genera un nuevo respaldo
  3. {
  4. $file= fopen( "backups/respaldo_". date( "dmy", time() ). ".mysql", "w" );
  5. $link= conectar();
  6.  
  7. fputs( $file, "#################################################\n" );
  8. fputs( $file, "#########\tTABLAS DEL SISTEMA\t#########\n" );
  9. fputs( $file, "#################################################\n" );
  10.  
  11. //escribiendo tablas :: No tengo idea como obtener los NOMBRES de las TABLAS :(
  12. //while( $buf= mysql_fetch_array( mysql_query( "show tables;", $link ) ) )
  13. // fputs( $file, "create table ". $buf. "\n" );
  14. //unset($buf);
  15.  
  16. fputs( $file, "\n#########################################################\n" );
  17. fputs( $file, "#########\tINFORMACION DE LAS TABLAS\t#########\n" );
  18. fputs( $file, "#########################################################\n" );
  19.  
  20. //mysql_close($link);
  21. fclose($file);
  22.  
  23. echo "Respaldo Generado con exito.";
  24. }
  25. ?>

bye bye
145  Programación / PHP / Como Geolocalizar IP de una forma mas detallada ? en: 22 Septiembre 2008, 16:35 pm
Hola:

Actualmente en mi sistema web utilizo GeoIP para geolocalizar el pais del cual proviene la IP visitante, pero quisiera saber si exista alguna libreria o como podria realizar una geolocalizacion un poco mas detallada, vaya, me gustaria poder obtener no solo el pais, sino tambien el estado/provincia y ciudad/region.

Creo que esto SI es posible, ya que he visto aplicaciones como http://feedjit.com/, que proporciona una geolocalizacion mas detallada de una IP, proporcionando PAIS, ESTADO/PROVINCIA, CIUDAD/REGION.

Gracias por su atencion antemano :D !!

146  Programación / PHP / Como llamar automaticamente funciones AJAX ?? en: 27 Agosto 2008, 20:15 pm
Hola:

Estoy realizando un sistema para vender cosas, asi que en el apartado de VENTAS tengo un formulario un poco amplio en donde se doy escojer el tipo de venta, datos del cliente y finalmente una capa GRANDE (contenedor) en donde voy poniendo los articulos/productos que va comprando el cliente. Utilizando AJAX compruebo la existencia del Cliente que desea comprar o bien en el caso que no exista pongo un formulario para que puedan registrarlo a la vez que esta comprando.

Mi idea es que en la capa GRANDE (contenedor de los productos) poderla refrescar sin necesidad de dar click, vaya, que se ejecute una funcion de AJAX cada ciertos segundos...

Como podria ejecutar una funcion de AJAX cada cierto tiempo ???...

NOTA: toda mi aplicacion esta echa con PHP y solo utilizo AJAX para listar, buscar y generar datos rapidos sin refrescar. Para esto utilizo una sola funcion de AJAX, la cual llamo cargar_datos();, mediante eventos onclick, onchnage o onsubmit

bye bye
147  Media / Multimedia / Ayuda para edicion de video simple (agregar logotipo) !! en: 19 Agosto 2008, 20:52 pm
Utilizo GNU/Linux y actualmente uso avidemux para codificar, cortar, unir, agregar subtitulos, efectos, etc... a mis videos,  etc...

Quiero agregar un logotipo en el video, tipo como el que se ve cuando ves la television, seria un logotipo pequeno que este hubicado en una esquina del video (superior derecha), en avidemux la opcion esta disponible directamente como Filtro para el video a codificar, el problema es que siempre que inserto la imagen se visualiza con fondo blanco :S... Y la imagen que inserto esta echa sobre un fondo transparente, pero aun asi sigue viendose con fondo blanco una ves montada.

Alguien tiene alguna idea ??...

NOTA: evitense la molestia de recomendarme programas de windows o explicaciones, ya que no las tomare en cuenta porque no utilizo ese sistema operativo.

bye bye
148  Programación / PHP / Como procesar campos de formulario con AJAX !! en: 18 Agosto 2008, 22:22 pm
Hola:

Como bien sabemos AJAX por lo general realiza el procesamiento de los datos ya bien sobre la mismia hoja PHP donde estamos trabajando o bien sobre una nueva hoja PHP, eso dependiendo las neecsidades, pero el metodo que he optado yo es procesar las llamadas a AJAX usando una hoja php llamada AJAX.php, en esta hoja proceso todas las variales enviadas mediante el stream GET o POST, segun se indique en la misma funcion con la que llamo a AJAX.

La funcion que utilizo actualmente para procesar datos comunes e inputs/select/textarea de un formulario (vaya tipo POST) es:

SCRIPT.JS
Código
  1. //Funcion para obtener conector AJAX
  2. function ajax()
  3. {
  4. var pagina=false; //conector ajax
  5.  
  6. if( window.XMLHttpRequest ) //Navegador Firefox
  7. pagina= new XMLHttpRequest(); //creamos objeto para el navegador
  8. else if( window.ActiveXObject ) //Navegador Internet Explorer
  9. {
  10. try //Version Actual
  11. {
  12. pagina= new ActiveXObject( "Msxml2.XMLHTTP" ); //creamos objeto para el navegador
  13. }
  14. catch(e) //version Antigua
  15. {
  16. try
  17. {
  18. pagina= new ActiveXObject( "Microsoft.XMLHTTP" ); //creamos objeto para el navegador
  19. }
  20. catch(e)
  21. {
  22. }
  23. }
  24. }
  25. return pagina;
  26. }
  27.  
  28. //El argunmento 'vars' contiene las variables que procesara la hoja AJAX.PHP
  29. //El argumento 'capaview' es la capa en donde escribiremos los resultados
  30. //El argumento 'flujoddatos; indica el flujo: GET o POST
  31. //El argumento 'varsform' posee una trama de caracteres delimitadas por un  :  (dos puntos), esta trama serian los nombres de las variables del formulario (input's, select's, textare's, etc...)
  32. function cargar_datos( vars, capaview, flujoddatos, varsform )
  33. {
  34. var conector, capa, url;
  35.  
  36. url= 'ajax.php'; //mis funciones para ajax
  37. capa= document.getElementById(capaview); //capa
  38.  
  39. conector= ajax(); //funcion que crea el objeto ajax para el navegador
  40. conector.open( flujoddatos, url+'?'+vars, true ); //abrimos el flujo de datos
  41. conector.onreadystatechange= function() //funcion que indica estado y responde
  42. {
  43. if( conector.readyState==1 ) //cargando
  44. {
  45. capa.innerHTML= "<center><img src='imagenes/loading.gif'><br><b>CARGANDO...</b></center>";
  46. }
  47. else if( conector.readyState==4 ) //proceso completado
  48. {
  49. if( conector.status==200 ) //completado con exito
  50. {
  51. if( varsform!=0 ) //si estamos procesado variables de un formulario, establecemos Request
  52. conector.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
  53. capa.innerHTML= conector.responseText;
  54. }
  55. else if( conector.status==404 ) //no se encontro hoja
  56. {
  57. capa.innerHTML= "<center><img src='imagenes/404.png'></center>";
  58. }
  59. else //error
  60. {
  61. capa.innerHTML= conector.status;
  62. }
  63. }
  64. }
  65.  
  66. if( varsform!=0 ) //si el argumento es distinto de 0, entonces estamos enviando trama de variables
  67. {
  68. var myarr= varsform.split(':'); //dividimos
  69. var trama=""; //establecemos
  70. var i=0; //contador de ciclo
  71.  
  72. for( i=0; i<(myarr.length); i++ ) //ciclo
  73. {
  74. if( i>0 )
  75. trama += "&";
  76. trama += myarr[i]+"="+document.getElementById(myarr[i]).value;
  77. }
  78.  
  79. conector.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" ); //establecemos request
  80. conector.send(trama); //enviamos la trama
  81. }
  82. else
  83. conector.send(null); //enviamos NULL en caso que solo se procesan variables normales
  84. }

INDEX.PHP
Código
  1. <html>
  2. <head>
  3. <title>Proceando Formulario con AJAX dentro de la hoja comun</title>
  4. <script language="javascript" type="text/javascript" src="script.js"></script>
  5. </head>
  6.  
  7. <body>
  8. <?php
  9. echo "<div id=\"area_box\">";
  10.  
  11. echo "<form action=\"#\" method=\"POST\" onsubmit=\"cargar_datos( 'id=saludo', 'area_box', 'POST', 'nombre:mensaje' );\" enctype=\"multipart/form-data\">";
  12.     echo "Nombre: <input type=\"text\" name=\"nombre\" id=\"nombre\">";
  13.     echo "Mensaje:<br>";
  14.     echo "<textarea name=\"mensaje\" id=\"mensaje\"></textarea><br>";
  15.     echo "<input type=\"file\" name=\"imagen\" id=\"imagen\"><br>";
  16.     echo "<input type=\"submit\" value=\"Enviar\" onsubmit=\"cargar_datos( 'id=saludo', 'area_box', 'POST', 'nombre:mensaje' );\">";
  17. echo "</form>";
  18.  
  19. echo "</div>";
  20. ?>
  21. </body>
  22. </html>

AJAX.PHP
Código
  1. <?php
  2. if( !strcmp( $_GET["id"], "saludo" ) )
  3.     {
  4.     //gracias a la funcion de AJAX que tenemos, podremos enviar variables y tratarlas como POST directamente
  5.  
  6.     echo "Tu nombre: ". $_POST["nombre"];
  7.     echo "<br>Tu mensaje: ". $_POST["mensaje"];
  8.  
  9.     //como imprimo el nombre de la imagen ??
  10.     echo "<br>Nombre de la Imagen: ". $_FILES["imagen"]["name"];
  11.     }
  12. ?>

CUAL ES MI PROBLEMA ??
Pues actualmente me he asurgido la necesidad de procesar un input tipo FILE, asi que no he dado con la manera correcta para procesar en AJAX un formulario pero en este caso, procesar el input file :S !!...

Alguna idea ??...
149  Programación / PHP / Problema con variables y AJAX !! en: 7 Agosto 2008, 01:38 am
POST EDITADO (13 Agosto 08)
Hola:

Cierta parte de mi aplicacion trata de Agregar Productos a la BDD, para esto el formulario es cargado desde el mismo INDEX.PHP, de modo que parte importante del formulario es poder ubicar en una sección de alguna Categoria existente, he aqui donde entra la ayuda de AJAX.

Basicamente AJAX me ayudara a generar rapidamente (sin refrescar la hoja) un nuevo select en donde estaran las Secciones, para esto en el select de las Categorias colocare la funcion de ajax mediante onchange. Esto no me trae ningun problema, ya que una vez seleccionada la Categoria del select, inmediatamente se carga otro select con las Secciones correspondientes a dicha Categoria elejida.

El Problema surge al enviar el formulario (presionar el botn enviar), este boton realiza una accion del formulario enviando todo hacia la direccion index.php?id=productos&mov=agregar_producto, vaya esto ya es puro PHP, AJAX solo nos ayudo a generar el SELECT de Secciones, asi que, al momento de ir a agregar_producto, no logro recepcionar el contenido del select generado con ajax.

Basicamente aqui utilizo dos select que son: Categorias y Secciones, la variable donde porto el contenido de Categorias es categoria_productos y la variable donde porto las Secciones son: seccion_producto.

De modo que $_POST["seccion_producto"] no se genera o nose que sucede :S, pero no obtengo el valor de dicha variable.

Utilizo Gentoo Linux, Apache y Firefox-3.

Para una mejor ilustracion aqui dejo mi codigo resumido:

INDEX.PHP
Código
  1. <?php
  2. switch( $_GET["mov"] )
  3. {
  4. case 'agregar_producto':
  5. echo "Categoria: ". $_POST["categoria_producto"];
  6. echo "<br>sección: ". $_POST["seccion_producto"];
  7. echo "<br>POST: ". count($_POST);
  8. echo "<br>";
  9. print_f($_POST);
  10. break;
  11. default:
  12. echo "<form action=\"index.php?id=". $_GET["id"]. "&mov=agregar_producto\" method=\"POST\" enctype=\"multipart/form-data\">";
  13. echo "<div id=\"formulario_producto_nuevo\">";
  14. echo "Tipo de Prod.: <input type=\"radio\" name=\"tipo_producto\" value=\"1\" checked onclick=\"cargar_datos( 'id=". $_GET["id"]. "&mov=agregar_producto', 'formulario_producto_nuevo_lista', 'GET', '0' );\"> Normal";
  15. echo "<input type=\"radio\" name=\"tipo_producto\" value=\"2\" onclick=\"cargar_datos( 'id=". $_GET["id"]. "&mov=agregar_producto&ver=1', 'formulario_producto_nuevo_lista', 'GET', '0' );\">Kit<br>";
  16. echo "ID: <input type=\"text\" name=\"id_producto\"><br>";
  17. echo "Cantidad: <input type=\"text\" name=\"cantidad_producto\" style=\"width:50px;\"> ";
  18. echo "<select name=\"unidad_medida_producto\" style=\"width:120px;\">";
  19. echo "<option value=\"error\"></option>";
  20.  
  21. $cons= consultar_enorden( "UNIDADES_MEDIDA", "ID" );
  22. while( $buf= mysql_fetch_array($cons) )
  23. echo "<option>". $buf["NOMBRE"]. "/". $buf["NOTACION"]. "</option>";
  24. unset($buf);
  25. unset($cons);
  26. echo "</select>";
  27. echo "<br>";
  28. echo "Nombre del Prod.: <input type=\"text\" name=\"nombre_producto\"><br>";
  29. echo "Precio Publico: <input type=\"text\" name=\"preciopublico_producto\"><br>";
  30. echo "Categoria: <select name=\"categoria_producto\" onchange=\"cargar_datos( 'id=". $_GET["id"]. "&mov=mostrar_secciones&categoria_id='+this.value, 'mostrar_secciones', 'GET', '0' );\">";
  31. echo "<option value=\"error\"></option>";
  32.  
  33. $cons= consultar_enorden( "MENUS", "ID" );
  34. while( $buf= mysql_fetch_array($cons) )
  35. echo "<option value=\"". $buf["ID"]. "\">". $buf["NOMBRE"]. "</option>";
  36. unset($buf);
  37. unset($cons);
  38.  
  39. echo "</select>";
  40. echo "<div id=\"mostrar_secciones\"></div>";
  41. echo "Descripcion:<br>";
  42. echo "<textarea name=\"descripcion_producto\"></textarea><br>";
  43. echo "<span style=\"font-size:10px;\">Solo se permite adjuntar imagenes: <b>*.jpg</b>, <b>*.png</b> y <b>*.gif</b>.</span>";
  44. echo "<div id=\"formulario_producto_nuevo_imagenes\">";
  45. echo "<input type=\"file\" name=\"imagen_productos01\" style=\"font-size:9px;\">";
  46. echo "<input type=\"file\" name=\"imagen_productos02\" style=\"font-size:9px;\">";
  47. echo "</div>";
  48. echo "</div>";
  49.  
  50. echo "<div id=\"formulario_producto_nuevo_lista\">";
  51. echo "</div>";
  52. echo "<center>";
  53. echo "<input type=\"submit\" value=\"Guardar Producto\" style=\"text-align:center;border:solid 1px black;font-family:verdana;font-size:12px;font-weight:bold;\">";
  54. echo "</center>";
  55. echo "</form>";
  56. break;
  57. }
  58. ?>


AJAX.PHP
Código
  1. <?php
  2. /*####################################
  3. ###### MOSTRAR SECCIONES #####
  4. ## Muestra secciones en capa ##
  5. ######################################*/
  6. else if( !strcmp( $_GET["mov"], "mostrar_secciones") )
  7. {
  8. $xcons= consultar_con( "MENUS", "ID='". $_GET["categoria_id"]. "'" );
  9. $xbuf= mysql_fetch_array($xcons);
  10. unset($xcons);
  11. $cons_sec= consultar_enorden_con( "SECCIONES", "RELACION='". $xbuf["NOMBRE"]. "'", "ID" );
  12. unset($xbuf);
  13.  
  14. echo "Secciones: <select name=\"seccion_producto\">";
  15. echo "<option value=\"error\"></option>";
  16. while( $buf_sec= mysql_fetch_array($cons_sec) )
  17. echo "<option value=\"". $buf_sec["ID"]. "\">". $buf_sec["NOMBRE"]. "</option>";
  18. echo "</select>";
  19.  
  20. unset($buf_sec);
  21. unset($cons_sec);
  22. }
  23. ?>


SCRIPT.js
Código
  1. //Funcion para obtener conector AJAX
  2. function ajax()
  3. {
  4. var pagina=false; //conector ajax
  5.  
  6. if( window.XMLHttpRequest ) //Navegador Firefox
  7. pagina= new XMLHttpRequest(); //creamos objeto para el navegador
  8. else if( window.ActiveXObject ) //Navegador Internet Explorer
  9. {
  10. try //Version Actual
  11. {
  12. pagina= new ActiveXObject( "Msxml2.XMLHTTP" ); //creamos objeto para el navegador
  13. }
  14. catch(e) //version Antigua
  15. {
  16. try
  17. {
  18. pagina= new ActiveXObject( "Microsoft.XMLHTTP" ); //creamos objeto para el navegador
  19. }
  20. catch(e)
  21. {
  22. }
  23. }
  24. }
  25. return pagina;
  26. }
  27.  
  28. function cargar_datos( vars, capaview, flujoddatos, varsform )
  29. {
  30. var conector, capa, url;
  31.  
  32. url= 'ajax.php'; //mis funciones para ajax
  33. capa= document.getElementById(capaview);
  34.  
  35. conector= ajax();
  36. conector.open( flujoddatos, url+'?'+vars, true );
  37. conector.onreadystatechange= function()
  38. {
  39. if( conector.readyState==1 )
  40. {
  41. capa.innerHTML= "<center><img src='../admin/imagenes/loading.gif'><br><b>CARGANDO...</b></center>";
  42. }
  43. else if( conector.readyState==4 )
  44. {
  45. if( conector.status==200 )
  46. {
  47. if( varsform!=0 )
  48. conector.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
  49. capa.innerHTML= conector.responseText;
  50. }
  51. else if( conector.status==404 )
  52. {
  53. capa.innerHTML= "La pagina que intentas cargar no existe...";
  54. }
  55. else
  56. {
  57. capa.innerHTML= conector.status;
  58. }
  59. }
  60. }
  61. //conector.setRequestHeader( "Content-Type", "multipart/form-data" );
  62. if( varsform!=0 )
  63. {
  64. var myarr= varsform.split(':'); //dividimos
  65. var trama="";
  66. var i=0;
  67.  
  68. for( i=0; i<(myarr.length); i++ )
  69. {
  70. if( i>0 )
  71. trama += "&";
  72. trama += myarr[i]+"="+document.getElementById(myarr[i]).value;
  73. }
  74. alert(trama);
  75.  
  76. conector.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
  77. conector.send(trama);
  78. }
  79. else
  80. conector.send(null);
  81. }
150  Programación / PHP / [SOLUCIONADO] Problema para procesar datos en AJAX !! en: 26 Julio 2008, 04:21 am
Cambiando un poco, estuve replanteando un pequeno ejemplo para aprender un poco mas sobre el manejo y la logica de AJAX, porfavor alguien puede explicarme el porque del siguiente problema:

Porque al pusar cualquier opcion del menu horizontal se queda escrito en la pagina los mensajes de: "Estamos procesando su peticion..." y "Cargando..." y jamas se muestra la informacion que quiero :S ??...

Codigo de index.php:

Código
  1. <html>
  2. <head>
  3. <title>Carter System :: Sistema para Control de Cliente</title>
  4. <link rel="stylesheet" type="text/css" href="css/estilos.css">
  5. <script language="javascript" type="text/javascript" src="js/script.js"></script>
  6. </head>
  7.  
  8. <body>
  9. <?php
  10. //division principal de toda la hoja
  11. echo "<div id=\"principal\">";
  12. echo "<div id=\"tag_sistema\">";
  13. echo ":: Carte v1.0 - Sistema para Control de Clientes.";
  14. echo "</div>";
  15. echo "<div id=\"menu_controles\">";
  16. echo "<a href=\"javascript:cargar_datos( '". $_SERVER['HTTP_HOST']. "/~diabliyo/index.php?id=inicio', 'area_work', 'menu_controles' );\">Inicio</a> | ";
  17. echo "<a href=\"javascript:cargar_datos();\">Clientes</a> | ";
  18. echo "Deudores | ";
  19. echo "Acredores | ";
  20. echo "Salir";
  21. echo "</div>";
  22. echo "<div id=\"recuadro_mensajes\"></div>";
  23.  
  24. echo "<div id=\"area_work\">";
  25. switch( $_GET["id"] )
  26. {
  27. case 'inicio';
  28. echo "Hola que onda";
  29. break;
  30. }
  31. echo "</div>";
  32. echo "</div>";
  33. ?>
  34. </body>
  35. </html>

Codigo del script.js

Código
  1. function ajax()
  2. {
  3. var pagina=false; //conector ajax
  4.  
  5. if( window.XMLHttpRequest ) //Navegador Firefox
  6. pagina= new XMLHttpRequest(); //creamos objeto para el navegador
  7. else if( window.ActiveXObject ) //Navegador Internet Explorer
  8. {
  9. try //Version Actual
  10. {
  11. pagina= new ActiveXObject( "Msxml2.XMLHTTP" ); //creamos objeto para el navegador
  12. }
  13. catch(e) //version Antigua
  14. {
  15. try
  16. {
  17. pagina= new ActiveXObject( "Microsoft.XMLHTTP" ); //creamos objeto para el navegador
  18. }
  19. catch(e)
  20. {
  21. }
  22. }
  23. }
  24.  
  25. return pagina;
  26. }
  27.  
  28. function cargar_datos( url, capadatos, capaconsola )
  29. {
  30. var control, msg_datos, msg_consola;
  31.  
  32. msg_datos= document.getElementById(capadatos);
  33. msg_consola= document.getElementById(capaconsola);
  34.  
  35. control= ajax(); //creamos conector
  36. control.open( "GET", url );
  37. control.onreadystatechange= function()
  38. {
  39. if( control.readyState==1 )
  40. {
  41. msg_consola.innerHTML= "Estamos procesando su peticion...";
  42. msg_datos.innerHTML= "Cargando...";
  43. }
  44. else if( control.readyState==4 )
  45. {
  46. if( control.status==200 )
  47. msg_datos.innerHTML= control.responseText;
  48. }
  49. }
  50.  
  51. control.send(url);
  52. }
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [15] 16 17 18
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines