Menú

Mostrar Mensajes

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

Mostrar Mensajes Menú

Temas - XafiloX

#1
Hola, estoy intentando hacer un programa en C que descubra si un archivo de Word tiene un pie de página...Para ello tengo que buscar una secuencia de de caracteres en el archivo y me he montado una funcioncilla que es la siguiente:
int buscar(FILE * fp, char * cadena){
    char car;
    int longi = strlen(cadena);
    if(longi < 1)
        return -2;
    int i=0;
    int k=0;
    while((car = fgetc(fp)) != EOF){
        if(car == cadena[i]){
            k++;
            while(i+1<(longi-1) && !feof(fp) && (car=fgetc(fp)) == cadena[++i])
                k++;
            if(k == longi-1)
                return 0;
            else if(feof(fp))
                return -1;
            else
                i=k=0;   
           
        }
    }
    return -1;
   
}


La he probado con archivos de texto y funciona perfectamente...
El problema es que cuando le paso el .doc o .docx deja de buscar antes de llegar al final del archivo...he abierto el .doc con un editor hexadecimal y me he encontrado que dentro del propio archivo hay caracteres con FF y por lo tanto en cuanto se llega allí se cree que es el EOF y termina la búsqueda...
¿Hay alguna forma de detectar que no es el auténtico fin de fichero y continuar la búsqueda?
#2
Bases de Datos / WHERE id IN subquery...
20 Julio 2011, 19:16 PM
Hola, estoy intentado hacer lo siguiente:

Código (sql) [Seleccionar]
UPDATE dxgm_statspos
   SET total_pos = r.pos
       WHERE id IN (SELECT @rownum := @rownum +1 'pos', id
                        FROM dxgm_users, (SELECT @rownum :=0)r
                        ORDER BY total_points DESC)
           AND dxgm_statspos.type = 0


Más o menos lo que yo quiero que haga es que me ordene la tabla users por total_points y con eso me saque la posicion de cada usuario según ese orden. Esa posicion se guarda en pos. Hasta aquí funciona. Luego intento poner esa "pos" en la tabla statspos en aquella fila que tiene id igual al id de la tabla users y type=0...y ahí ya me da error porque en el IN no puedo meter varias columnas.

La verdad, llevo ya un rato dándole vueltas y me he quedado atrancado en ello, no avanzo más...¿se os ocurre alguna manera de corregirla o alguna manera diferente o más sencilla de hacerla?

Gracias!

#3
Bases de Datos / Orden por defecto
16 Junio 2011, 11:12 AM
Hola, estoy bastante inquietado por una cosa, y es por qué orden sigue mysql al devolver las consultas que no tienen ORDER BY...Me he dado cuenta de que siempre las devuelve en el mismo orden, pero no termino de encontrar de dónde sale ese orden...
#4
Redes / Conectar con PC de otra red
4 Abril 2011, 18:55 PM
Hola a todos.
Estoy intentando hacer un chat para hablar con la gente a través de internet. Para hacerlo en red local no hay ningún problema, las dificultades surgen cuando quiero hacerlo con un ordenador que esté en otra red diferente a mi red local (vamos, el tipico chat de todas la vida, un ordenador hablando con otro).

He estado leyendo esto: http://www.adslayuda.com/Generico-nat.html
Ahí dice que habría que configurar el router para que mande los datos que le lleguen a tal puerto a tal máquina, pero esa solución no me gusta. ¿No hay ninguna otra manera de hacerlo? ¿No hay ninguna mera sencilla de establecer una conexión directa sin tener que toquetear la configuración de los dos routers?
#5
Bases de Datos / DELETE de resultado de un SELECT
10 Febrero 2011, 11:36 AM
Hola! Escribo este tema por si me podéis decir si es posible hacer una consulta que sea un delete de los resultados (varias filas) de un select (todo en una sola consulta...).

Es decir, yo tengo estas dos consultas:

Código (sql) [Seleccionar]
SELECT rid FROM web_messages WHERE `del_time` <= UNIX_TIMESTAMP() AND `message_type` = '3' AND `rid` != '0' GROUP BY `rid` ORDER BY `del_time` DESC
Y esta en un bucle que recorre todos los resultados de la anterior:
Código (sql) [Seleccionar]
DELETE FROM web_reportes WHERE `rid` = 'cada_resultado_anterior' LIMIT 1;

