[PHP-users 21979]セッションについて
|| MARU ||
marup @ pop12.odn.ne.jp
2004年 6月 3日 (木) 19:59:44 JST
はじめて投稿します。宜しくお願いします。
PHPは初めてまだ数週間という初心者です。
環境は以下のとおり。
PHP:4.3.4
Apach:1.3.28
OS:Windows2000
PHPを使った検索システムを作る為、
書籍のソースを参考に作成しました。
csvのリストを読み込み
その中から検索できるようになっています。
一つだけを検索するなら問題ないのですが、
複数を一画面で検索したいため困っています。
先に検索した結果を残したまま、次の検察に
移りたい為、セッション関数を使うことは
わかり、解らないながら色々と書いてみたのですが
エラーが三つも出てしまいます。
エラー内容----------------------------------
Warning: session_start(): open(/tmp\sess_a10d24652c5f879d5fca651df1353bd7,
O_RDWR) failed: No such file or directory (2) in d:\php\serch\serch.php on
line 58
11-111 テスト
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
Warning: Unknown(): open(/tmp\sess_a10d24652c5f879d5fca651df1353bd7, O_RDWR)
failed: No such file or directory (2) in Unknown on line 0
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
Warning: Unknown(): Failed to write session data (files). Please verify that
the current setting of session.save_path is correct (/tmp) in Unknown on
line 0
ここまで------------------------------
以上がエラーです。サイトにあるサンプルソースをそのままコピって
動作させても同じようなエラーがでます。
セッション関数を使う為の、基本的な部分が抜けてしまっているかも
しれません。
PHPの書き方も間違っているような気がするのですが
上記エラーで指定されている58行目にあたる文が
session_start(); であり、何が原因なのかわかりません。
ソース抜粋----------------------------------
<form action="<?php echo ( $_server [ "PHP_SELF" ] ) ?>" method="POST">
品番:<input name="test" type="text" size="30">
<input type="submit" value="検索">
<?php
$addressdata = LoadCsvFile ( "goods_data.csv");
if ( $addressdata == false ) {
echo ( "データはありません" );
} else {
?>
</td>
<td>
<table border=0 cellpadding=5 cellspacing=1 >
<?php
session_start(); --------------------->58行目
session_register("line[ 0 ]" );
session_register("line[ 1 ]" );
for ( $i = 0; $i < sizeof ( $addressdata ); $i++ ) {
if($_POST["test"]==""){break;}
$line = explode( ",", $addressdata[ $i ] );
$match = true;
if ( $_POST[ "test" ] !="" ) {
if ( ( strstr( $line[ 0 ], $_POST [ "test" ] ) != false) ||
( strstr( $line[ 1 ], $_POST [ "test" ] ) != false) ||
$match = true;
} else {
$match = false;
}
}
if ( $match == true ) {
?>
<tr>
<td bgcolor="#ffffff"><?php echo( $line [ 0 ] ) ?></td>
<td bgcolor="#ffffff"><?php echo( $line [ 1 ] ) ?></td>
</tr>
ここまで------------------------------
長文になり申し訳ありません。セッションに関する書籍などを見て、
おもいつくまま書いてしまったのですが、勉強不足なのだと思います。
もっと勉強してから扱う関数なのかもしれませんが、
少々急いでいる為質問いたしました。
宜しくお願いいたします。
PHP-users メーリングリストの案内