Lun Ago 21, 2006 8:54 am
|
 |
mydaboin
Perlero Nuevo

|
Registrado: 22 Abr 2004
Mensajes: 59
Ubicación: Pues Aqui, Preguntando
|
|
| Problemas con .pl |
|
|
Tengo un .pl que me busca las empresas que posee mi base de datos, el funcionaba bien hasta que sobrevino el ataque (hackearon), luego ya no hace sus funciones, tiene la base de datos que tenia respaldada, la carpeta cgi-bin la monte otra vez, pero nada ... al probarla con otro servidor y que les parece FUNCIONA , el mismo .pl, sin modificación, exactamente igual busca las empresas, hace su función, pero en el servidor actual NO
¿Por que sucede esto?  |
|
|
|
Lun Ago 21, 2006 9:11 am
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4084
Ubicación: Valladolid, España
|
|
|
|
|
Si es un cgi, deberás seguir el protocolo de comprobación de que se cumplen todos los detalles necesarios para que funcione.
Luego, iniciar las estrategias para saber porqué falla (warn, warnings, ver los logs del servidor, print, etc. etc.) |
|
Lun Ago 21, 2006 1:57 pm
|
 |
mydaboin
Perlero Nuevo

|
Registrado: 22 Abr 2004
Mensajes: 59
Ubicación: Pues Aqui, Preguntando
|
|
|
|
|
Gracias por el concejo , revise todo y el problema resulto ser que estaba corrupta la base de datos ... TUBE QUE BORRAR TODAAA LA INFORMACIÓN Y VOLVERLA A MONTAR ... ya que a pesar que la reemplazaba se quedaba dañada ... que raro no ... así que la elimine y la volvi a montar una a una ... son más de 30 directorios ... .... pero esta volviendo a su funcionamiento normal ...  |
|

Mar Ago 22, 2006 3:59 pm
|
 |
mydaboin
Perlero Nuevo

|
Registrado: 22 Abr 2004
Mensajes: 59
Ubicación: Pues Aqui, Preguntando
|
|
|
|
|
Hable demasiado pronto ...
no que que hacer ... y la logica me dice que el .pl esta bien ... busca en cada uno de mis directorios y los muestra ... bueno eso en corrida en frio ...
La realidad se desdobla para hacerme pensar el doble!!!
como se explica que en dos diferentes cuentas ... en una SIRVE HACE LA BUSQUEDA ... MUESTRSA MIS 7.348 EMPRESAS ...
y en otro NO ME DEJA MONTAR MÁS DE 4.518 ... los demás directorios no me los muestra!!! y por si fuera poco a montraslas NO LO HACE solo si le quito el .dat que sobra ...
EXPLIQUENME!!! perdon pero a veces uno cae en una especie de locura programativa!!!  |
|

Mie Ago 23, 2006 7:05 am
|
 |
mydaboin
Perlero Nuevo