Y me gustaría saber si hay alguna menra de unir las dos querys en 1 sola, funcionando con todos los resultados de la primera (no con uno solo).

Un saludo y gracias por la ayuda!
#6
PHP / Includes y memoria
16 Enero 2011, 15:44 PM
Hola a todos, mi pregunta es la siguiente:
¿Al incluir archivos aumenta la memoria que utiliza el script? Es que estoy intentando reducir la memoria que gasta cada ejecución de cada script de mi sitio y se me ha ocurrido quitar los includes que no sean necesarios, y no si si con ello conseguiré algo...

¡Muchas gracias!
#7
PHP / mysql_unbuffered_query
8 Diciembre 2010, 21:13 PM
Hola, tengo unas dudillas a cerca de mysql_unbuffered_query...No he entendido muy bien como funciona...Según tengo entendido, lo que hace es que la consulta no se guarde en el buffer, ahorrando memoria, y además que se vayan enviando los resultados directamente a php en cuanto se tienen, mejorando la velocidad, pero que por ejemplo no se puede utilizar mysql_num_rows...

Pero entonces lo que no entiendo es qué pasa si por ejemplo, mysql me manda la primera fila que ha encontrado, y yo la cojo con php pero en el tiempo que estoy procesando la primera fila, mysql me ha enviado la 2ª, la 3ª y la 4ª y ahora yo con php quiero coger la siguiente fila...ahí que pasaría? ya que no existe buffer, no?

Y si pasase justo lo contrario, es decir, que php procesase más rapido que lo que tarda mysql en enviarme la siguiente fila y entonces al pedir la siguiente fila ya no haya más?

Y luego, otra duda más...según tengo entendido, cuando utilizas mysql_unbuffered_query no puedes hacer otra query hasta que hayas recuperado todas las filas...pero supongo que eso será para una conexion, no? si hay otra conexion diferente ejecutando otra query no habría problema, no? Y que pasaría si yo pido 20 filas pero luego solo utilizo las 10 primeras??


Os agradecería cualquier explicación, que estoy hecho un lio  :rolleyes:

Gracias!!
#8
Hardware / GeForce GTX 280 y DirectX
16 Noviembre 2010, 11:42 AM
Hola, tengo una GeForce GTX 280 y el otro día al ir a jugar a un juego muy reciente me soltó un error que me faltaba una dll del directx (d3dx9_43.dll)...
Lo cual me dejó un poco extrañado...ya me descargué la dll y esta todo corregido pero la duda que me ha surgido es la siguiente:

Mi tarjeta gráfica, creo que solo tiene soporte hasta DirectX9, pero yo tengo Windows 7 con DirectX11...entonces, ¿yo cuando juego a juegos no estoy aprovechando Directx11 sino que estoy utilizando DirectX9 por la tarjeta gráfica?

¡Gracias de antemano por la ayuda!
#9
Programación C/C++ / Ejecutar .exe desde C++
7 Noviembre 2010, 20:13 PM
Hola a todos. Me gustaría saber cómo puedo hacer para ejecutar un exe desde C++ y obtener su salida para luego poderla tratar con mi programa.

¡Muchas gracias y un saludo!
#10
Java / Meditaciones metafisicas sobre el ENUM
20 Octubre 2010, 19:07 PM
Hoy por primera vez he utilizado el ENUM en JAVA y la verdad, me ha asaltado una pequeña duda...El enum...¿qué es? ¿Se puede considerar una clase? Tiene una sintaxis muy extraña a la forma de declararlo que no corresponde del todo a la de una clase, sin embargo, si que puede tener constructor...
#11
Programación C/C++ / ¿Leer lista de enteros?
10 Septiembre 2010, 19:39 PM
Hola, llevo ya 2 horas comiendome el coco...Tengo todo el programa hecho, pero fallo en lo que deberia ser lo más facil...
El problema es que no consigo hacer que mi programa lea una cantidad indefinida de numeros enteros separados por comas pasandolos a un array...Un ejemplo de la entrada que necesito leer seria: 1,2,90,1890,5

¿Hay alguna manera de hacer que cin no solo se pare en el EOF sino también en los caracteres que yo le especifique? Sino, ¿sabéis alguna manera de leer así los datos?

Es que la verdad, es bastante frustrante tener el programa hecho y no poder leer los datos que necesita el programa...

