» »

perl vprasanje

perl vprasanje

poweroff ::

Mene pa zanima kako bi v perlu naredil da najprej zahteva geslo, in ce je geslo pravo, potem nalozi neko HTML stran. Zadevo bi pa rad naredil tako, da se ne spremeni naslov strani v URL vrstici, se pravi da vse poteka preko perl skripte, html dokumentov pa se ne da nalagati neposredno, tudi ce ves njegov url.
Nekaj v stilu frejmov, kjer je v url vrstici vedno isti naslov www.../index.html, spreminja pa se vsebina frejma.
Upam da sem dovolj razumljivo napisal kaj me muci.
Sem res se precej zacetnika, ampak upam da se me bo kdo usmilil...:D

darh ::

em... ja.... upam de mas kaj podlage v zanju perla.... cene ti ne bo nc jasno...

evo....



ena resitev je v datoteki .htaccess, kjer definiras kater direktorij bo zasciten & file z uporabniki & gesli... to je ena sansa...



pol je pa moznost da uporabs en file kot en gateway skoz katerga klicef fajle... in to resis tko da ti prebere QUERY STRING ( to je un k se napise za filenejmom in znakom ?, npr: index.cgi?path=en_file.html )

pol si pa lohka se mal "zvit" pa reces samo path=en_file, da bol sufisticiran zgleda pa pol u skripti dodas se ".html"



kle mas pa del ene moje skripte, k skrbi da laufa use tko kt je treba:
no ce si opazu sta tu 2 parameta: module pa sub
z modulam dolocs en file z subom pa poves kero rutino zagnat
sam v tem primeru je to samo za perlove fajle naprej prikazvat.. z malo modifikacije pa lohka priredis da ti dela tud za ostale fajle

sam mislm da bi lazje resu to s PHPjam... manj dela pa tko...
ker mors u perlu se file odpret pa pol prkazat pa zapret... u PHPju pa sam INCLUDE nardis pa je


print "Content-type:text/htmln";

# razdelimo QUERY_STRING v hash
my %query_string = &getQuery;

# v primeru da nismo dobili vseh podatkov doloŔimo
# default podatke za 'module' in 'sub', tako da se
# v primeru napake v 'QUERY_STRING'u pojavi osnovna
# uporabniÜka stran

$query_string{ 'module' } = 'common' if ( !$query_string{ 'module' } );
$query_string{ 'sub' } = 'userDefault' if ( !$query_string{ 'sub' } );

# preimenujemo 'module' v ime datoteke: s pripono
# '.pl' in predpono 'lib_'.
$query_string{ 'module' } = 'lib_' . $query_string{ 'module' } . '.pl';

# preverimo Ŕe zahtevana datoteka obstaja (-e)

if ( -e $query_string{ 'module' } )
{
# Ŕe datoteka obstaja jo uporabi
require $query_string{ 'module' };
my $sub = $query_string{ 'sub' };

# preveri Ŕe ×eljena subrutina obstaja

if ( defined &$sub )
{
# Ŕe obstaja jo za×ene
&$sub( %query_string );
}
# Ŕe subrutina ne obstaja, javi napako
else
{
&error( 'Iskana podrutina ( ' .$sub. ' ) ne obstaja.' );
}
}
# Ŕe fajl ne obstaja, javi napako
else
{
&error( 'Iskana datoteka ( ' . $query_string{ 'module' } . ' ) ne obstaja.' )
}


pa se subrutina za razdeljevanje query stringa



sub getQuery

{
my @splited = split( /&/, $ENV{ 'QUERY_STRING' } );
my ( %query, $key, $value );
foreach ( @splited )
{
( $key, $value ) = split( /=/, $_, 2 );
$query{ $key } = $value;
}
return %query;
}



Excuses are useless! Results are priceless!


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Rewrite preusmeritev v .htacess

Oddelek: Izdelava spletišč
6929 (775) Baja
»

htaccess - ce obstaja - serviraj, v nasprotnem primeru ....

Oddelek: Izdelava spletišč
61089 (1009) Lion29
»

Rewrite URLja (apache)

Oddelek: Izdelava spletišč
8946 (866) levaky
»

Tracking v PHPju

Oddelek: Programiranje
61708 (1593) darh

php problem(drugi)

Oddelek: Programiranje
7827 (709) darh

Več podobnih tem