Toon posts:

[Perl] Datum bij post *

Pagina: 1
Acties:

Verwijderd

Topicstarter
uitleg, normalitair verzorgt een vriend van mij de scripting, ik ben meer de html flash design man, aangezien hij er nu even een paar dagen tussen uit is wil ik dit probleem proberen op te lossen, ik heb er alle een tydje naar zitten te turen, maar ik zou het niet weten wat de oplossing is, hij werkt in perl:



ik heb op mijn site een postfield, vervolgens wordt het geheel in een tabel auto gezet, maar nu wil ik dat er ook auto een datum bij wordt gepost. dit is de code, het gaat om de site http://today.ttkdesign.nl
#!/usr/bin/perl


print "Content-type: text/html\n\n";

use LWP::Simple;
use CGI;

chdir "/home/http/users/www.ttkdesign.nl/html/";
$filenaam = "contentreply.html";
open(F,"< $filenaam"); while (<F>) { $file.=$_ } close(F);

($begin, $eind) = split(/<!--hier eindigt de laatste reply-->/, $file);

$query = CGI::new();
$reply = $query->param("reply");

chdir "/home/http/users/www.ttkdesign.nl/html/";
open(FH, ">$filenaam");
print FH $begin;
print FH "<tr><TD><p>$reply</p></TD></tr>\n";
print FH "<!--hier eindigt de laatste reply-->";
print FH $eind;


print <<einde;

<html>
<head>
<title>Redirect</title>
<script language="JavaScript"><!--
location.href = 'http://www.ttkdesign.nl/contentreply.html';
// --></script>
</head>
</html>

einde

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Tja, eigenlijk is dit niet echt de bedoeling... P&W is niet bedoeld om je scriptje te laten fixen door mensen die het wel weten.

Omdat ik je vraagstelling toch wel sympathiek vind ( ;) ) zal ik zal hem even open laten totdat iemand een goede hint heeft gegeven naar een functie of documentatie.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Mr_Blobby
  • Registratie: Mei 2000
  • Laatst online: 13-09 12:53
chdir "/home/http/users/www.ttkdesign.nl/html/";
open(FH, ">$filenaam");
print FH $begin;
print FH "<tr><TD><p>$reply</p></TD></tr>\n";
En dan de volgende code tussenvoegen:

@tijd = localtime(time);
$dag = @tijd[3];
$maand = @tijd[4]+1;
$jaar = @tijd[5];
$jaar = 1900+@tijd[5];
print FH "$dag-$maand-$jaar";

en zij zagen niet hoe spot in mij worstelde met verdriet


Verwijderd

Topicstarter
ik heb van alles geprobeerd maar ik krijg nu telkens een internal server error, waar moet ik die date cde precies pasten, alvast bedankt.

Verwijderd

waar is je close() ?????

Verwijderd

Topicstarter
Op maandag 18 februari 2002 15:35 schreef Foxboy het volgende:
waar is je close() ?????
close?

Verwijderd

code:
1
2
3
4
5
open(FH, ">$filenaam");
print FH $begin;
print FH "<tr><TD><p>$reply</p></TD></tr>\n";
print FH "<!--hier eindigt de laatste reply-->";
print FH $eind;

hier hoort nog een
code:
1
close(FH);

achter.
Dat zou wel eens kunnen helpen :)

enne, deze code:
code:
1
2
3
4
5
6
@tijd = localtime(time); 
$dag = @tijd[3];
$maand = @tijd[4]+1;
$jaar = @tijd[5];
$jaar = 1900+@tijd[5];
print FH "$dag-$maand-$jaar";

zou ik meer zo doen:
code:
1
2
3
4
5
6
@tijd = localtime(time); 
$dag = $tijd[3];
$maand = $tijd[4]+1;
$jaar = $tijd[5];
$jaar = 1900+$tijd[5];
print FH "$dag-$maand-$jaar";

/me Fox houdt niet zo van code voorkauwen, dan wordt ie net een }:O

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Op maandag 18 februari 2002 16:41 schreef Foxboy het volgende:
[...]
Ik neem aan dat je dit bedoelde:

zou ik meer zo doen:
code:
1
2
3
4
5
@tijd = localtime(time); 
$dag = $tijd[3];
$maand = $tijd[4]+1;
$jaar = 1900+$tijd[5];
print FH "$dag-$maand-$jaar";

Verwijderd

Topicstarter
ik heb het volgende ervan gemaakt, maar ik krijg een internal server error:whats wrong?

#!/usr/bin/perl


print "Content-type: text/html\n\n";

use LWP::Simple;
use CGI;

chdir "/home/http/users/www.ttkdesign.nl/html/";
$filenaam = "contentreply.html";
open(F,"< $filenaam"); while (<F>) { $file.=$_ } close(F);

($begin, $eind) = split(/<!--hier eindigt de laatste reply-->/, $file);

$query = CGI::new();
$reply = $query->param("reply");

chdir "/home/http/users/www.ttkdesign.nl/html/";
open(FH, ">$filenaam");
print FH $begin;
@tijd = localtime(time);
$dag = $tijd[3];
$maand = $tijd[4]+1;
$jaar = 1900+$tijd[5];
print FH "$dag-$maand-$jaar";
print FH "<tr><TD><p>$reply</p></TD></tr>\n";
print FH "<!--hier eindigt de laatste reply-->";
print FH $eind;
close(FH);