Os agradeceria cualquier ayuda...¡gracias!
#12
Bases de Datos / Menos de x coincidencias
30 Julio 2010, 16:39 PM
Hola a todos! Me gustaria saber si con una sentencia mysql se puede conseguir lo siguiente:

Tengo una tabla con dos columnas (entre otras): campo1 y campo2. Y quiero una query que me devuelva campo1 y campo2 en los cuales el numero de campo1 y campo2 iguales (ambos tienen que ser iguales) sea menor de 3 y mayor de 0.

Un ejemplo

Campo1Campo2Otros
115
024
027
258
520
250
252

Esto me deberia devolver dos resultados:
-Campo1=0 y campo2=2
-Campo1=2 y campo2=5


La verdad, no tengo ni idea de si se puede hacer. Pero si fuese posible me solucionaria un gran problema, ya que sino tendria que coger con una query toda la base de datos y luego con otro lenguaje ir procensandolo hasta en contrar las coincidencias, lo cual seria lento...

Os agradeceria cualquier ayuda!
#13
Bases de Datos / Mysql caido...
28 Mayo 2010, 21:41 PM
Hola a todos, mas o menos cada mes, mysql se cae en mi servidor y no he conseguido averiguar a qué se puede deber...

He estado mirando los logs y he encontrado esto:
CitarVersion: '5.0.70'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  Gentoo Linux mysql-5.0.70-r1
100528 20:56:51 - mysqld got signal 11 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
We will try our best to scrape up some info that will hopefully help diagnose
the problem, but since we have already crashed, something is definitely wrong
and this may fail.

key_buffer_size=16777216
read_buffer_size=262144
max_used_connections=29
max_connections=100
threads_connected=4
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections = 93184 K
bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

thd=0xb2f02f50
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
Cannot determine thread, fp=0xb4dfb6a8, backtrace may not be correct.
Stack range sanity check OK, backtrace follows:
0x819823e
0xb75fae87
0x810e9b2
0x810ece9
0x81e6a70
0x81de3fe
0x81de9a2
0x81fd03e
0x829af69
0x829cad4
0x829c994
0x82155ed
0x81b0aff
0x81b6678
0x81b71de
0x81b87ec
0xb75f4d51
0xb744de2a
New value of fp=(nil) failed sanity check, terminating stack trace!
Please read http://dev.mysql.com/doc/mysql/en/using-stack-trace.html and follow instructions on how to resolve the stack trace. Resolved
stack trace is much more helpful in diagnosing the problem, so please do
resolve it
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort...
thd->query at 0x8a6b7f0 = UPDATE dxgm_statpoints AS s1, dxgm_users ,(SELECT * FROM dxgm_statpoints AS s2 WHERE s2.id_owner = '2162') AS s3 SET s1.fleet_dif = s1.fleet_dif - '1' , s1.fleet_rank = s1.fleet_rank + '1', dxgm_users.last_stat_change = '1275073011' WHERE s1.fleet_rank < s3.fleet_rank AND s1.fleet_count < s3.fleet_count AND s1.stat_type = '1' AND s1.stat_code = '1' AND dxgm_users.id = s1.id_owner
thd->thread_id=488109
The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
information that should help you find out what is causing the crash.
InnoDB: The log sequence number in ibdata files does not match
InnoDB: the log sequence number in the ib_logfiles!
100528 21:26:25  InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
100528 21:26:25  InnoDB: Started; log sequence number 0 43665

Os agradecería cualquier ayuda que me pudieseis dar para resolver esto, yo creo que del codigo de mi web no es...que debe ser algo de mysql...podria ser que tenga algunas variables mal configuradas?

Gracias!
#14
Hola a todos!

Estoy desarrollando un programa que controla ciertos procesos de mi web y para comprobar el estado de dicho programa se me ha ocurrido utilizar los IDs de la conexión a la base de datos...

Tengo dos preguntas respecto a ello de las que no he conseguido encontrar nada en google (siempre me sale lo de process list y eso no me vale...):
-¿Cómo puedo ver el ID de la conexión actual a la base de datos? (cuando obtengo el apuntador al conectar, si lo imprimo me sale resource no se que, así que supongo que así no sera...)
-¿Cómo puedo, una vez se el ID del proceso, saber si se mantiene abierta la conexión a la base de datos?¿Debería hacer en show processlist y buscar entre lo que me devuelva el ID?

