Bueno es hora de realizar algunos ejemplos útiles, si quieres algún ejemplo específico comentalo y trataré de realizarlo.
- Verificando la existencia de una URL: Bueno en este ejemplo verificaremos si existe o no una URL.
NOTAHice una primera prueba ejemplo 3 Que NO FUNCIONA porque devuelve un error javascript:
Error: uncaught exception: Permiso denegado al llamar al método XMLHttpRequest.open
Averiguaré sobre el mismo, este ejemplo funciona si las URL`S que vamos a comprobar se encuentran en el servidor, pero si estan fuera del mismo no funciona...... bueno es de una utilidad NULA el ejemplo 3 pero no usaba un procesador para verificar la existencia de una URL.
En el ejemplo 4 ya se una usa un cliente y un procesador y funciona en sus totalidad.
Esto es sencillo, al abrir una URL verificaremos el _objetus.status, si el mismo devuelve 200 existe si devuelve 404 no existe.
Ejemplo 3
cliente:
PHP [inicio]
- <script language="javascript" type="text/javascript">
- funcion encarga de crear el objeto
- function objetus() {
- try {
- xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
- } catch (e) {
- try {
- xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
- } catch (E) {
- xmlhttp = false;
- }
- }
- if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
- xmlhttp = new XMLHttpRequest();
- }
- return xmlhttp
- }
-
- function TA_comp_url()
- {
- try {
-
- _objetus=objetus()
- _URL_=document.getElementById('TA_comp_url').value id URL
- _target=document.getElementById('TA_comp_url_resultado') id resultado
- _objetus.open("GET",_URL_,true);
- _objetus.onreadystatechange=function() {
- if (_objetus.readyState
1)
- {
- _target.innerHTML="Comprobando.......";
- }
- else if(_objetus.readyState
4)
- {
- if(_objetus.status
200)
- {
- _target.innerHTML = "La URL <b>SI</b> existe";
- }
- else if(_objetus.status
404)
- {
- _target.innerHTML = "La URL <b>NO</b> existe";
- }
- else
- {
- _target.innerHTML = "Error: "._objetus.status;
- }
- }
-
- }
- _objetus.send(null);
- }
- catch (e) {
- _target.innerHTML = (e.message)?e.message:e.description;
- }
- return
- }
- </script>
- URL:
- <input id="TA_comp_url" type="text" class="text" size="50">
- <input class=boton type="button" value="Verificar URL" onclick="TA_comp_url();">
- <!-- aqui se carga el resultado -->
- <div id="TA_comp_url_resultado"></div>
PHP [fin]
URL:
Ejemplo 4cliente
PHP [inicio]
- <script language="javascript" type="text/javascript">
- funcion encarga de crear el objeto
- function objetus() {
- try {
- xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
- } catch (e) {
- try {
- xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
- } catch (E) {
- xmlhttp = false;
- }
- }
- if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
- xmlhttp = new XMLHttpRequest();
- }
- return xmlhttp
- }
-
- function TA_comp_url2()
- {
- _objetus=objetus()
- _uri=document.getElementById('TA_comp_url2').value id URL
- _target=document.getElementById('TA_comp_url_resultado2') id resultado
- _values_send="funcion=TA_comp_url2&uri="+_uri
- _URL_="procesador.php?"
- _objetus.open("GET",_URL_+"&"+_values_send,true);
- _objetus.onreadystatechange=function() {
- if (_objetus.readyState
1)
- {
- _target.innerHTML="Comprobando.......";
- }
- else if(_objetus.readyState
4)
- {
- if(_objetus.status
200)
- {
- _target.innerHTML = _objetus.responseText;
- }
- else
- {
- _target.innerHTML = "Error: "._objetus.status;
- }
- }
-
- }
- _objetus.send(null);
- return
-
- }
- </script>
- URL:<input id="TA_comp_url2" type="text" size="50">
- <input type="button" value="Verificar URL" onclick="TA_comp_url2();">
- <!-- aqui se carga el resultado -->
- <div id="TA_comp_url_resultado2"></div>
PHP [fin]
procesador
PHP [inicio]
- if(isset($_GET['funcion']))
- {
- $_valor=$_GET['funcion'];
- if ($_valor
"TA_comp_url2")
- {
- $_r=(!isset($_GET['uri']))?false:(!@fopen($_GET['uri'],"r"))?false:true;
- $_res=($_r
true)?"La URL existe":"La URL no existe";
- echo $_res;
- }
- else
- {
- echo "No enviaste ningun valor ACEPTABLE";
- }
- }
- else
- {
- echo "No se a enviado valor alguno de peticion";
- }
PHP [fin]
URL:
- Manejando listas dependientes en una base de datos:
Primero creamos las tablas.
MySQL Administrator dump 1.4 -- --
-- Server version 4.1.5-gamma-nt CREATE DATABASE leimnud2; USE leimnud2; CREATE TABLE `leimnud_tut1_ciudad` ( `id` int(10) unsigned NOT NULL auto_increment, `nombre` varchar(45) NOT NULL default , PRIMARY KEY(`id`) ) ENGINE=MyISAM; INSERT INTO `leimnud_tut1_ciudad` (`id`,`nombre`) VALUES (1,'lapaz'), (3,'potosi'), (6,'sucre'), (28,'santa cruz'), (33,'cochabamba'), (34,'pando'), (35,'beni'); CREATE TABLE `leimnud_tut1_zona` ( `id` int(10) unsigned NOT NULL auto_increment, `nombre` varchar(45) NOT NULL default , `id_ciudad` int(10) unsigned NOT NULL default '0', PRIMARY KEY(`id`) ) ENGINE=MyISAM; INSERT INTO `leimnud_tut1_zona` (`id`,`nombre`,`id_ciudad`) VALUES (1,'el alto',1), (2,'miraflores',1), (3,'sopocachi',1), (4,'villa dolores',1), (5,'san pedro',1), (6,'el prado',1), (7,'tejada sorzano',1), (52,'pando-1',34), (51,'ciudad4',35), (50,'ciudad3',35), (48,'ciudad 1',35), (49,'ciudad 2',35), (15,'paraiso',6), (16,'andrea',6), (18,'comercial algo',6), (19,'otra zona',6), (53,'pando-2',34), (56,'san fernando',33), (57,'santo tomas',33), (29,'viacha',1), (55,'santa clara',33), (37,'zona nueva',28);