Perlコーディング初心者質問スレ Part 44
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2005/10/17(月) 00:47:17ID:???【投稿する際の注意】
質問するときは内容をよく吟味してから投稿してください。
「コマンドの意味がわかんない」とかはマニュアル見ましょう。
回答者さんは何でも屋じゃありません。
1: 自分はこういう事がしたい。
2: それでこんな風にやってみたが・・・
3: こんなエラーが出て上手く行かなかった。
最低でも1と3が無いと誰も答えられないよ。
ソース貼る時は、全角スペースでインデント忘れずに。
良い回答は良い質問から。一緒に勉強しましょう。
過去ログやお勧めサイトは >>2-10
004116
2005/10/17(月) 06:23:47ID:???いつのまにか名前入力とか増えてたのね。
>あと名前をcsvに書き出したいんですが、$in{name}で書き出せるのでしょうか?(配列は自力でやりますです。)
フォームで<input type="text" name="name" value="">としていれば$in{name}に入る。
>あとその名前が入っていなかったら、エラーにしたいんですが、さっき入れた if ($in{name} eq '') { &error('名前を入力してください',''); } じゃだめでしょうか?
cgi-lib.plでのエラー表示用はCgiDie。CgiErrorでもいいけどどっちがいいとかは忘れた。
unless ($in{name}) { &CgiDie('名前を入力してください');}
とりあえず、ヒキなおいらに頼るような仕事は今後受けないようしましょうね。
昔、友達に頼まれたCGIが、これによく似てたから作ってみただけですので。
↑これも、ただ働きだったけど。
0042766
2005/10/17(月) 06:36:14ID:???レス有難うございます。やってみますです。
はいです。今後出来ない仕事は請けないです。(絶対)
>>40 の内容をいただいたソースもとにいじってみたんですけど
やぱりエラーでした。。
# CSVへの書き出し
open (CSV , '>>file.csv');
flock (CSV,2);
print CSV join(',', $in{name}, $in{'Q'.$i}), "\n";
print CSV join(',', '', $array[1]), "\n";
flock (CSV,8);
close (CSV);
004316
2005/10/17(月) 06:36:39ID:???こゆこと?
my$data;
my@q1;
my@q2;
for (my$i = 1; $i <= @question; $i ++) {
my@array = split("\t", $question[$i - 1]);
push(@q1, $in{'Q'.$i});
push(@q2, $array[1]);
}
$data = $in{name}.','.join(',', @q1)."\n".','.join(',', @q2)."\n";
正解を保存する理由もよく分からないままなんですが。
あと、選択する問題が4つ目とか増えるなら36行めを
for (my$s = 1; $s <= (@array - 2); $s ++) {
にしないとだめです。
0044766
2005/10/17(月) 06:46:20ID:???はっ!! できてる!
有難うございますー!! (泣きっぱなし)
名前は今EUCなので、excel開けたときに文字化けすてるんですが、
こいつをcsvに書き出すときに直すソースってありますでしょうか?
(ほんとにこれで最後でございます。。)
0045766
2005/10/17(月) 06:53:52ID:???をrequire "cgi-lib.pl";の後に挿入したら、名前しれているのに
でっかく 名前を入力してください て出ます。。
いれるとこ間違ってるのかな?
004616
2005/10/17(月) 06:56:07ID:???読み方 : シーエスブイ
フルスペル : Comma Separated Values
別名 : コンマ区切り
データの保存形式のこと。文字コードの指定はない。
エクセルはShift_jis限定だっけ?
メモ帳じゃないテキストエディターで変換保存すれば読めるはず。
保存時からShift_jisにしたいのならコード変換の処理が必要。
というか、ラジオボタンで値が数字だけだからいらなかったのに、テキストフォームつけるなら、Jcodeとか必要よ?
>>45
&ReadParse;の後
0047766
2005/10/17(月) 07:08:46ID:???jcode.pl 入れますた。
下のコードをどっかにいれたりしたらokだったりしますか?
# jcode.plを用いたコード変換
require 'jcode.pl';
open READ, '<sjis.txt';
open WRITE, '>euc.txt';
while(my $data = <READ>){
jcode::convert(*data, 'euc');
print WRITE $data; }
close WRITE; close READ; exit;
004816
2005/10/17(月) 07:17:18ID:???先頭で
require 'jcode.pl';
さっき変えたところで
$data = $in{name}.','.join(',', @q1)."\n".','.join(',', @q2)."\n";
jcode::convert(\$data、'sjis');
# CSVへの書き出し
というかエクセルは文字コード固定なの?
OOoしか使ってないからエクセルのことは知らないよ。
0049nobodyさん
2005/10/17(月) 07:31:39ID:???2ch外でやってもらえません?
0050766
2005/10/17(月) 07:49:53ID:???長い間ほんとにお手数おかけしました。
無事完成いたしましたです。
本当に感謝です。たすけていただいて本当にうれしくて泣きそうでした。
有難うございました。
これから教えていただいたことを無駄にしないように自分で勉強かさねていきますです。
>>49
すいませんでしたです。
0051nobodyさん
NGNG005216
2005/10/17(月) 07:53:59ID:???次の質問どぞー
↓
0053nobodyさん
2005/10/17(月) 08:09:02ID:???0054nobodyさん
2005/10/17(月) 08:39:52ID:???0055nobodyさん
2005/10/17(月) 09:18:14ID:???0056nobodyさん
2005/10/17(月) 10:19:11ID:???0058nobodyさん
2005/10/17(月) 13:09:39ID:???二度と来ないでくれ。
0059nobodyさん
2005/10/17(月) 17:49:53ID:???0060nobodyさん
2005/10/17(月) 18:40:37ID:???そこに誘導(隔離?)するのがいいかもね。
0061nobodyさん
2005/10/17(月) 19:11:36ID:???http://pc8.2ch.net/test/read.cgi/php/1102980903/
ここに誘導しとけばよかったね
0062nobodyさん
2005/10/18(火) 00:10:47ID:aW0OtyWyプログラム名は test.cgi です。手元で、% ./test.cgi > log として、出力されたログを見ると、きちんと
EUC-JPで出力されているのですが、ブラウザでアクセスしたり、fetch コマンドでアクセスしたり、telnet で
直接WebServerと話したり、とにかくApache を通すと、日本語の部分が、&xxx; と、文字実体参照の形に
なってしまいます。どうすれば文字化けを無くせるでしょうか。
(余計な部分を切り詰めた)プログラムを貼ります。
#! /usr/local/bin/perl -w
binmode(STDOUT, ":encoding(euc-jp)");
$filename= "/usr/local/man/ja/man3/strlen.3.gz";
$command = "gzcat $filename | /usr/local/bin/groff -man -Thtml -dlang=ja_JP.eucJP";
open(PIPE, "-|:encoding(euc-jp)", "$command") or die;
@html = <PIPE>;
close(PIPE);
print "Content-type: text/html; charset=euc-jp\n\n";
for $text (@html) {
print $text;
}
006362
2005/10/18(火) 00:12:05ID:aW0OtyWyコマンドライン上で ./test.cgi > log とした時の、ファイル log の中の一部分。
<a href="#名称">名称</a><br>
WebServer にCGIを起動させて結果を得た場合の、上と同じ部分。(アンド記号はわざと全角にした。)
<a href="#&Igrave;&frac34;&frac34;&Icirc;">&Igrave;&frac34;&frac34;&Icirc;</a><br>
環境。
OS: FreeBSD 5.4-RELEASE i386
WebServer: Server version: Apache/1.3.33 (Unix)
Perl: This is perl, v5.8.7 built for i386-freebsd-64int
0065nobodyさん
2005/10/18(火) 00:27:48ID:aW0OtyWyHTMLにするのはあきらめて、Plain text で我慢しろ、っていう意味ですか?
0067nobodyさん
2005/10/18(火) 03:43:48ID:???いちいちCGIで出力するより、htmlで吐いてアップした方が良いとは思うが・・・。
コマンドラインとApacheで動作が異なる場合はまず環境変数を疑う。
とりあえず2行目あたりに
$ENV{'LANG'} = 'ja_JP.eucJP';
を挿入。これで大丈夫だと思う。確かめてないけど。
0069nobodyさん
2005/10/18(火) 13:57:42ID:???フォルダの中身を全て消す処理というのはどうすれば良いのでしょうか?
ファイルの場合は @Test=''; これだけで消せますが、
フォルダの中身全てを消去する方法が判らず製作が滞っています。
何方かお知恵をお貸し下さい。お願いします。
0070nobodyさん
2005/10/18(火) 14:03:18ID:???0072nobodyさん
2005/10/18(火) 14:29:41ID:???ここにツッコミを入れる奴はおらんのか?(笑)
0073nobodyさん
2005/10/18(火) 14:48:42ID:???@Test = `del c:\*.*`;
とするんじゃなかったっけ?
0074nobodyさん
2005/10/18(火) 15:15:57ID:???0075nobodyさん
2005/10/18(火) 15:41:11ID:???また>>16が降臨して、>>69の掲示板スクリプトを全部作ってやればいい。
但し、↓のスレでやってほしい。
■こんなCGI作ってください■
http://pc8.2ch.net/test/read.cgi/php/1102980903/
0076nobodyさん
2005/10/18(火) 17:06:06ID:???0077nobodyさん
2005/10/18(火) 17:11:13ID:???0078nobodyさん
2005/10/18(火) 21:16:25ID:???> とりあえず2行目あたりに
> $ENV{'LANG'} = 'ja_JP.eucJP';
> を挿入。
で、うまく行きました。
%gzcat /usr/local/man/ja/man3/strlen.3.gz \
| env -i /usr/local/bin/groff -man -Thtml -dlang=ja_JP.eucJP
と、環境変数無しで実行すると、groff が実体参照を吐くことも確認できました。
ありがとうございました。
0079nobodyさん
2005/10/18(火) 22:15:08ID:???レンタル鯖のCGIで接続したい場合、どういった方法を取ればいいのでしょうか。
CGI自体はローカル起動、ローカルのMySQL、ローカル起動、レンタル鯖のMySQLで正しく動くので、スクリプト上のエラーではないと思います。
0080nobodyさん
2005/10/18(火) 22:25:23ID:???htmlの方で、
<form method="post" action="****.cgi">
コメント<Input Type="text" Name="com" Size="**" Maxlength="**">
<INPUT TYPE="image" SRC="img/send.jpg" align=right>
<form>
としておいてテキストを書込み、SENDボタンを押すと、CGIが動作しコメントがログに書込される、というものです。
でperlのCGIの方で(既存のCGIを自分で修正)
#!/usr/bin/perl -w
use CGI;
変数宣言
$form = new CGI;
$com = $form->param('com');
open (TEXTFILE,">>./log.txt")
print TEXTFILE $com;
print TEXTFILE "\n";
close (TEXTFILE);
としてるのですが、どうにもうまくいきません。
どうすればうまくいくかヒントでもいただけませんでしょうか?
0081nobodyさん
2005/10/18(火) 22:27:43ID:???「変数宣言」がコメントになってないとか
あと、何がうまくいかないのか不明。
500エラーなのかファイルに保存されないのか、詳しく書くように。
008280
2005/10/18(火) 22:32:41ID:???すみません。
インターナルサーバエラーを起こして動かないという状況です。
ちなみに変数宣言は
my ($form, $com);
としています。
0083nobodyさん
2005/10/18(火) 22:41:45ID:???ヒント:Content-type(たぶん)
008479
2005/10/18(火) 23:10:34ID:???0086nobodyさん
2005/10/18(火) 23:42:22ID:???0089nobodyさん
2005/10/19(水) 00:52:35ID:???何に使われるのかが非常に気になるのだが・・・
0091nobodyさん
2005/10/19(水) 17:01:02ID:mMzWKjOm指定したディレクトリ内にある、ファイルとディレクトリの名前、
そしてそれらのパーミッションを取得して表示させるCGIを作成してます。
stat でファイルのパーミッションは上手く取得できるのですが、
ディレクトリのパーミッションは 000 が返ってきます。
どうやったらディレクトリのパーミッションも取得できますか?
該当部分の今のソースはこんな感じです。
$dir ="cgi-bin";
opendir(DIR, $dir);
while (defined($uhaha = readdir(DIR))) {
if ($uhaha ne '.' && $uhaha ne '..') {
@st = stat "$permis";
$per = substr((sprintf "%03o", $st[2]), -3);
print "$uha:$per<br>\n";
}
}
closedir(DIR);
0092nobodyさん
2005/10/19(水) 17:13:00ID:mMzWKjOmopendir(DIR, $dir);
while (defined($uhaha = readdir(DIR))) {
if ($uhaha ne '.' && $uhaha ne '..') {
@st = stat "$uhaha";
$per = substr((sprintf "%03o", $st[2]), -3);
print "$uhaha:$per<br>\n";
}
}
closedir(DIR);
0093nobodyさん
2005/10/19(水) 17:18:56ID:???こちらの環境ではちゃんと表示されるよ
問題は他のところにあると思う
関係ないけれど、
> $per = substr((sprintf "%03o", $st[2]), -3);
ここは
$per = sprintf "%03o", $st[2] & 0700;
の方が良いんじゃないかと思ったり
009493
2005/10/19(水) 17:20:55ID:???$per = sprintf "%03o", $st[2] & 0777;
0095nobodyさん
2005/10/19(水) 17:36:12ID:???パーミッションを000にすることは普通ないだろうから、
statに失敗している可能性があるな。
opendir(DIR, $dir);
while (defined($uhaha = readdir(DIR))) {
if ($uhaha ne '.' && $uhaha ne '..') {
@st = stat "$uhaha";
if (@st > 0) {
$per = substr((sprintf "%03o", $st[2]), -3);
print "$uhaha:$per<br>\n";
} else {
print "$uhaha:stat失敗($!)\n";
}
}
}
closedir(DIR);
とでもして試してみたらどうだろうか。
0096nobodyさん
2005/10/19(水) 17:57:17ID:???stat "$dir$uhaha"
じゃなかろうかカレントディレクトリでテストしちゃったから気づかなかった
009791
2005/10/19(水) 17:57:31ID:mMzWKjOmありがとうございます。
後述しますが、こちらの環境のせいかもしれません.....
あと、$per = sprintf "%03o", $st[2] & 0777; の方が何故良いのか、
パッと見てまだわからないので、後で調べてみます。
>>95
やってみました。
全部「stat失敗(No such file or directory)」でした。
そして、なんらかの原因でうまく情報を取得できていないみたいだったんで、
情報を取得したいディレクトリの中に、このスクリプトを放り込んで実行した所、
完璧に表示されました。
上位でも下位でも、階層が違うディレクトリを指定すると、
上手く情報が取得出来ないようです。
なんでだ...
009891
2005/10/19(水) 18:00:40ID:mMzWKjOm全て謎がとけましたw
その通りですね。
テンパってるとダメですね.....ありがとうございました!
0099nobodyさん
2005/10/19(水) 23:56:03ID:???0,yamada,A32,333
1,tanaka,B22,555
上記のようなCSVファイルから1行ずつ読み込んでハッシュに入れたいのですがどのように
すればいいのでしょうか。問題点がCSVの一行目をカンマごとにばらしたのをハッシュのキー名
にして2行目からをそれぞれの値として入れなくてはいけないのです。
モジュールも使えないのでよりどうしたらいいのかわかりません。
$filename="test.csv";
%arr2 = &COUNT($filename);
foreach $value (values %arr2) {
print "$value\n";
}
sub COUNT{
open (IN, $filename)or die "$!";
while(<IN>){
$buff = $_;
chomp($buff);
@buff = split(/,/, $buff);
%arr2 =();
$arr2[] = @buff[];
$arr2[] = @buff[];
$arr2[] = @buff[];
close IN;
return %arr2;
}
}
whileの前に先に一行だけ読み込んでキーを作ってしまうべき何でしょうか。
ずっと堂々巡りで悩んでしまいました。
0100nobodyさん
2005/10/20(木) 00:29:03ID:???>whileの前に先に一行だけ読み込んでキーを作ってしまうべき何でしょうか。
それが一番ラクだと思うけど。むしろ何故ソレを実行しないのかわからん。
0101nobodyさん
2005/10/20(木) 00:32:14ID:???@buff = split(/,/, $buff);
%arr2 =();
$arr2[] = @buff[];
$arr2[] = @buff[];
$arr2[] = @buff[];
の意味が分からん。俺の知識不足。つまり
@buff = split(/,/, $buff);
%arr2 =();
$arr2[0] = @buff[0];
$arr2[1] = @buff[1];
$arr2[2] = @buff[2];
ってことなの?
0102nobodyさん
2005/10/20(木) 00:36:48ID:???$arr2[0] = shift(@buff);
$arr2[1] = shift(@buff);
...
だろうな。そもそもハッシュ使いたいっぽいからこれでも違うけど。
てか今はどうしていいかわからなくなってる状態だと思われ。
0103nobodyさん
2005/10/20(木) 00:36:51ID:???これでいいのか分からんが。
count('test.csv' => \%data) or die 'Failed to count';
print "$_: ", join(' / ', @{$data{$_}}), "\n" for sort keys %data;
sub count {
-f (my $file = shift) or warn('No such file'), return;
open IN, '<' . $file or warn($!), return;
my $hash = shift;
my @key = <IN> =~ /\w+/g;
while (<IN>) {
chomp;
my $i = 0;
push @{ $hash->{$key[$i++]} }, $_ for split /,/;
}
close IN;
}
010499
2005/10/20(木) 00:47:28ID:???この次の段階としてCSVファイルの任意の部分だけを読み込み、書き換えよう
にしなくてはいけないので、できるだけ汎用性を持たせた関数を作るよう心がけるように
との事なので、悩んでいました。
配列のところはそのようにするつもりです。whileでまわして配列をハッシュに移すのに
途惑っていて流れが整理できなくなっていました。
家の環境ではすぐに試せないのですが皆さんいろいろアドバイスありがとうございます。
010699
2005/10/20(木) 01:20:15ID:???0107nobodyさん
2005/10/20(木) 01:46:11ID:???my @data;
open(IN, $file) or die $!;
(my $key = <IN>) =~ s/^#\s*|\n//g;
my @keys = split(/,/, $key);
for (<IN>) {
chomp;
local %_;
@_{@keys} = split(/,/);
push( @data, { %_ } );
}
close(IN);
---
結果、以下のように代入される。
@data = (
{ 'ID' => '0', 'NAME' => 'yamada', 'TEL' => '333', 'ADDRESS' => 'A32' },
{ 'ID' => '1', 'NAME' => 'tanaka', 'TEL' => '555', 'ADDRESS' => 'B22' }
);
アクセスは、
print $data[0]{NAME}; # yamada
print $data[1]{TEL}; # 555
0108nobodyさん
2005/10/20(木) 02:51:02ID:???と書いてあるのは分かってるが、あえてCPAN モジュール版を。CSVって、
カンマで区切ってるだけと思ってる人も多いけど、泥くさいフォーマットだよ。
use strict;
use warnings;
use IO::File;
use Text::CSV;
my $parser = Text::CSV->new();
my $in = IO::File->new('test.csv', 'r')
or die('test.csv: ' . $!);
(my $field_names_line = <$in>) =~ s/^#\s*//;
$parser->parse($field_names_line)
or die('field keys are not found');
my @field_names = $parser->fields();
my @list = ();
while (1) {
my $row = $parser->getline($in);
last unless 0 < @$row;
my %hash = ();
@hash{@field_names} = @$row;
push(@list, \%hash);
}
@list = (...>>107 と同じ内容...);
0109nobodyさん
2005/10/20(木) 17:31:51ID:jR9yJZEclinuxサーバでパスワードの変更の際(passwdコマンド)に、
推測されやすいと判断をした場合、再入力を求めるようにするプログラムをperlで作る事は可能でしょうか?
可能な場合はどのような設置をすればよいのでしょうか?
0111nobodyさん
2005/10/20(木) 19:53:12ID:???passwdコマンドにそのチェックをする機能を追加した
ようなものをperlで書いてもとのpasswdコマンドを
置き換えてしまうのが一番楽じゃないかと思われ。
0113nobodyさん
2005/10/20(木) 20:31:40ID:???可能。だが、その質問をしている時点で現在の>>109には敷居が高いだろう。
また、いくらシステム側で対処しても、
その手の脆弱性の根本部分はユーザーのセキュリティー意識にある。
「推測されにくいパスワードを使う」ことと教えてあげる方がよい。
0114nobodyさん
2005/10/20(木) 20:45:15ID:jR9yJZEc例えば、4桁未満は駄目とか、数字のみは駄目等です
>>112
それはpasswdコマンドを書き換えるのはどこを操作すればよいのでしょうか?
また、perlで無くてもっと簡単にかける方法は無いものでしょうか
(どのファイルをどのように書き換えたらよいか等)
>>113
全くその通りなんですけど、自分の今後の為にと思いまして。
0115110
2005/10/20(木) 20:59:52ID:???> 例えば、4桁未満は駄目とか、数字のみは駄目等です
これって既に、生の passwd コマンドが実装している機能では?
同じ機能を Perl で再実装したいって思うのは自由だけどね。
とりあえず、passwd のマニュアルページとソースコードを読んでみることをお勧めします。
0116nobodyさん
2005/10/20(木) 21:03:16ID:???0117nobodyさん
2005/10/20(木) 22:05:06ID:???その質問レベルを見る限りではpasswdコマンドをどうこうしようとか
思う前に基本を勉強した方がよさそうだな...
0118nobodyさん
2005/10/20(木) 22:29:24ID:???同感
rootで動くためにはパーミッションに細工した上で実行時にIDを変えてやる必要があるが、
この方法を知らないようなレベルで作ろうとしてもセキュリティホールを作ってしまう危険の方が高いと思う…
011999
2005/10/21(金) 00:50:33ID:???4つめのキーの部分が出てこないのはどうしてでしょうか?
少しソースを変えていますが、
スカラーで確かめてみるとハッシュのキーは4つ確保されているのにADDRESSの項目だけが
表示されません。よろしくお願いします。
0121119
2005/10/21(金) 01:28:01ID:???print $data[3]->{ID};
print $data[3]->{NAME};
print $data[3]->{TEL};
print $data[3]->{ADDRESS};
のようにやっています。
4つ目のキーがうまくついていないのでしょうか。
0123nobodyさん
2005/10/21(金) 01:41:21ID:???http://www.kt.rim.or.jp/%7Ekbk/perl5.005/perlfaq8.html#How_do_I_ask_the_user_for_a_pass
>>119-122
改行コードが原因なら
- (my $key = <IN>) =~ s/^#\s*|\n//g;
+ (my $key = <IN>) =~ s/^#\s*|\s*\z//g;
ASCII 互換なら文字コードは関係無い。
0125nobodyさん
2005/10/21(金) 01:59:13ID:???改行コードかも知れません。最初の読み込みではずしてしまっているみたいなので。
いろいろ試してみます。
これとは別なcsvなのですがこちらの値は"yamada" のように"とタブでで区切っていていてこれを
=~ s/" //g;
ではずそうといろいろいじてるうちになってしまったみたいです。
こちらは今何とか自分で試行錯誤しています。
ありがとうございました。
0126nobodyさん
2005/10/21(金) 02:39:27ID:???修正サンクス。
あと、細かいけどこっちの方がよかった。展開が減るので。
- push( @data, { %_ } );
+ push( @data, \%_ );
>>125
改行の取り扱い不足でした。sorry。
> これとは別なcsvなのですがこちらの値は"yamada" のように"とタブでで区切っていていてこれを
> =~ s/" //g;
tab 文字も \s でマッチするので
s/"\s*//g;
がおすすめ。
0127nobodyさん
2005/10/21(金) 04:21:29ID:???\%_ にするんだったら local %_; じゃないほうがよいのでわ。
Excelなら、クオーテーションは Perlメモ の CSV の項を読むといいと思う。
0128nobodyさん
2005/10/21(金) 04:30:43ID:???local $_ は単に global な %_ を壊さないようにしている
のだけど(このコードだと不要だけど)、
それ以外にデメリットってあります?
0129nobodyさん
2005/10/21(金) 04:32:11ID:???0130128
2005/10/21(金) 04:40:25ID:???値を上書きしまいますね。
まぎらわしいので my 変数の方がいいのでは、ってことですね。
0131nobodyさん
2005/10/21(金) 15:03:57ID:???0132nobodyさん
2005/10/21(金) 15:24:58ID:???0133nobodyさん
2005/10/21(金) 17:35:12ID:???アンケイートをつくっているのですが、
【hoge.html1】
<FORM ACTION="hoge1.cgi" METHOD="post">→送信→log1
【hoge.html2】
<FORM ACTION="hoge2.cgi" METHOD="post">→送信→log2
↓
【hoge.html1】
<FORM ACTION="hoge.cgi" METHOD="post">→次へ→この分をまずlog3へ
【hoge.html2】
<FORM ACTION="hoge.cgi" METHOD="post">→送信→log3→おわり
てしたいんだけど、(2つのフォームの内容繋げて一気に送ってlog残したい)
どんなソース書けばいいですか?
0134nobodyさん
2005/10/21(金) 17:38:17ID:???javascript でも勉強したら?
0135nobodyさん
2005/10/21(金) 20:29:51ID:???一意のIDをcookieか何かで発行する、いわゆる「セッション」を使うのが普通だが、
htmlで、と言われると困る。mod_rewriteでも使って誤魔化すか。
で、言語は何よ?
0136nobodyさん
2005/10/21(金) 20:33:21ID:???0137nobodyさん
2005/10/21(金) 20:49:56ID:???=~s/\Eアンケ(イ|ー)ト\Q/アンケ$1ト/g;
0138nobodyさん
2005/10/21(金) 20:55:34ID:???0139nobodyさん
2005/10/21(金) 21:01:40ID:???>>133
元のhoge1.cgiとhoge2.cgiはコピーして2つにしただけでしょ?
1のクエリはすぐに処理せず
2のフォームのhiddenにでも入れておいたら?
0140nobodyさん
2005/10/21(金) 21:03:44ID:???■ このスレッドは過去ログ倉庫に格納されています