WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Hilfe bei Perl Script (http://www.wcm.at/forum/showthread.php?t=89903)

Nightman 02.03.2003 22:08

Hilfe bei Perl Script
 
Hi an alle

hab wieder mal ein prob mit einem perl script :heul:

also es geht um das ......

ich hab ein perl script mit dem ich meinen adminbereich schützen kann wo alle meine admin scripte auf einem webseite sind!!!

und ich habe wieder mal an meiner seite bastelm müssen und jetzt müst deses script eine website in einem bestimmten frame anzeigen aber ich weiss ned wie das geht.

bei html geht es ja so

link

----------------------------------------------------------------------
hier das script

#!/usr/bin/perl

################################################## ##############################################
# #
# PASSWORD 1.1 - (31.05.2001) #
# #
# Dieser Script ist ausschliesslich fuer private Zwecke frei nutzbar und darf nur kostenlos #
# weitergegeben werden! Bei kommerzieller Nutzung kontaktieren Sie Bitte den Autor. #
# #
# Copyright by Andreas Wagner - mailto:mail@awhp.de - http://www.awhp.de/ #
# #
# Beispiel fuer die Einbindung in eine Webseite #
# #
# Geheim #
# #
# Achtung! Dieser CGI-Script muss mit "chmod 755, password.pl" ausfuehrbar gemacht werden! #
# #
################################################## ##############################################

### Beginn der Einstellungen ###

# Passwort, durch welches die entsprechende Datei geschuetzt wird (bitte aendern!)
$password = "passwort";

# URL der zu schuetztenden Datei
$url = "http://www.beispiel.de/geheim.htm";

# URL und Name dieses CGI-Scriptes
$pathtocgi = "http://www.beispiel.de/cgi-bin/password.pl";

### Ende der Einstellungen ###

&form;

$pass = $input{'password'};

$function = $input{'function'};

if ($function eq "post") {

if ($pass eq $password) {

&go_url;

}

&bad_pw;

}

&ask_pw;

sub bad_pw {

print "Content-Type: text/html", "\n\n";

print <<___HTML___;
<HTML>
<HEAD>
<TITLE>Fehler</TITLE>
</HEAD>
<BODY BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#800080" ALINK="#ff0000">

<P ALIGN="CENTER"><FONT SIZE=4 COLOR="#ff0000">Falsches Passwort!</FONT></P>

<P ALIGN="CENTER">Zur&uuml;ck</P>

</BODY>
</HTML>
___HTML___

exit;

}

sub ask_pw {

print "Content-Type: text/html", "\n\n";

print <<___HTML___;
<HTML>
<HEAD>
<TITLE>Login</TITLE>
</HEAD>
<BODY BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#800080" ALINK="#ff0000">

<P ALIGN="CENTER"><FONT SIZE=4 COLOR="#ff0000">Bitte Passwort eingeben!</FONT></P>

<CENTER>
<TABLE BORDER=0 WIDTH="75%">
<TR>
<TD>
<FORM ACTION="$pathtocgi">
<DIV ALIGN="CENTER">
<INPUT TYPE="password" NAME="password" SIZE="15">
<INPUT TYPE="hidden" NAME="function" VALUE="post">
<INPUT TYPE="submit" VALUE="OK"></DIV></FORM>
</TD>
</TR>
</TABLE>
</CENTER>

</BODY>
</HTML>
___HTML___

exit;

}

sub go_url {

print "Location: $url\n\n";

}

sub form {

read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});

if (length($buffer) < 5) {

$buffer = $ENV{QUERY_STRING};

}

@pairs = split(/&/, $buffer);

foreach $pair (@pairs) {

($name, $value) = split(/=/, $pair);

$value =~ tr/+/ /;

$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;

$input{$name} = $value;

}

}

---------------------------------------------------------------------

Hm ich hoffe ihr versteht was ich mein

thx

Nightman 03.03.2003 09:43

Hi an alle

kann mir den keiner weiterhelfen?

_m3 03.03.2003 09:49

1) Mit sowas kannst du Deine Website nicht wirklich schützen. Ich würde dir eher eine .htaccess Datei empfehlen.

2) AFAIK gibt es keinen standartisierten Weg, in einem HTTP-REsponse ein Target-Fenster anzugeben.

Nightman 03.03.2003 09:52

Zitat:

Mit sowas kannst du Deine Website nicht wirklich schützen. Ich würde dir eher eine .htaccess Datei empfehlen
ja das ist aber kein linux server @ _m3

also kann ich das mit dem script vergessen?

THX

_m3 03.03.2003 10:03

Wenns ein Apache-Server ist, geht .htaccess auch unter Windows.

Wenns ein IIS ist, kannst Du den Zugriff über die normalen Zugriffsrechte regeln.

Lies mal die Dokus auf www.microsoft.com

Nightman 03.03.2003 10:08

ja ist ein IIS 5.0 Server

ok werd mal rein gucken :D

könntest du nochmal da gucken ob du was machen kannst bitte !!!

Sendmail via Perl.scripte

THX

3of4 03.03.2003 13:13

wenn es ein IIS ist, könntest du das ganze auch per asp server-side erledigen...
zb.:
Code:

bsp.asp
<%Option Explicit%>
<HTML>
<BODY BGCOLOR="#000000" TEXT="#00FF00">
<CENTER>
<%If Request.Form("pass") <> "password" Then%>
        <form action="bsp.asp" method="post">
        <H1>Bitte Password eingeben</H1>

        <input name="pass" type="password">

        <input type="submit" value="los gehts">
        </form>
<%Else%>
        Hier gehts weiter ;-))
<%End if%>
</CENTER>
</BODY>
</HTML>