|
Registrado: 22 Abr 2004
Mensajes: 59
Ubicación: Pues Aqui, Preguntando
|
|
|
|
|
jejeje ... bueno es que mi forma de programar es algo extraña y me da pena jejeej de veras ... a veces construyo programas en el aire y funcionan ...
mira las paginas:
www.800guia.com
En este pones en el buscar de empresas la letra a o cualquier otra ... y veras que NO BUSCA NADA
www.800guia.com.ve
En este haz el mismo procedimiento y LISTO LO ENCUENTRAS!!!!
son el mismo programa para ambas ... te pongo el pedazo que busca la información ... espero que se entienda!!! jejeje
| Código: |
open (TEMPORAL,">$archivo_temporal") || &Error ($!, "$archivo_temporal");
open (CATEGORIAS, "$archivo_listado") || &Error ($!, "$archivo_listado");
while($lincat=<CATEGORIAS>) {
chop $lincat;
$lincat=~s/<br>/\n/g;
@inf=split("\t",$lincat);
$grupo=$inf[0];
$archivo_empresas = "../db/directorios/$grupo.dat";
$archivo_empresas =~s/ //g;
if (-e $archivo_empresas) {
open (EMPRESAS,"$archivo_empresas") || &Error ($!, "$archivo_empresas");
while($renglon=<EMPRESAS>) {
chop $renglon;
@matriz=split("\t",$renglon);
$x=0;
foreach $item (@campos) {
$$item=$matriz[$x];
$x++;
push (@desorden,"$matriz[1]\?$renglon");
}
$dat="si";
$imprimir="no";
if ($otrosfiltros=~/$filtro/i) { $imprimir="si" }
if ($filtro eq $filter) { $imprimir="si" }
if ($filtro eq "") { $imprimir="si" }
if ($status eq "") { $imprimir="no" }
if ($imprimir eq "si") {
if ($categoria ne "") {
$imprimir="no";
if ($catempresa=~/$categoria/i) { $imprimir="si" }
} else {
$x=0;
$halladas=0;
@patron=("$codigo","$empresa","$direccion","$filter","$nosotros","$claves","$www","$pais");
$contexto=join("-",@patron);
@palabras=split("\ ",$busqueda);
foreach $palabra (@palabras) {
$x++;
if ($palabra ne "" && $contexto=~/$palabra/i) { $halladas++ }
}
if ($halladas==0) { $imprimir="no" }
if ($halladas ne $x) { $imprimir="no" }
}
}
if ($imprimir eq "si") {
$hallado="si";
$contador++;
$contador_pagina++;
if ($contador_pagina>$listpag) {
$contador_pagina=0;
$pagina++;
}
if ($contador>=$r1) {
if ($contador<=$r2) {
print TEMPORAL "<table width=100% cellpading= cellspacing=0 border=0><tr><td>";
print TEMPORAL "<p align=justify>";
if ($titulo eq "") {
print TEMPORAL "<a href=\"/cgi-bin/guiaview.pl\?codigo=$codigo\&grupo=$grupo\">";
if ($www ne "") { print TEMPORAL "<img src=../img/url.gif border=0 align=absmiddle> " }
if ($email ne "") { print TEMPORAL "<img src=../img/mail.gif border=0 align=absmiddle> " }
$img1="../htdocs/imagenes/$codigo-titulo.jpg";
$img2="../htdocs/imagenes/$codigo-1.jpg";
$img3="../htdocs/imagenes/$codigo-2.jpg";
$color_emp="blue";
if (-e $img1 || -e $img2 || -e $img3 || $galeria ne "") { $color_emp="navy" }
if ($galeria ne "") { print TEMPORAL "<img src=../img/camara.gif border=0 align=absmiddle> " }
}
print TEMPORAL "<b><font color=$color_emp> $empresa</font></b>";
if ($titulo eq "") { print TEMPORAL "</a>" }
if (length($nosotros)>250) { $nosotros = substr($nosotros,0,250) }
print TEMPORAL " - $nosotros";
if ($titulo ne "") {
if ($numlocal ne "") { print TEMPORAL "<br><b><tt>Stand \U$numlocal</tt></b>" }
if ($direccion ne "") { print TEMPORAL "<br>Dirección: $direccion" }
if ($tlf ne "") { print TEMPORAL "<br>Tlf: $tlf" }
if ($www ne "") { print TEMPORAL "<br><a target=\_blank href=\"$www\"> $www </a>" }
if ($email ne "") { print TEMPORAL "<br><a href=\"/cgi-bin/correo.pl?destino=$email\&codigo=$codigo\&ti
}
print TEMPORAL "</td></tr></table>";
print TEMPORAL "<hr noshade size=1 color=\#8000FF>\n";
}
}
}
}
}
}
close CATEGORIAS;
close EMPRESAS;
close TEMPORAL; |
|
|

Mie Ago 23, 2006 7:19 am
|
 |
mydaboin
Perlero Nuevo

|
Registrado: 22 Abr 2004
Mensajes: 59
Ubicación: Pues Aqui, Preguntando
|
|
|
|
|
De nuevo yo ... acabo de ver una diferencia en cpanel de las dos paginas mira y ayudadame (no se mucho de mysql de veras que apenas se cuales son sus funciones )
800guia.com:
800guia.com.ve:
 |
|
Mie Ago 23, 2006 7:21 am
|
 |
mydaboin
Perlero Nuevo

|
Registrado: 22 Abr 2004
Mensajes: 59
Ubicación: Pues Aqui, Preguntando
|
|
|
|
|
| Por cierto le di a reparar y no paso nada sigue igual ... la elimino??? |
|
Mie Ago 23, 2006 8:11 am
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4084
Ubicación: Valladolid, España
|
|
|
|
|
Si el código te funciona en una máquina pero en otra no, quizás el problema esté en el nombre de algún fichero o directorio, que pueden ser distintos del original.
Deberás poner más controles de seguridad en el programa. |
|

Mie Ago 23, 2006 10:05 am
|
 |
mydaboin
Perlero Nuevo

|
Registrado: 22 Abr 2004
Mensajes: 59
Ubicación: Pues Aqui, Preguntando
|
|
|
|
|
Trato de ver cual es el problema pero no consigo ... si hago que los lean independientemente lo hace, pero juntos no se muestra ... y me da rabia que en el otro si se ve ... con el mismo .pl ... sera que me falta un modulo ... es que estaba viendo los modulos de ambas paginas y en el de 800guia.com le faltan estos (lo tiene 800guia.com.ve):
CGI::Push
CGI::Session
CGI::Session::Driver
CGI::Session::Driver::db_file
CGI::Session::Driver::DBI
Compress::Zlib
CGI::Session::Driver::file
CGI::Session::Driver::mysql
CGI::Session::Driver::postgresql
CGI::Session::Driver::sqlite
CGI::Session::Driver::sqlite
CGI::Session::ErrorHandler
CGI::Session::ID::incr
CGI::Session::ID::incr
CGI::Session::ID::md5
CGI::Session::ID::static
CGI::Session::Serialize::default
CGI::Session::Serialize::freezethaw
CGI::Session::Serialize::json
CGI::Session::Serialize::storable
CGI::Session::Serialize::yaml
CGI::Session::Test::Default
CGI::Session::Tutorial
CGI::Upload
Ahora cuales son sus funciones dentro del cgi???  |
|

Mie Ago 23, 2006 2:03 pm
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4084
Ubicación: Valladolid, España
|
|
|
|
|
| Si tuvieras acceso a la máquina, hazle un perl -c programa.pl para ver si te da algún error de sintaxis. Si pones use warnings; y use strict; te dirá más información. |
|
Mie Ago 23, 2006 3:19 pm
|
 |
mydaboin
Perlero Nuevo

|
Registrado: 22 Abr 2004
Mensajes: 59
Ubicación: Pues Aqui, Preguntando
|
|
|
|
|
Dejame ver como hago!! preguntas:
¿Por qué el mismo .pl con la misma base de datos, funciona en uno y en otro no?
¿Si tuviera un error NO FUNCIONARIA en la otra?
Y si existe un error ¿Por que Ahora es que se da a conocer y no cuanto se implento el programa?
Por lo que veo tendre que hacer otro .pl ... ahora necesitare un concejo de otra forma de buscar los .dat y que los muestre todos por fa
Bueno no me queda otra cosa que decir además de Gracias!!!  |
|

Mie Ago 23, 2006 3:27 pm
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4084
Ubicación: Valladolid, España
|
|
|
|
|
| Si uno te funciona y otro no es que las condiciones externas al código del programa son distintas: permisos y nombres de ficheros y directorios, algún módulo que falte, algún módulo que falle, permisos para acceder a la base de datos, no existe la base de datos, el usuario web no tiene permiso de ejecución del programa, etc. etc. |
|
Lun Sep 04, 2006 1:28 pm
|
 |
mydaboin
Perlero Nuevo

|
Registrado: 22 Abr 2004
Mensajes: 59
Ubicación: Pues Aqui, Preguntando
|
|
|
|
|
Gracias, resulto ser un problema de mi servidor ... ya que por una extraña razón habían eliminado unos modulos, los que te mencione, los cuales servian de soporte para la lectura de varios .dat simultaneamente ... menos mal ... ... sabias que siempre has sido de gran ayuda en mis problemas ... como haría para colaborar desde mi país con la web??? a nivel economico .. voy averiguar a ver ... saludos  |
|
Lun Sep 04, 2006 1:33 pm
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4084
Ubicación: Valladolid, España
|
|
|
|
|
Tanto esta web como yo mismo admitimos donativos.
Sobre todo yo que llevo nueve meses en el paro  |
|
Powered by phpBB © 2001, 2005 phpBB Group
|