Os agradecería cualquier ayuda, muchas gracias!
#15
Bases de Datos / Problema con sockets
6 Febrero 2010, 09:47 AM
Hola, hace unos meses que llevo teniendo problemas con los sockets en mysql...Cada dos semanas mas o menos (esta vez a sido dos dias seguidos) me voy a dormir con mi web funcionando a la perfeccion y me despierto con este error:

Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111) in /home/*****/www/db/mysql.php  on line 60

Me pongo a mirar los archivos y veo que el mysqld.sock y el msqld.pid existen, asi que los borro, paro mysql y lo vuelvo a iniciar...

Alguien sabe a que se puede deber esto? Que es lo que puedo hacer para solucionarlo? Es que este error, como no se cuando va a pasar, me esta haciendo perder muchos usuarios...

Muchisimas gracias!
#16
PHP / Pasar get en linea de comandos
28 Septiembre 2009, 19:18 PM
Hola a todos!

Estoy intentando hacer un cron que me ejecute un archivo, y necesito pasarle una variable por get... Y claro al poner esto

/usr/local/bin/php5 -f /home/xxxxx/www/admin/cron10.php?UniNum=2

pues me dice que no encuentra el archivo, ya que considera que el nombre es todo...Hay alguna manera de pasarle esa variable por la linea de comandos??
#17
PHP / Que no me muestre la pagina en CURL
11 Agosto 2009, 14:24 PM
Hola a todos, he creado este script en php para probar curl...funciona bien, pero yo no quiero que me muestre la pagina en pantalla y no se como hacerlo, porque por mas que toqueteo siempre me muestra la pagina de destino...

Código (php) [Seleccionar]
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"xxxxxxxxxxxxxxxxxxxxxx");
curl_setopt ($ch, CURLOPT_TIMEOUT, 30);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_COOKIESESSION, false);
curl_setopt ($ch, CURLOPT_COOKIE, $cookie);
curl_setopt ($ch, CURLOPT_POSTFIELDS, "subject={$asunto}&text={$texto}");
$resultado = curl_exec ($ch);

//Repetimos, por si ha dado un error en el primer intento....
if($resultado == FALSE){
    $resultado = curl_exec ($ch);
}
curl_close($ch);
#18
PHP / Pasar siempre informacion por GET
5 Agosto 2009, 17:56 PM
Hola, me gustaria saber si hay alguna manera de pasar siempre una informacion por GET de manera automatica... Me parece que va a ser que no hay, pero es que si existiese eso me ahorraria mucho trabajo...  :)
#19
PHP / cont($_SESSION)
27 Junio 2009, 12:21 PM
Hola, tengo una dudilla teorica...

Si yo hago count($_SESSION), me devolverá el numero de "elementos" que hay dentro de MI sesion, o me devolvera el numero de sesiones que hay en el servidor??

Es que me he creado un array multidimensional con una sesion, para asi poder tener varias cuentas abiertas con la misma sesion y quiero hacer el count para sabar si tengo que utilizar unset a la hora de desloguearse o session_destroy...
#20
PHP / La query misteriosa
20 Junio 2009, 21:27 PM
Hola a todos.

Hoy mientras programaba he entrado en uno de esos rompecocos de los que te puedes tirar horas y horas pensando que es lo que esta mal, hasta que luego caes en que era una tonteria...sin embargo, esta vez no he conseguido encontrar la causa y por eso acudo a vosotros, que suguramente la sabreis...

La duda es sobre la siguiente query, en cuyo resultado ni moon_name, ni moon_destruyed ni moon_update consigo que tengan valores y no se me ocurre a que es debido...Debeis observar que tambien pertenece a la tabla planets, que utilizo unas lineas mas abajo, pero yo creo que no deberia influir, ya que las llamo de otra manera para que no se sobreescriban los valores...

Os agradeceria cualquier ayuda. Gracias!
   
Código (sql) [Seleccionar]
$sql = "SELECT
l.temp_min, l.diameter, l.name as moon_name, l.last_update as moon_update,  l.destruyed as moon_destruyed, 
g.*, g.metal as debris_metal, g.crystal as debris_crystal, g.planet as planetpos, g.neutronio as debris_neutronio, 
p.*, p.name as planet_name,
u.*, u.id as user_id,
s.total_rank,
a.ally_tag, a.ally_name, a.ally_web, a.ally_members,
e.total_rank as ally_rank
FROM {{table}}planets as p

