• Domingo 17 de Noviembre de 2024, 17:19

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - punteroNULO

Páginas: 1 2 [3]
51
PHP / Re: Subir adjuntos con PHP
« en: Miércoles 20 de Agosto de 2008, 20:03 »
En el siguiente enlace se puede ver como recibir los archivos enviados:
http://www.php.net/manual/es/features.file-upload.php

52
PHP / Re: Problemas Entre Fechas Between
« en: Viernes 2 de Mayo de 2008, 13:19 »
el formato de la fecha en las comparaciones es "aaaa/mm/dd".

Debes poner "2006/12/28"

cuando se insertan los datos se utiliza el mismo formato

siempre que el campo FECHA_ALBARAN sea de tipo date

53
JavaScript / Re: Problemas Con Div
« en: Sábado 1 de Diciembre de 2007, 14:01 »
Simplemente hay que darle un identificador (id) a cada capa.

Con la función document.getElementById(id) se captura el objeto y se oculta o se muestra según corresponda (propiedad style.visibility).

por ejemplo:
Código: Text
  1.  
  2. <div id='prueba'> ...................</div>
  3.  
  4. <script type='text/javascript'>
  5.  
  6. // para ocultar
  7. document.getElementById('prueba').style.visibility = 'hidden';
  8.  
  9. // para mostrar
  10. document.getElementById('prueba').style.visibility = 'visible';
  11. </script>
  12.  
  13.  

54
JavaScript / Re: Calcular Coordenadas Sobre Una Imagen
« en: Sábado 1 de Diciembre de 2007, 13:53 »
Para hacer eso primero debes calcular la posición que ocupa la imagen para restarsela a las coordenadas de la página.

Se utilizan las siguientes propiedades de los objetos:
Código: Text
  1.  
  2. offsetLeft - distancia horizontal del objeto respecto al contenedor (padre).
  3. offsetTop - distancia vertical del objeto respecto al contenedor (padre).
  4.  
  5. parent - apunta al objeto contenedor o padre
  6.  
  7.  

Constiste en calcular las distancias de los objetos a su superior en la jerarquía hasta llegar al BODY o HTML.

Las siguientes funciones calculan las distancia de un objeto respecto de los bordes de la página.
Código: Text
  1.  
  2. function distancia_izq(objeto)
  3.   {
  4.   // calula la distancia de un objeto con el lado izquierdo del navegador
  5.   dis_izq = objeto.offsetLeft;
  6.   objeto = objeto.offsetParent;
  7.   while (objeto.tagName != 'BODY' && objeto.tagName != 'HTML')
  8.     {
  9.     dis_izq += objeto.offsetLeft;
  10.     objeto = objeto.offsetParent;
  11.     }
  12.   dis_izq += objeto.offsetLeft;
  13.   return dis_izq;
  14.   }
  15.  
  16. function distancia_sup(objeto)
  17.   {
  18.   // calcula la distancia de un objeto con el lado superior del navegador
  19.   dis_sup = objeto.offsetTop;
  20.   objeto = objeto.offsetParent;
  21.   while (objeto.tagName != 'BODY' && objeto.tagName != 'HTML')
  22.     {
  23.     dis_sup += objeto.offsetTop;
  24.     objeto = objeto.offsetParent;
  25.     }
  26.   dis_sup += objeto.offsetTop;
  27.   return dis_sup;
  28.   }
  29.  
  30.  

55
JavaScript / Re: Ajustar El Tamaño De Un Window
« en: Viernes 15 de Diciembre de 2006, 21:14 »
Una posible solución sería colocar el texto en una capa <div>, al que le podemos dar un ancho predefinido.
Para averiguar la altura podemos utilizar el atributo clientHeight, con lo que obtenemos la altura de la capa.
 Y solo queda modificar el tamaño de la ventana para adaptarla al contenido.
Código: Text
  1.  
  2. &#60;div id='capa' width=200&#62;
  3. el texto
  4. &#60;/div&#62;
  5.  
  6.  
  7. &#60;script type='text/javascript'&#62;
  8. var altura = document.getElementById('capa').clientHeight;
  9. window.resizeTo(200,altura)
  10. &#60;/script&#62;
  11.  
  12.  

56
JavaScript / Re: Capa Div
« en: Viernes 15 de Diciembre de 2006, 21:02 »
Primero perdón por la tardanza en contestar, pero el ordenador no tenias ganas de funcionar y me costo arreglarlo.

Ya averigue el atributo que estaba buscando. Es clientHeight , que para el caso de una capa devuelve su altura.

57
HTML / Re: Imágenes Móviles
« en: Domingo 10 de Diciembre de 2006, 01:09 »
Otra posibilidad es utilizar el estilo position:fixed para la capa.
Aunque no funciona para IExplorer.

Como siempre IExplorer se salta las normas (CSS2) para dar problemas.

58
HTML / Re: <form></form>
« en: Sábado 9 de Diciembre de 2006, 18:18 »
Puedes probar con el atributo target del form. Antes de enviar el formulario abres la ventana y le indica que el resultado debe salir en la misma.
Debería ser una cosa mas o menos como esta:

Código: Text
  1.  
  2. function abrir_ventana()
  3. {
  4. window.open('', 'secundaria', ............);
  5. }
  6.  
  7.  
  8.  
  9. &#60;form .............  method='post' onsubmit='abrir_ventana()' target='secundaria'&#62;
  10.  
  11.  

Eso debe funcionar.
La ventana que abres le pones todas las opciones que necesitas. De esta forma puedes utilizar POST para enviar el formualrio.

59
JavaScript / Re: Validación Con Javascript
« en: Jueves 7 de Diciembre de 2006, 09:50 »
El código anterior tiene un fallo en la comparación de la condición. La condición de igualdad se expresa con '=='.
Lo correcto sería:
Código: Text
  1.  
  2. if(document.nombredemiform[indice].value==&#34;&#34;)
  3.  
  4.  

De todas formas el código no funciona por un detalle:
Cuando se sale de un campo para entrar en otro se dispara el evento onblur, se realiza la comprobación. Pero en el caso de que le devolvamos el foco al primer campo estamos saliendo del segundo, con lo que se produce otro onblur para el segundo, formandose un bucle infinito.


Yo comprobaria los datos al enviar el formulario como se dijo anteriormente, o en todo caso no devolver el foco al elemento.

60
JavaScript / Re: Capa Div
« en: Miércoles 6 de Diciembre de 2006, 23:08 »
No se entendio bien lo que quiero decir.

Ya se que si inicializo los valores puedo obtenerlos. La pregunta es como puedo obtener en cada momento la altura de una capa cuyo contenido va cambiando, (cuando se cambia el contenido, cambia la altura de la capa). Es decir no conozco la altura a priori.

Por ejemplo.

Código: Text
  1.  &#60;div width='200'&#62;
  2. Esto es un ejemplo. Esto es un ejemplo. Esto es un ejemplo.
  3. &#60;/div&#62;
  4.  

¿Qué altura tiene?

61
JavaScript / Capa Div
« en: Martes 5 de Diciembre de 2006, 20:17 »
El probelma es el siguiente. Tengo una capa (DIV) cuyo ancho esta definido y es fijo. Pero el contenido es cambiante. Con lo cual también lo es su altura. Necesito conocer la altura del objeto.

Probe con el atributo height, pero esta indefnido.

También con los estilos.  .style.height

¿Alguna forma de obtener la altura?

Gracias.

62
C/C++ / Re: Se Puede Utilizar Un If Dentro De Un While??
« en: Miércoles 4 de Enero de 2006, 19:20 »
Si pretendes sumar los números impares, ¿no seria mejor sumar la variale de dos en dos?
Código: Text
  1. i=1;
  2. y después
  3. i+=2;
  4.  
  5.  
Con lo cual i= 1 -> 3 -> 5 -> 7 -> ....

63
C/C++ / Re: Ordenar Frase
« en: Lunes 26 de Diciembre de 2005, 18:16 »
Una posibilidad para realizarlo seria la siguiente:

Me imagino que la variable cadena es puntero a carácter, terminado en puntero nulo.
Código: Text
  1. char * cadena;
  2.  

Creamos un vector para guardar cada una de las líneas (si sabemos el número de líneas finales, sino hay que crearlo dinámicamente)
Código: Text
  1. char * lineas[numerolineas];
  2.  

Vamos a utilizar el espacio de "cadena" para crear las líneas, sin tener que copiar bloques de memoria.

Evidentemente la primera línea comienza en el mismo lugar que cadena.
Código: Text
  1. lineas[0] = cadena;
  2.  

Creamos una variable para indicar el lugar actual dentro de la cadena, por ejemplo int actual.

Actual tendrá ahora el valor del ancho de la linea (24 en este caso).

Comenzamos el bucle hasta el valor de actual se salga del tamaño de la cadena.
            Comprobamos si la posición actual es un espacio
           
Código: Text
  1. cadena[actual]== ' '
  2.  
           Recorremos hasta encontrar el espacio y lo cambiamos por el fin de cadena '\0'
            La siguiente linea comienza en la posición posterior a la actual
           
Código: Text
  1. lineas[i]=&cadena[++actual];
  2.  
          Aumentamos el valor actual en el valor de ancho de linea
fin del bucle
y terminado.

Por ejemplo. Para el caso expuesto:
cadena = "hola amigos de c/c++ nesesito que esta frase se reparta en diferentes lineas\0";

quedaria de la forma
cadena = "hola amigos de c/c++\0nesesito que esta frase\0se reparta en diferentes\0lineas\0";
lineas[0]=&cadena[0];
lineas[1]=&cadena[21];
lineas[2]=&cadena[45];
lineas[3]=&cadena[70];

Cuatro lineas.

Hay esta la forma de hacerlo, solo hay que transformarlo en código.

Hasta luego.

64
C/C++ / Re: Sugerencia
« en: Jueves 15 de Diciembre de 2005, 21:49 »
Lo de las llaves es cuestión de gusto personal, cada uno utilizará el que le sea más claro. Pero ponga como se ponga esta mucho más claro.

Que yo haya visto, se utilizan tres formatos de llaves.

Código: Text
  1. int funcion ()
  2.    {
  3.    instrucciones
  4.    }
  5.  
  6.  

Código: Text
  1. int funcion ()
  2. {
  3.    instrucciones
  4. }
  5.  
  6.  

Código: Text
  1. int funcion () {
  2.    instrucciones
  3. }
  4.  
  5.  

En cuanto al color estaria bien, pero como se dijo en un mensaje anterior me conformaria con que estuviera tabulado.

65
C/C++ / Sugerencia
« en: Miércoles 14 de Diciembre de 2005, 18:56 »
En los pocos días que llevo en este foro veo que mucha gente escribe el código sin tabular y sin comentarios, me imagino que están empezando a programar. Con esta forma se dedica el 99% del tiempo en intertar descifrar el código (que pertenece a cada bloque, que se pretende, donde empieza y termina una función, etc.)

Por ejemplo:
Código: Text
  1. int funcion(int ent){
  2. for(i=0;i &#60;j;i++)
  3. for(h=0;h&#60;MAX;h++)
  4. {
  5. if (numero == 23)
  6. numero=20;
  7. if (i&#60;10)
  8. {
  9. instrucciones
  10. }
  11. else
  12. numero2=0;
  13. }
  14. }
  15.  
  16.  


Comparado con:
Código: Text
  1. int funcion (int)   // función que realiza ...
  2.    {
  3.    for (i=0; i&#60;j; i++) // recorremos hasta j
  4.       for(h=0;h&#60;MAX;h++)   //comentario
  5.          {
  6.          if (numero == 23)  //comentario
  7.             numero=20;
  8.          if (i&#60;10)  //comentario
  9.             {
  10.             instrucciones;
  11.             }
  12.          else
  13.             numero2=0;
  14.          }
  15.    }
  16.  
  17.  
  18.  

Evidentemente más fácil de seguir el segundo ejemplo.

Como dice el título, solo es una sugerencia pero que facilitaría mucho el trabajo.

Gracias y hasta otra.

66
C/C++ / Re: Programa
« en: Miércoles 14 de Diciembre de 2005, 18:29 »
Bueno en primer lugar no inicializas los punteros.
Al poner
Código: Text
  1.  q=NULL
  2.  
estas indicando que el puntero apunta a la dirección 0, que esta prohibida. Por eso termina el programa, se produce una excepción.

Un puntero es un apuntador a una zona de memoria "reservada" (no es asi realmente, pero eso es otro asunto). Entonces lo primero que debemos hacer es reservar una zona de memoria. por ejemplo en C++
Código: Text
  1. q=new elemento;
  2.  
donde ahora q apunta a una zona de memoria donde se almacena la estructura.

Ahora se puede acceder a los miembros del puntero
Código: Text
  1. q-&#62;num = 24
  2.  

Cuando ya no sea necesaria esta memoria se puede liberar utilzando
Código: Text
  1. delete q
  2.  

En cuanto al bucle, no veo muy claro lo que pretendes hacer, parece una lista enlazada, pero eso de sumar 3, no se. Si se pudiera especificar más, mejor.

Hasta luego.

67
Inteligencia Artificial / Re: La Eterna Discusión
« en: Jueves 8 de Diciembre de 2005, 13:00 »
Bueno, no pude encontran los enlaces de los inventos patentables. Aunque me gustaria conocer quién cobra por la patente. Seguramente los que programaron la máquina.

Seguiré buscando  esos enlaces.

Otro caso:
En un país asiatico (ahora no me acuerdo), enseñaron a elefantes a pintar con una brocha sobre un lienzo, que luego se vendian como "obras de arte".
¿Esto elefantes son unos "artistas" o mueven la trompa como le enseñaron? ¿Realmente están creando algo?

No creo que se pueda decir que poseen inteligencia artística.

Hasta luego. Esta interesante el debate, que continue. :P

68
Inteligencia Artificial / Re: La Eterna Discusión
« en: Viernes 2 de Diciembre de 2005, 02:17 »
Citar
Si una máquina se comporta en forma inteligente entonces está dotada de inteligencia, por muy pobre que sea tiene comportamiento inteligente y eso es lo que cuenta.

No se comporta de forma inteligente, simplemente sigue una serie de pautas preestablecidas para llegar a la solución del problema.

No creo que "invente" métodos nuevos de resolver problemas.

69
C/C++ / Re: Imprimir Desde Visual C
« en: Viernes 2 de Diciembre de 2005, 02:09 »
Para imprimir puedes utilizar las funciones graficas de la libreria de Windows. Las funciones de GDI.

Si utilizas WindowsXP puedes utilizar las funciones de GDI+. En el siguinet enlace hay más información de como hacerlo:

imprimir GDI+


En otro caso puedes utiliza la libreria antigua GDI. Este otro enlace:

imprimir GDI

Con estas funciones puedes imprimir facilmente texto y gráficos.

Hasta luego.

70
C/C++ / Re: Interface Con Puertos
« en: Viernes 2 de Diciembre de 2005, 01:51 »
Para operar con el puerto paralelo (0x378) como se dijo antes debes usar la API de Windows.

En la página de desarrollo de Microsoft (msdn) viene información de como realizarlo, concretamente en esta dirección:

Operación del puerto paralelo

Espero que te sirva de ayuda.
Hasta luego.

71
Inteligencia Artificial / Re: La Eterna Discusión
« en: Martes 22 de Noviembre de 2005, 12:07 »
Bueno, esta es mi opinion:

En primer lugar una máquina es un simple autómata que se decia a repetir continuamente una serie de instruccionesque le introdujo en su momento un operador (humano). Dudo mucho que tenga conciencia, es decir se de cuenta de lo que esta haciendo, simplemente realiza la tarea.

La máquina tampoco es capaz de mejorar su algoritmo por voluntad propia, como si lo haria una persona con cualquier tarea que este realizando (se lo digan o no).

Por tanto yo no creo que sea adecuado decir que una máquina esta dotada de inteligencia.

Un saludo.

72
C/C++ / Re: Enlazar Libreria
« en: Viernes 18 de Noviembre de 2005, 10:13 »
Aparte de añadir los archivos de cabecera (*.h o *.hpp) como se indica en el mensaje anterior se debe indicar al compilador donde estan las librerias que vamos a utilizar (*.lib).

Yo no utilizo ese compilador, pero deberia ser una cosa parecida a esta:

En el menú:
    Opciones-->Compilador-->Directorios-->Librerias

y añadir la ruta donde se encuantra la misma.

Hasta luego.

73
C/C++ / Re: Problema Loteria Primitiva Con Las Repeticiones
« en: Jueves 17 de Noviembre de 2005, 11:36 »
Hola.

Bueno en primer lugar las funciones Randomize() y Random() devulven número seudoaleatorios con lo que hay muchas posibilidades de que se repitan combinaciones.

Luego cuanto al código, los bucles tienen mal puesta la condición

Código: Text
  1.  

El siguiente tiene dos fallos

Código: Text
  1.  
  2. for (j=i-1;j&#62;0;j--)//xa q no se repita
  3.     if (b[i]==b[j])
  4.         { i--;
  5.         break;
  6.         }
  7. printf(&#34;%d &#34;,b[i]);
  8.  
  9.  

no se comprueba el primer elemento (j>0) y luego se muestra por pantalla aunque este repetido, se soluciona indicando si hay repetición, por ejemplo con una variable BOOL Repetido

[code=text]
P.D.: Si se escribe el codigo con tabulaciones es más fácil distinguir lo distintos bloques y más facil de interpretar.

Páginas: 1 2 [3]