print <<einde;

<html>
<head>
<title>Redirect</title>
<script language="JavaScript"><!--
location.href = 'http://www.ttkdesign.nl/contentreply.html';
// --></script>
</head>
</html>

einde

Verwijderd

nou, heppie je scripts 755 gechmod??? heb je bestanden/dirs waar je evt. naartoe schrijft op 666 staan??? als dat allemaal zo is, kan je je errors in je scripts in de errorlog bekijken of hier Adminpro downloaden en dan je scripts "testen" gewoon op de naam van je script klikken en rechts op test. (Adminpro is trouwens ook een geweldig script om door de hele server heen te vroeten >:) )

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 17:36

Koffie

Koffiebierbrouwer

Braaimeneer

Ik doe altijd het volgende:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
&get_date;
Print "Huidige datum en tijdstip: $day $months[$month] $year , $hour:$min\n";
exit;

sub get_date {
@months = ();
push(@months,"Januari");
push(@months,"Februari");
push(@months,"Maart");
push(@months,"April");
push(@months,"Mei");
push(@months,"Juni");
push(@months,"Juli");
push(@months,"Augustus");
push(@months,"September");
push(@months,"Oktober");
push(@months,"November");
push(@months,"December");
@days = ();
push(@days,"Zondag");
push(@days,"Maandag");
push(@days,"Dinsdag");
push(@days,"Woensdag");
push(@days,"Donderdag");
push(@days,"Vrijdag");
push(@days,"Zaterdag");
($sec,$min,$hour,$day,$month,$year,$day2) = 
(localtime(time))[0,1,2,3,4,5,6];
if ($sec < 10) { $sec = "0$sec"; }
if ($min < 10) { $min = "0$min"; }
if ($hour < 10) { $hour = "0$hour"; }
if ($day < 10) { $day = "0$day"; }
$year += "1900";
}

Misschin heb je er wat aan.
En ik wil niet als wanabee PW mod voorkomen, maar ff googlen op "perl date time" en de scrips om datum en tijdstip vliegen je om de oren ;)

Braaikamer - Smoke&BBQ


  • Grum
  • Registratie: Juni 2001
  • Niet online
enge dingen zie ik hier
code:
1
2
3
4
5
6
7
8
@days = ();
push(@days,"Zondag");
push(@days,"Maandag");
push(@days,"Dinsdag");
push(@days,"Woensdag");
push(@days,"Donderdag");
push(@days,"Vrijdag");
push(@days,"Zaterdag");

waarom niet gewoon
code:
1
@days = qw( Zondag Maandag Dinsdag Woensdag Donderdag Vrijdag Zaterdag );

??

en $year += "1900"; :? je bedoelt $year += 1900; :?

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 17:36

Koffie

Koffiebierbrouwer

Braaimeneer

Geen idee, heb 't ooit gevonden omdat ik net als t.starter wat datum info moest hebben.
Met bovengenoemde search query bij google vond ik dus deze code.
Het werkt, en is afdoende voor mij. Het zal veel efficienter kunnen, maar als het werkt, werkt 't :)

Braaikamer - Smoke&BBQ


  • Ees
  • Registratie: Juli 2001
  • Laatst online: 29-07 15:00

Ees

Tja, het volgende werkt ook:

$drie = 1;
$drie += 1;
$drie += 1;

Dat wil niet zeggen dat het niet *ontzettend* brak is. Ik zou ter zelfbescherming de site waar je dat vandaan hebt in je firewall DENY filter zetten.

Voor de OP: het script moet volgens mij op zich werken. Probeer eens de volgende regel in je script toe te voegen (bovenaan, bijvoorbeeld na "use CGI;":

use CGI::Carp qw(fatalsToBrowser);

Fatale errormessages worden dan in je browser weergegeven. Hopelijk zie je nu wat het probleem is. (Regel na testen wel weer weghalen; het kan informatie geven die je liever niet aan bezoekers/crackertjes wilt geven.)

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 17:36

Koffie

Koffiebierbrouwer

Braaimeneer

Ik heb 'm toegevoegd, maar geen enkele error gekregen in m'n script via de browser of wat dan ook.
Zou je misschen uit kunnen wat er zo ontzettend fout en gevaarlijk aan is, kun ik 't tenminste oplossen ;)

Braaikamer - Smoke&BBQ


Verwijderd

maar heeft ttkdesign nu al een oplossing voor zijn probleem, is het verholpen?

  • Ees
  • Registratie: Juli 2001
  • Laatst online: 29-07 15:00

Ees

Koffie, m'n post was misschien een beetje onduidelijk.

Jouw stukje script is op zich niet bijster gevaarlijk en bevat syntactisch gezien geen errors. Wil je weten wat ik er allemaal mis aan vind, open dan een nieuw topic of stuur me een mailtje (dit wordt wel erg OT).

Mijn opmerkingen over CGI::Carpout waren voor ttkdesign bedoeld (de "OP": original poster).

M'n post bevatte dus twee mededelingen:

1. Het stukje script wat jij plakte is brak.
2. Laat ttkdesign eens "CGI::Carpout qw(fatalsToBrowser)" proberen.
Pagina: 1