---
title: "nyhet.cgi"
type: "forum-thread"
url: "https://www.webforum.nu/amne/perl-ruby/18974-nyhet-cgi"
topic: "Perl & Ruby"
topic_url: "https://www.webforum.nu/amne/perl-ruby"
author: "Hazze"
published: "2000-03-09T20:09:00.000Z"
updated: "2000-03-09T21:40:00.000Z"
replies: 2
views: 380
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/perl-ruby/18974-nyhet-cgi"
---

# nyhet.cgi

## #1 — Hazze, 2000-03-09T20:09Z

Jag har skrivit ett nyhetssystem som bara inte vill fungera! Om man fyller i mitt forumulär på <http://www.gratiswebplats.nu/yohan/formular.htm>  och trycker spara kommer ett kontsigt felmedelande. Testa själva.

Här är koden:
\#!/usr/bin/perl
$news = 'news.txt';
@url = split(/&/,$ENV{'QUERY_STRING'});
foreach $i (0 .. $#url) {
    $url\[$i\] =\~ s/\\+/ /g;
    $url\[$i\] =\~ s/%(..)/pack("c",hex($1))/ge;
    $loc = index($url\[$i\],"=");
    $key = substr($url\[$i\],0,$loc);
    $val = substr($url\[$i\],$loc+1);
    $url{$key} .= $val;
    }
$url{'news'} =\~ s/\\n/\<BR\>/g;
@datum = localtime(time);
$datum = $datum\[4\]+1 . "/$datum\[3\]/$datum\[5\]";
$new = "\<P\>\<B\>\<TT\>\<FONT SIZE=\\"+2\\"\>$datum:\</FONT\>\</TT\>\</B\>\<FONT SIZE=\\"+1\\"\>$url{'news'}\</FONT\>\</P\>\\n";
open IN, $news;
@old = \<IN\>;
close IN;
open OUT, "\>$news";
print OUT $new . join('',@old);
close OUT;
print "Location: news.html\\n\\n";

Hoppas nån kan hitta felet :)

Permalänk: https://www.webforum.nu/p/18974

## #2 — Csson, 2000-03-09T21:01Z

Du verkar köra ett cgi-script med filändelsen .asp, så börja med att döpa om nytt.asp till nytt.cgi. Sedan ska raden 

print "Location: news.html\\n\\n";

vara

print "Location:   \<A HREF="http://www.gratiswebplats.nu/yohan/news.html\\n\\n";" TARGET=\_blank\>http://www.gratiswebplats.nu/yohan/news.html\\n\\n";\</A\> 

Det var de två fel jag hittade i scriptet. Dessutom har du skrivit 
\<!--#include file=" news.txt"--\> i 'news.html'. Ta bort mellanslaget innan 'news.txt'. Är servern konfigurerad att kolla efter SSI-anrop i html-filer? Döp annars om 'news.html' till 'news.shtml' och ändra namnet även i Location-headern sist i scriptet.

/Csson

\[Redigerat av Csson den 09 mar 2000\]

Permalänk: https://www.webforum.nu/p/340423

## #3 — Rödalacket, 2000-03-09T21:40Z

Kolla även över sökvägen från HTML dokumentet till scriptet...
bör vara något i stil med ./nytt.cgi eller ../nytt.cgi eller så skriver du i hela sökvägen t.ex <http://www.gratiswebplats.nu/yohan/cgi-bin/nytt.cgi>

Permalänk: https://www.webforum.nu/p/340424

---

Tråden på webben: https://www.webforum.nu/amne/perl-ruby/18974-nyhet-cgi