LEFT JOIN {{table}}galaxy as g ON g.id_planet = p.id
LEFT JOIN {{table}}users as u ON u.id = p.id_owner
LEFT JOIN {{table}}alliance as a ON a.id = u.ally_id
LEFT JOIN {{table}}planets as l ON l.id = g.id_luna AND l.planet_type = 3
LEFT JOIN {{table}}statpoints as s ON s.id_owner = u.id AND s.stat_type = 1 AND s.stat_code = 1
LEFT JOIN {{table}}statpoints as e ON e.id_owner = u.ally_id AND e.stat_type = 2 AND e.stat_code = 1

WHERE
g.galaxy = $Galaxy
AND g.system = $System
ORDER BY g.planet ASC";
$rs = doquery($sql, '');

#21
PHP / Duracion de sesiones
2 Abril 2009, 17:09 PM
Hola a todos, me gustaria saber cuando se acaban las sesiones de PHP...Es decir, un usuario inicia una sesion al entrar por primera vez en un pagina y cuando acabaria esa session? Hay un tiempo maximo de caducidad? O tendria que cerrar el navegador o apagar el ordenador? Que pasaria si suspendiese o hibernase el ordenador? Se mantendria abierta?

Necesito saberlo todo acerca de la duracion de las sesiones...Os agradeceria cualquier informacion que me pudieseis dar al respecto...

Gracias!
#22
PHP / Sesiones en un cron
11 Marzo 2009, 17:25 PM
Hola!

Estoy haciendo un cron en el cual tengo que utilizar sesiones para comprobar que no se este ejecutando ya (se tiene que ejecutar cada dos segundos y no se pueden superponer), y he visto que no funcionab, así que me he creado un pequeño archivo para comprobar que funcionasen las sesiones y no funcionan...

Este es el codigo que he creado de prueba (no os extrañéis por lo de doquery, es una funcion para simplificar las querys...):
Código (php) [Seleccionar]
session_start();

if($_SESSION['funcionando']== true)
{
doquery("UPDATE {{table}} SET authlevel = authlevel + 1 WHERE id = '2'","users");
echo "bien!!!";
}

if(!isset($_SESSION['funcionando']))
{
$_SESSION['funcionando'] = true;
}

?>


Lo utilizo en un cron con el siguiente comando:
/usr/local/bin/php5 -q /home/xxxxxx/www/actualizador_continuo.php

Y me da el error de headers...
Warning</b>:  session_start() [<a href='function.session-start'>function.session-start</a>]: Cannot send session cookie - headers already sent in <b>/home/xxxxxx/www/actualizador_continuo.php</b> on line <b>17

Como puedo hacer para que si me permita usar sesiones desde un cron??

Gracias por la ayuda
#23
PHP / Las sesiones funcionan con un cron??
21 Febrero 2009, 12:14 PM
Hola, estoy intentando hacer un pequeño script para actualizar mi pagina web cada 2 segundos...

He pensado hacerlo por cron, pero me he encontrado con un problema...El script no puede estar ejecutandose dos veces a la vez, pues probocaria grandes problemas...

La primera pregunta es: si digamos que en segundo 0 se inicia el cron y se empeiza a ejecutar el cron, pero se alarga mucho y tarda 5 segundos; al segundo 2 se iniciaria otro cron y estarian corriendo los dos a la vez? O se esperaria  a que acabase el primero y luego se iniciaria el segundo? O se pararia el primero, y se empezaria otra vez desde el segundo??

Ademas, para evitar estos problemas, un amigo me ha sugerido que utilice sesiones, pero me parece que con un cron no se pueden utiliar, pues creo que las sesiones ($_SESSION) guardan la informacion en la cookies (o eso me ha parecido entender de php.net...). Podria utilizarlas, o pasa lo que yo digo?

Gracias por la ayuda
#24
PHP / Añanir variable PHP en HTML
17 Abril 2008, 18:57 PM
Hola, estoy haciendo una cosilla en PHP y he utilizado un código de HTML dentro de este PHP. Mi duda es la siguiente: ¿cómo puedo utilizar una variable de PHP dentro del código de html? La variable que estoy intentando meter es $si , que la he puesto entre corchetes para que la veais mejor.

<?
$si = 100;

echo <<< HTML
<div style="border: 2px solid rgb(153, 153, 255); width: 250px;">
<div id="AlmDBar" style="background-color: yellow; width: {$si}px;">
&nbsp; Hola
</div>
</div>
HTML;
?>