Nightman 03.03.2003 13:39

Hi an alle

@Ministerialrat Mailbomber

hm kannst du mir das bitte mal genauer erklären?

hatte bis jetzt noch nie mir asp zu tun.

THX

3of4 03.03.2003 14:05

Datei vergessen :(

Nightman 03.03.2003 14:13

hm alles schön und gut aber wo wird dann das richtige password abgespiechert?

_m3 03.03.2003 14:14

Zitat:

Original geschrieben von Ministerialrat Mailbomber
asp ist eine Sprache wie php.
Nein, ASP (Active Server Pages) ist ein Framework.

Als Sprache kann man mit ASP JavaScript genauso einsetzen wie Visual Basic, Perl, Python oder Ruby.

3of4 03.03.2003 14:16

Verzeihung, dachte das wäre ersichtlich:
<%If Request.Form("pass") <> "password" Then%>
Links fragst du das übergebene ab, rechts hast das "echte" Passwort stehen.

Also du könntest zb. schreiben
<%If Request.Form("pass") <> "nightman" Then%>

Nightman 03.03.2003 14:27

Hi an alle :)

@Ministerialrat Mailbomber

THX an dich das asp.spript funzt super nur bissl langsam da es ein 166mz pentium mit win2000 server ist.

nur hab ich noch eine kleine frage an dich

und zwar......

Zitat:

bsp.asp
<%Option Explicit%>
<HTML>
<BODY BGCOLOR="#000000" TEXT="#00FF00">
<CENTER>
<%If Request.Form("pass") <> "password" Then%>
<form action="bsp.asp" method="post">
<H1>Bitte Password eingeben</H1>

<input name="pass" type="password">

<input type="submit" value="los gehts">
</form>
<%Else%>
Hier gehts weiter ;-))
<%End if%>
</CENTER>
</BODY>
</HTML>
geht das den so auch ohne probs?

bsp.asp
<%Option Explicit%>
<HTML>
<BODY BGCOLOR="#000000" TEXT="#00FF00">
<CENTER>
<%If Request.Form("pass") <> "password" Then%>
<form action="bsp.asp" method="post">
<H1>Bitte Password eingeben</H1>

<input name="pass" type="password">

<input type="submit" value="los gehts">
</form>
<%Else%>

Amdin menü

<a href=gästebuch.pl?action=admin">gästebuch admin</a>

<a href=news.pl?action=admin">news admin</a>

<a href=usw.pl?action=admin">usw....</a>

<%End if%>
</CENTER>
</BODY>
</HTML>
---------------------------------------------------------

Nightman 03.03.2003 14:53

Hi an alle :)

So ich hab endlich das scripte so weit wie möglich fertig

mom sieht es so aus :D

Admin.htm

denst du das das so passt?

Nightman 03.03.2003 15:17

Also.....

Ich bin gerade drauf gekommen das es ned so geht wie ich will !!!

naja also mein prob...

Zitat:

bsp.asp
<%Option Explicit%>
<HTML>
<BODY BGCOLOR="#000000" TEXT="#00FF00">
<CENTER>
<%If Request.Form("pass") <> "password" Then%>
<form action="bsp.asp" method="post">
<H1>Bitte Password eingeben</H1>

<input name="pass" type="password">

<input type="submit" value="los gehts">
</form>
<%Else%>
Hier gehts weiter ;-))
<%End if%>
</CENTER>
</BODY>
</HTML>
also das was ich rot makiert habe ist die seite die nach dem eingeben des password's erscheind nur kann diese seite auch ein frameset sein?

wenn ja wie?

oder.....

kann ich das irgentwie so schreiben das es mich automatisch nach der eingabe des password's zu einer bestimmten vorgesehenen seite weiterleutet ohne dasich da draufklicken muss

THX

3of4 03.03.2003 15:38

Du müsstest das <Body ...> oben und das </Body> unten weglöschen, und statt dem <a href="..."> halt <frameset...> usw. schreiben.

3of4 03.03.2003 15:44

Code:

<%Option Explicit%>
<HTML>
<%If Request.Form("pass") <> "password" Then%>
<form action="bsp.asp" method="post">
<H1>Bitte Password eingeben</H1>

<input name="pass" type="password">

<input type="submit" value="los gehts">
</form>
<%Else%>
<frameset cols="100,100%,50">
    <frame name="nav" src="nav.html" target="Hauptframe">
    <frame name="Hauptframe" src="firstsite.html" target="_self">
    <frame name="info" src="chatbox.html" target="_blank">
<%End if%>
</HTML>

Sollte therroretisch funktionieren ;)

Nightman 03.03.2003 16:22

Hi an Alle :)

@Ministerialrat Mailbomber

also .....

Zitat:

<%Option Explicit%>
<HTML>
<%If Request.Form("pass") <> "password" Then%>
<form action="bsp.asp" method="post">
<H1>Bitte Password eingeben</H1>

<input name="pass" type="password">

<input type="submit" value="los gehts">
</form>
<%Else%>
<frameset cols="100,100%,50">
<frame name="nav" src="nav.html" target="Hauptframe">
<frame name="Hauptframe" src="firstsite.html" target="_self">
<frame name="info" src="chatbox.html" target="_blank">
<%End if%>
</HTML>
...... funzt ned :(

das hab ich schon versucht

fällt dir vielleicht noch was anderes ein?

THX

Nightman 03.03.2003 17:37

Hi an Alle

Dieser Thread wird geschlossen weil ich einen neuen aufgemacht hab, da es nimma um ein perl script geht.

THX an alle die mir geholfen haben

Hier der neue Thread Hilfe bei einem asp Script


Alle Zeitangaben in WEZ +2. Es ist jetzt 02:16 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag