Scholieren.com forum

Scholieren.com forum (https://forum.scholieren.com/index.php)
-   Software & Hardware (https://forum.scholieren.com/forumdisplay.php?f=20)
-   -   [Prog] Perl: Automatisch linken? (https://forum.scholieren.com/showthread.php?t=1019149)

Mother Earth 20-11-2004 19:52

[CGI] Automatisch linken?
 
Kijk, ik heb hier een scriptje zodat mensen zich automatisch kunnen laten linken:

Code:

#!/usr/bin/perl
#########################################

#########################################
print "Content-type: text/html\n\n";
####Name of your directory#####
$indexname = "Internet Link Archive";
$path = "/";
$domain = "http://laura.ashleylynn.net";


$countfile = "counts.txt";
$buffer = $ENV{'QUERY_STRING'};
$count =0;
$count = $count + 1;

open(WERE,"$countfile");
@lines = <WERE>;
close(WERE);
foreach $lines (@lines){
chomp($lines);
($plus,$sum)=split(/\|/,$lines);
}

if ($buffer eq 'add'){
&addnew();
}
sub addnew{
print <<ENDHTML;
Add your link to our directory.<br>
<form action=direct.cgi?addnew method=post>
Title: <input type="text" name="title"><br>
Description: <input type="text" name="description"><br>
Url: <input type="text" name="http" value="http://"><br>
Category:<select name=cat>
<option value=link>link

</select><br>
<input type=submit value=Submit><input type=reset value=Reset></form>
ENDHTML
;
exit;
}
if ($buffer eq 'addnew'){
&addnewlink();
}
sub addnewlink{
if ($ENV{'REQUEST_METHOD'} eq 'POST') {
  read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
} else {
  $buffer = $ENV{'QUERY_STRING'};
}
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
  ($name, $value) = split(/=/, $pair);
  $name =~ tr/+/ /;
  $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
  $value =~ tr/+/ /;
  $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
  $FORM{$name} = $value;
}
if ($FORM{cat} eq 'link'){
open(AD,">>$path/link.htm");
print AD "<font size=4><a href=$FORM{http}>$FORM{title}</a> - </font><font size=2><B>$FORM{description}<br>";
close(AD);
}

print "Your link has been successfully added!";
exit;
}
$counter = $count + $plus;
if (-e$countfile){
open(TY,">$countfile");
print TY "$counter|0";
close(TY);
}else{
open(UY,">$countfile");
print UY "0|0";
close(UY);
}
print <<ENDHTML;
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  <meta name="GENERATOR" content="Mozilla/4.7 [en] (Win95; U) [Netscape]">
  <title>$indexname</title>
</head>
<body>

<center><b><font size=+4>$indexname</font></b>
<br>
<hr SIZE=3 NOSHADE WIDTH="100%"></center>

<br>&nbsp;
<center><table BORDER COLS=1 WIDTH="50%" BGCOLOR="#000000" >
<tr>
<td>
<center>&nbsp;<b><a href="direct.cgi?add">Add Your Link</a>&nbsp;</b></center>
</td>
</tr>
</table></center>

<center>
 <a href="$domain/link.htm">Links</a>

<br><b></b>&nbsp;<b></b>
<p><b>Total views to this page: $plus</b>
<br>&nbsp;
</body>
</html>


ENDHTML
;
exit;

(sorry, het is een beetje groot)

Op zich werkt alles, maar het belangrijkste niet. Het was mijn bedoeling dat op link.htm de link zou komen te staan, maar dat laatie dus niet zien. Hoe zorg ik daarvoor? Dus dat de link ook echt gepost wordt?

Hier kan je zien hoe het nu is: http://laura.ashleylynn.net/direct.cgi

(layout moet ik nog aanpassen hoor :) )

Alvast bedankt, ik hoop dat iemand het snapt & me kan helpen.

eddie 21-11-2004 15:54

komt het script wel in de volgende code?
Kan hij het bestand wel openen?
Gaat het wegschrijven goed?


Code:

if ($FORM{cat} eq 'link'){
open(AD,">>$path/link.htm");
print AD "<font size=4><a href=$FORM{http}>$FORM{title}</a> - </font><font size=2><B>$FORM{description}<br>";
close(AD);
}


Preaper 21-11-2004 23:26

Een meid die met Perl werkt? :eek:
Ik wil jouw telefoonnummer :cool: :p

Triloxigen 22-11-2004 10:09

Citaat:

Preaper schreef op 22-11-2004 @ 00:26 :
Een meid die met Perl werkt? :eek:
Ik wil jouw telefoonnummer :cool: :p

Ook nog als d'r naam een CD van Within Temptation is? ;)

Ik denk trouwens dat heet makkelijker is voor de TS om een script te downloaden (PHP) op www.hotscripts.com

Mother Earth 22-11-2004 15:13

Citaat:

Preaper schreef op 22-11-2004 @ 00:26 :
Een meid die met Perl werkt? :eek:
Ik wil jouw telefoonnummer :cool: :p

Het is gewoon een script van internet hoor :rolleyes: Ik wist niet eens dat het Perl is. Maar wel een beetje hoe het werkt.
& ik ga wel even kijken op die hotscripts.com

Bedankt iig.


Alle tijden zijn GMT +1. Het is nu 12:12.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.