下記のショッピングカートを長く使っているのですが、
http://www.rescue.ne.jp/
先週から、買物カゴに入れても価格が0円になったりするエラーが続いています。商品数も多くて、どのようにチェックしたらよいのか困惑しています。

#perlのことは何もわかりません。
#CGIを設置するのは自分でやりました。

A 回答 (1件)

Cookieが設定されていないかもしれません。


設定法(Windows IE5)
ツール-インターネットオプション
セキュリティ-インターネット-標準レベル
とする方法が一番簡単だと思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qperlスクリプト s/^\s+//;  s/\s+$//;  return wantarray ? @out : $out[0]; について

自作の掲示板を作ろうと思い、perlの勉強をしている者です。人様の作ったスクリプトを解析しています。以下のスクリプトはライブラリに記述されていたものです。


sub tttt {
my @out = @_;
for (@out) {
s/^\s+//;
s/\s+$//;
}
return wantarray ? @out : $out[0];


このスクリプトなんですが、 s/^\s+//; の部分の「+」と s/\s+$//; の部分の「+$」、 また「return wantarray~」 の三つの部分のスクリプトが、どういった働きをしているの分かりません。専門書やウェブ上のリファレンスも色々調べたのですが・・。

分かる方いらっしゃいましたらご教授下さると幸いです。よろしくお願いします。

Aベストアンサー

まず前2つの「+」は,正規表現における,「直前の表現を一回以上繰り返し」をあらわします.
「\s」は空白文字一文字を表す正規表現ですので,「\s+」は,「一文字以上の空白文字」になります.
次に,最初の「^」と2番目の「$」は,その正規表現がどこに現れるかを示す記号です.それぞれ,先頭と最後尾にあることを示します.
したがって,「^\s+」は,「最初に空白が一文字以上ある文字列」に,
「\s+$」は「行末に空白が一文字以上ある文字列」にヒットします.
置換構文sはご存知なんですかね.すなわち,この2文で,行の最初と最後の空白を消しているんです.

次に, wantarray ですが,
http://www2u.biglobe.ne.jp/~MAS/perl/ref/wantarray.html
によると,このサブルーチンttttを呼び出すときに,何を返り値にしているかで真偽が決まる関数です.
呼び出す時に配列を希望していたら @out 全体を,変数を希望していたら $out[0]だけを返します.

QPerlのWWW**Mechanizeのオブジェクトから中身を取り出す

PerlのWWW**Mechanizeのオブジェクトから中身を取り出す方法。

WWW:Mechanaizeでリンクの一覧を取得しようと思い
以下のようなコードを書きましたが、リンク一覧がWWW::Mechanize::Linkオブジェクトで取得されます。
解説文を読んでもここからどうやってテキストのアドレスを取得すればいいか分からないです。
何かメソッドを実行すればよいのでしょうか?

わかりにくい質問かと思いますがご回答お願いします。

………………………………………………………………………………

#WWW:Mechanizeの読み込み
use WWW::Mechanize;

#サイトの取得
$w = WWW::Mechanize->new(autocheck => 0);
$w->get("URLが入ります。");
@link_list=$w->links;

foreach ${_} (@link_list){print"${_}\n";}

    ↓
WWW::Mechanize::Link=ARRAY(0x243c564)
WWW::Mechanize::Link=ARRAY(0x243c564)
とオブジェクトで返されてしまう。

………………………………………………………………………………

PerlのWWW**Mechanizeのオブジェクトから中身を取り出す方法。

WWW:Mechanaizeでリンクの一覧を取得しようと思い
以下のようなコードを書きましたが、リンク一覧がWWW::Mechanize::Linkオブジェクトで取得されます。
解説文を読んでもここからどうやってテキストのアドレスを取得すればいいか分からないです。
何かメソッドを実行すればよいのでしょうか?

わかりにくい質問かと思いますがご回答お願いします。

………………………………………………………………………………

#WWW:Mechanizeの読み込み
use WWW::Mechanize;

#サイトの取得
...続きを読む

Aベストアンサー

foreachの部分を以下のように書き換えてください。

foreach ${_} (@link_list){print${_}->url_abs."\n";}

#ちなみにurl_absをurlにすると<a href="xxx">~</a>
#表示は「xxx」になり
#textにすると「~」が取得できます

参考URL:http://search.cpan.org/~petdance/WWW-Mechanize-1.62/lib/WWW/Mechanize/Link.pm

Q#!/usr/local/bin/perl

とPerlのCGIの先頭に書きますが
FedoraCore3でPerlを使うときにはどのように書けばよいのでしょうか?

Aベストアンサー

#!/usr/bin/perl

でしょうか。FedoraCore3は私は使っていませんが、cgiの先頭に書くのは、perlへのパスになるので、もしターミナルが使える状況なら

which perl

で得られるパスを #! につづけて書けばOKです。

Q#!/usr/local/bin/perlで命令が出せません。

プログラミングのド素人で、独学でwindows上でcygwinを使っている者から質問させていただきます。「#!/usr/local/bin/perl」というコマンドをプログラムの先頭に書いて、[ファイル名]を入力してcygwinで命令をしたところ、命令が実行できず、「commond not found」と出てしまいました。そこで、ネット上で、いろいろ調べて、試してみたのですが、どうしても、解決できません。
どなたか、アドバイスをいただけないでしょうか?
ちなみに、perl [ファイル名]では、命令を実行することができます。「type -a perl」というコマンドを入力すると、「/cygdrive/c/Perl/bin/perl」というのがでてきたので、「#!/cygdrive/c/Perl/bin/perl」というコマンドを書いても上手くいきませんでした。
ちなみに、私が書いたプログラムは、以下のようなものです。
#!/cygdrive/c/Perl/bin/perl (あるいは#!/usr/local/bin/perl)
# hello -- 挨拶のプログラム
print ("hello");

プログラミングのド素人で、独学でwindows上でcygwinを使っている者から質問させていただきます。「#!/usr/local/bin/perl」というコマンドをプログラムの先頭に書いて、[ファイル名]を入力してcygwinで命令をしたところ、命令が実行できず、「commond not found」と出てしまいました。そこで、ネット上で、いろいろ調べて、試してみたのですが、どうしても、解決できません。
どなたか、アドバイスをいただけないでしょうか?
ちなみに、perl [ファイル名]では、命令を実行することができます。「type -a perl...続きを読む

Aベストアンサー

perl.exe が、あなたの書いたスクリプトを見付けられないんじゃ無いでしょうか。

あなたの書いたスクリプトが hello.pl だとすると、

./hello.pl

とかで起動できないいんですね? 以下の Windows風の絶対パスでの起動を試してみてください。

'c:\foo\bar\hello.pl'


type perl の結果でスクリプトの 1行目 を決めるのは、大方は正しいでです。 正しくないのは、ふたつ以上のPerl処理系がインストールされた環境で使い分けるべき場合ですね。

type の結果が 「/cygdrive/c/Perl/bin/perl」というのは 「c:\Perl\bin\perl」であって、Cygwin の Perlでは無いのでしょう。それが Cygwin のShell(bash等) と相性の悪いのはしょうがない事です。

まずは、c:\Perl\bin\perl を使うのか Cygwin のPerl を使うのかを決めるのが良いと思います。 それにってその後にすべき事が変ってきます。

perl.exe が、あなたの書いたスクリプトを見付けられないんじゃ無いでしょうか。

あなたの書いたスクリプトが hello.pl だとすると、

./hello.pl

とかで起動できないいんですね? 以下の Windows風の絶対パスでの起動を試してみてください。

'c:\foo\bar\hello.pl'


type perl の結果でスクリプトの 1行目 を決めるのは、大方は正しいでです。 正しくないのは、ふたつ以上のPerl処理系がインストールされた環境で使い分けるべき場合ですね。

type の結果が 「/cygdrive/c/Perl/bin/perl」とい...続きを読む

Qショッピングカートの「カートの中身」システムについて

商品購入ボタンを押すと、「カートの中身」画面に移動します、
カートの中身のデータ保存方法でお聞きしたいのですが。
クッキー設定が無効でURLの後のデータ渡し、hidden渡しをしない場合
の方法をご教授お願いしたいです。

下記のサイトではPHPで書かれてますがカートの中身データが「Temporary Internet Files」に保存されるようです。
出来ればperlで実現できるのであれば よろしくお願い致します。

ttp://www.4d-nail.com/

Aベストアンサー

セッションIDを渡してますね。
表には表れませんがfirefox + Live HTTP headersで確認すると
GET /search?sourceid=navclient-ff&features=Rank&client=navclient-auto-ff&googleip=O;null;235&ch=8dc19095c&q=info:http%3A%2F%2Fwww.4d-nail.com%2Fnail_base.php HTTP/1.1
となってます。
 ただし、この方法だとある程度個人情報をサーバー側に保存することになります。
 ですので、簡単にしようと思ったら、適当に暗号化したPATH_INFOを使うというのもありかと。

下記サイトなどが参考になるかと
【参考サイト】
PHP:Cookieを使わずにセッションを使う
  http://www.res-system.com/weblog/item/583
cookieを使わずにセッション管理する。|PHPプログラムメモ|プログラムメモ
  http://logic.stepserver.jp/data/archives/481.html

こちらは、Perlについて
【参考サイト】
Perlでセッションを使う その2:クッキーを使わず、POSTやGETでセッションIDを渡す - ウィリアムのいたずらの開発日記
  http://blog.goo.ne.jp/xmldtp/e/f86b615441324a29fe418f719c10af54

セッションIDを渡してますね。
表には表れませんがfirefox + Live HTTP headersで確認すると
GET /search?sourceid=navclient-ff&features=Rank&client=navclient-auto-ff&googleip=O;null;235&ch=8dc19095c&q=info:http%3A%2F%2Fwww.4d-nail.com%2Fnail_base.php HTTP/1.1
となってます。
 ただし、この方法だとある程度個人情報をサーバー側に保存することになります。
 ですので、簡単にしようと思ったら、適当に暗号化したPATH_INFOを使うというのもありかと。

下記サイトなどが参考になるかと
【...続きを読む


おすすめ情報