|
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 - -DriverOp-
51
« en: Jueves 6 de Septiembre de 2007, 07:49 »
52
« en: Lunes 3 de Septiembre de 2007, 14:08 »
Harías bien en mencionar el país donde se ofrece el trabajo. Verás, Internet es para todo el mundo, no solo para España...
53
« en: Sábado 1 de Septiembre de 2007, 07:44 »
En programacion nada es imposible.
Tendria que buscar en un metodo que permita tener acceso al equipo cliente con un applet de java. En programación por supuesto que hay cosas imposibles, intenta dividir un número por cero y dime si es *posible* obtener un resultado. Lo que ha dicho ibito es cierto, no es posible obligar al navegador a descargar un archivo en una carpeta específica, sería un hermoso mecanismo para instalar cualquier cosa en la máquina cliente. Ninguno de los navegadores serios lo admite.
54
« en: Viernes 31 de Agosto de 2007, 09:11 »
Todo lo contrario. Desde la versión 4 de PHP register_globals está en OFF por omisión porque se sabe que cuando está en ON resulta en un agujero de seguridad. Por lo tanto, lo que debes hacer es usar los arrays $_POST/$_GET/$_FILES/$_SESSIONS/$_COOKIE para tomar los diferentes parámetros que se le envian a tu script. En tu caso *supongo* que debería ser así para la variable que nos ocupa: $file_type = @$_POST["file_type"]; El "@" sirve para que no te salte error en caso que el índice "file_type" no exista en el array $_POST y la variable a la izquierda de la asignación quedaría vacia. De todas formas no estoy seguro de que "file_type" venga en $_POST, podría venir en $_FILES así que te propongo lo siquiente: Escribe un script de prueba que solo contenga esto: <b>Variables en _FILES:</b> <pre> <?php var_dump($_FILES); ?> </pre> <b>Variables en _POST:</b> <pre> <?php var_dump($_POST); ?> </pre>
Y haz que el formulario invoque a este script, así sabrás por dónde te llegan los parámetros y cómo extraerlos.
55
« en: Jueves 30 de Agosto de 2007, 23:01 »
Lamentablemente eso no responde mi pregunta. Así que tendré que suponer. Supongo que $file_type la usas creyendo que el servidor está configurado con register_globals on, lo cual no siempre es así, creo que deberías comenzar con asignar explícitamente las variables que te llegan mediante $_POST.
Sugiero que postees el script *completo*.
56
« en: Jueves 30 de Agosto de 2007, 00:56 »
De dónde sale la variable $file_type?
57
« en: Lunes 27 de Agosto de 2007, 00:59 »
No hay ningún error Los "note" te dicen que has declarado variables que no se usan pero eso no es fatal.
58
« en: Lunes 27 de Agosto de 2007, 00:27 »
Necesitas cuatro cosas: - Un servidor web. - El intérprete PHP. - Un navegador web. - Y el bloc de notas (que puede ser reemplazado por el Editpad pro).
59
« en: Lunes 27 de Agosto de 2007, 00:23 »
¿De dónde has sacado que puedes llamar a una función PHP en el evento onclick?.
PHP se ejecuta en el sevidor y el evento onclick se ejecuta en el cliente. La única forma de comunicar cliente y servidor es mediante peticiones GET o POST. El cliente nunca se entera de lo que pasa en el servidor.
Para hacer lo que quieres y si quieres que el cliente tenga una respuesta dentro de la misma página que tiene cargada es usar AJAX. Claro que también puedes hacerlo de la vieja forma y hacer un simple formulario HTML que envie los datos al servidor, este los procese y genere una nueva página con el resultado.
En definitiva, lo que quieres hacer NO se puede hacer con PHP.
60
« en: Miércoles 22 de Agosto de 2007, 01:38 »
El truco estaría en encontrar el "token", es decir aquel caracter que te permite saber dónde se separan los datos. Aparentemente el "token" en los mensajes que muestras es el espacio en blanco teniendo en cuenta que el mensaje siempre está al final y los datos que quieres extraer siempre están en la misma posición si cuentas los "tokens". Entonces lo mejor sería tomar todo el mensaje como si fuera una sola cadena y parsearla según el "token". function Explode(car: char; s:string): TStrings; var TS: TStrings; i: integer; a: string; begin TS:=TStringList.Create; if Length(s) > 0 then begin a:=''; for i:=1 to Length(s) do begin if s[i] <> car then a:=a+s[i] else begin if a <> '' then TS.Add(a); a:=''; end; end; if a <> '' then TS.Add(a); end; Result:=TS; end;
Esta función la llamarías así: tsMensaje:=Explode(' ',Mensaje);
Siendo Mensaje el mensaje SMS y tsMensaje un TString. El resto es recorrer tsMensaje buscando dónde está la cadena '[SENDER]:' y sabrás que en el próximo item de tsMensaje está el nombre del sender. Luego buscas '[RECEIVED]:' y sabrás que en el próximo item de tsMensaje está la fecha y luego la hora, el resto es el mensaje en sí. Saludos.
61
« en: Martes 8 de Mayo de 2007, 00:26 »
osea es un solo vector, que quiero comparar los elementos que le cargue adentro estoy usando turbo pascal 7 O sea esto?: max:=0; posmax:=0; for i:=1 to largovector do begin if (vector[i] > max) then begin max:=vector[i]; posmax:=i; end; { if } end; { for }
62
« en: Lunes 7 de Mayo de 2007, 09:37 »
heme aqui (de nuevo) con mi ganas de aprender, estoy trabajando en algo medio raro, pero quiero comparar distintos elementos que se cargan a mi array (son numeros que vienen de una matriz general) de una dimesion decir cual es el mayor e informar su pocision, los libros dicen que hay que atomisar el vector en sus componentes y compararlas asi de cada una por separado, probe aplicando high sobre el array para mostrar un maximo pero me tiro un error. hay una manera mas facil y practica?? Pregunta: ¿ambos vectores tienen la misma cantidad de elementos?
63
« en: Miércoles 27 de Diciembre de 2006, 11:32 »
Bueno, lo primero que veo es que la declaración del registro es erronea pero también creo que se debe a un error de tipeo para el post y que en realidad lo tienes bien en el código fuente.
Respecto del error tendría que ver el código fuente completo. Sospecho que tiene que ver con el tema de la asignación del registro completo pero no estoy seguro ¿sería posible que postearas todo el código?.
64
« en: Lunes 18 de Diciembre de 2006, 23:15 »
Como sea, aquí está el código para binarios ingresados como strings: uses crt; var Decimal, I: Word; S: string; function MulPos(p: Word):Word; var Mul, J: word; begin Mul:=1; if p>1 then begin for j:=1 to (p-1) do Mul:=Mul*2; MulPos:=Mul; end else MulPos:=1; end; begin Decimal:=0; Write('Ingrese un número en binario: '); ReadLn(S); for i:=1 to Length(S) do begin if S[i] = '1' then Decimal:=Decimal+MulPos(i); end; WriteLn(Decimal); readkey; end.
65
« en: Lunes 18 de Diciembre de 2006, 22:39 »
Aja, sí, se puede hacer pero ¿en qué formato está almacenado el número binario?, ¿es un string?. Porque no es lo mismo el 11001 (19) leído en binario que la cadena '11001'. Si es el primer caso no necesitas programar ninguna conversión, con hacer un Writeln de la variable que lo contiene ya está. En el segundo caso sí hay que programar. Me parece que hablas del segundo caso.
66
« en: Viernes 15 de Diciembre de 2006, 02:02 »
Realmente no se entiende tu pregunta :S.
67
« en: Viernes 15 de Diciembre de 2006, 01:54 »
Hola pere. El mejor libro de TP7 que he leído es el de Joyanes, no por nada es un clásico dentro del mundo Pascal en habla española. http://www.agapea.com/Programacion-en-Pascal-n313327i.htm-Podríais ponerme un ejemplo claro de como utilizar el procedimiento seek() ? a ver si me entero....
Seguro!, aquí está: Suponiendo que el nombre lógico del archivo es Arch. { ir al quinto registro } Seek(Arch,4); Read(Arch, Reg);
El órden lógico de registros comienza en cero. { ir al primer registro } Seek(Arch,0); Read(Arch,Reg);
{ ir al último registro } Seek(Arch, FileSize(Arch)-1); Read(Arch,Reg);
FileSize devuelve el número de registros en el archivo teniendo en cuenta que si el archivo tiene un solo registro, es decir, el registro número cero, FileSize en ese caso devuelve 1, si le pasas como parámetro a Seek lo que devuelve FileSize() te irás a la posición siguiente al último registro, menos uno, estarás parado listo para leer el último registro. Ahora bien, si quieres agregar un registro al archivo puedes aprovechar FileSize así: { agrega un registro al final } Seek(Arch,FileSize(Arch)); Write(Arch,Reg);
Como decía, el segundo parámetro de Seek() es la posición lógica del registro en el que se para. Si quieres saber en qué posición estás puedes usar la función FilePos(Arch); que devuelve un tipo Longint: Seek(Arch,10); writeln('El puntero del archivo apunta al registro número: ',FilePos(Arch));
Recuerda además que Read() lee el registro actual y luego avanza el puntero, de forma tal que: Seek(Arch,10); writeln('El puntero del archivo apunta al registro número: ',FilePos(Arch)); Read(Arch,Reg); writeln('Ahora el puntero del archivo apunta al registro número: ',FilePos(Arch));
Lo mismo pasa con Write(), escribe/sobreescribe en la posición actual y avanza el puntero. No es molestia. Saludos.
68
« en: Jueves 14 de Diciembre de 2006, 10:22 »
Respondo a tu primer post: No es posible hacer eso tal como tú lo planteas ya que un archivo de texto no tiene ningún índice por el cual el SO pueda desplazarse hacia atrás, los únicos marcadores que hay son fin de línea o fin de archivo y estos pueden caer en cualquier parte del archivo. Una posible solución para esto sería, copiar el archivo entero (eso es fácil) en un temporal, leer secuencialmente línea por línea ese archivo, buscar en el string de lectura la cadena que te interesa, cambiar lo que se necesite, y luego ir sobreescribiendo el archivo original. Respondo a tu segundo post: Tal como lo planteas ahora, no necesitas hacerlo con archivos de texto, de hecho es múcho más fácil hacerlo con archivos de registros. Intuyo que la estructura del mismo, según lo que has comentado sería: type TRegistro=record Nombre: string[20]; Goles: integer; end; TArch=file of TRegistro; var Arch: TArch; Reg: TRegistro;
Usando un archivo con tipo, como lo he declarado más arriba, sí es posible desplazarse aleatoriamente. Para ello existe el procedimiento Seek().
69
« en: Miércoles 29 de Noviembre de 2006, 00:37 »
No sé si estoy en el foro correcto, si mi pregunta es off topic ofrezco disculpas.
Bien. Sucede que tengo un par de archivos .flv hosteados en un servidor. He aprendido que se trata de videos en formato Flash. Sé muy poco de Flash y nunca he hecho nada, digamos, serio con él (de hecho, trato de no usar Flash si puedo evitarlo). Ahora bien, necesito saber si hay alguna manera de hacer que esos archivos de video se reproduzcan embebidos en una página web. ¿Es necesario que el browser tenga instalado un plug in?, si es así ¿cuál?, y eventualmente cómo sería el código HTML necesario para el el plug in reproduzca el video.
Gracias.
70
« en: Lunes 20 de Noviembre de 2006, 01:28 »
Pues por prueba y error digo yo. Alguna vez necesité mostrar una animación larga y opté por Flash, a pesar de que debía incluir el player junto a la aplicación pero el aumento de tamaño estaba justificado por el tamaño de la animación en sí. Para animaciones cortas pues un AVI con TMediaPlayer, para muy cortas, digamos dos o tres frames pues un gif animado basta. Claro que todo esto es si la animación no va a ser modificada en tiempo real por el usuario, o cualquier otro evento. Quiero decir, si quieres graficar una función de ondas según lo que recibas por un puerto serial o algo así, evidentemente ni Flash, ni TMediaPlayer ni gif animado te van a servir, solo el TPaintBox podría hacer un trabajo decente. Por eso insisto ¿qué es lo que quieres lograr?, ¿con qué lo quieres lograr?.
71
« en: Sábado 18 de Noviembre de 2006, 16:06 »
HOLA : QUIERO VER SI SE PUEDE TRANSFORMAR LOS ARCHIVOS TI9PO.DAT DE COBOL EN ARCHIVOS CON EXTENCION DBF PARA SER USADOS CON OTRO LENGUAJE, COMO SER VISUALFOXPRO. O SI HAY ALGUN PROGRAMA PARA LOGRAR HACERLO
MUCHAS GRACIAS Debes entender que COBOL no tiene un formato "estandar" para los archivos que usa. La definición de la estructura está dada por el programador que diseñó la base de datos y por tanto no es abierto. Además la administración interna de los archivos depende del compilador que se usó; para lograr lo que necesitas primero debes saber la definición del registro y el compilador que se usó para generar el archivo.
72
« en: Sábado 18 de Noviembre de 2006, 16:03 »
No entiendo. Lo que has puesto es una descripción sintáctica de la cláusula LABEL, no son declaraciones usables en el lenguaje.
73
« en: Sábado 18 de Noviembre de 2006, 16:01 »
cobolman: soy nuevo en cobol y necesito q me ayuden en 2 preguntas Veamos... 1.-cual es la taxonomia de cobol a q esta orientado? COBOL está inspirado en otro lenguaje llamado FLOWMATIC aunque en apariencia no tenga mucho que ver con ese. COBOL está orientado al uso en negocios y hace fuerte énfasis en el uso de archivos de datos. Algunos lo consideran un DBM (Database Manager), tal como Clipper y creo que esa sería la taxonomía adecuada. 2.-que tiupo de expresiones soporta, infija postfija, prefija Infija, en base 10. Saludos.
74
« en: Sábado 18 de Noviembre de 2006, 15:46 »
La respuesta sigue siendo la que ya te dieron: depende de lo que quieras hacer y lo que tengas para lograrlo.
No existe un "one component fits all solutions", pero por supuesto puedes crear un super componente que muestre todos los formatos estáticos (BMP, JPG, GIF...) y dinámicos (SWF, AVI, MPG...).
Quizá para ti te sirva pero para alguien que solo quiere mostrar una animación flash ¿para qué quiere todo lo demás?.
Explica con lujo de detalles qué quieres lograr y qué tienes a la mano.
75
« en: Sábado 18 de Noviembre de 2006, 15:33 »
No se si hay otra forma, pero si lees más arriba en este thread, me explicaron como hacerlo.
En vez de abrir el Turbo Pascal (Programas/Turbo Pascal 7.0/Turbo Pascal 7.0) Abri el TPX (Programas/Turbo Pascal 7.0/TPX)
y hacelo con ese... (el alt+F9 digo..) ..la "compilación"
cualquier cosa, escribi nomás.
Saludos Saiyan1: A Turbo Pascal lo puedes instalar en cualquier parte, que en tu PC esté donde dices no significa que en el resto estará en el mismo lugar. De hecho el instalador de TP por omisión te lo instala en C:\TP7\, el TURBO.EXE y el TPX.EXE en este caso estarían en C:\TP7\BIN\
|
|
|