dポイントプレゼントキャンペーン実施中!

formdb_search.php
一覧表示させるphpです。
echo "<TR>\n";
echo "<FORM method=\"post\"action=\"./formdb_modify.php\">\n";
echo "<INPUT type=\"hidden\" name=\"data_no\" value=\"".$data_array[0]." \">\n";
echo "<TD nowrap><INPUT type=\"submit\" value=\" 詳細\"></TD>\n";
echo "<TD nowrap>" . $data_array[0] . "</TD>\n";
echo "<TD nowrap>" . $data_array[1] . "</TD>\n";
echo "<TD nowrap>" . $data_array[2] . "</TD>\n";
echo "<TD nowrap>" . $data_array[3] . "</TD>\n";
echo "<TD nowrap>" . $data_array[4] . "</TD>\n";
echo "<TD nowrap>" . $data_array[5] . "</TD>\n";
echo "<TD nowrap>" . $data_array[6] . "</TD>\n";
echo "</FORM>\n";
echo "</TR>\n";

//データ表示件数を1加算
$data_view++;
}
?>

<TR>
<TH nowrap>詳細</TH>
<TH nowrap>No.</TH>
<TH nowrap>公開日</TH>
<TH nowrap>求人の概要</TH>
<TH nowrap>業界</TH>
<TH nowrap>規模</TH>
<TH nowrap>上場区分</TH>
<TH nowrap>募集職種</TH>
</TR>
</TABLE>

formdb_modifyのphpで、詳細を選択したNo.を表示するPGです。
// データファイルから1行ずつ配列として読込み
$data_all = file("../../db/csv/maillog.csv");

//データ取得処理
for($i=1; $i < count($data_all);$i++){
// データを以下の配列として取得
// $data_array[0] - No.
// $data_array[1] - 公開日
// $data_array[2] - 求人の概要
// $data_array[3] - 業界
// $data_array[4] - 規模
// $data_array[5] - 上場区分
// $data_array[6] - 募集職種
$data_array = explode(",",$data_all[$i]);
$data_no = $_POST['data_no'];

if($data_no == $data_no){
$kyujin=$data_array[0];
$koukai=$data_array[1];
$gaiyou=$data_array[2];
$gyoukai=$data_array[3];
$kibo=$data_array[4];
$kubun=$data_array[5];
$shokushu=$data_array[6];
$poji=$data_array[7];
$nenrei=$data_array[8];
$seibetsu=$data_array[9];
}
}
?>
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=SHIFT_JIS">
<TITLE>データ詳細</TITLE>
</HEAD>
<BODY>

<DIV align="center">
<H1>データ詳細 No.<?php echo $_POST['data_no'] ?></H1>
<A href="./mail.html">求人案件情報登録へ</A>
<A href="./formdb_search.php">求人案件一覧へ</A>

<FORM method="post" action="<?php echo $PHP_SELF ?>">
<INPUT type="hidden" name="set" value="modify">
<INPUT type="hidden" name="data_no" value="<?php echo $data_no ?>">
<?php>
$data_no = 0;
?>
<TABLE align="center" cellpadding="10">

<TR align="left">
<TD>求人No.</TD>
<TD><INPUT type="text" name="kyujin" size="20" value="<?php echo $kyujin ?>"></TD>
</TR>
何故かどのNo.の詳細を選択しても同じNo.の詳細データが表示されてしまうのですが...
教えて下さい。

「Noのデータ受け渡しで同じNoが表示され」の質問画像

A 回答 (2件)

> NO,だけは、1 or 2 or 3って読まれるんですが


これは、
echo $_POST['data_no'] のところだけですか?
それとも、echo $kyujin のところも出るということですか?

前者だけは動いているということなら、
$kyujin、$koukai等をセットする部分がfunctionになっていて、変数のスコープが届いていないということはないですか?
また、formdb_modify.phpでのファイル名の記述ミスで実際はファイルが読み込めてないということはないですか?
(単体プログラム毎にファイルを読めているかのかの確認はされていますか)


それと、
for($i=1; $i < count($data_all);$i++){
では、1行目だけが取り出せないので、開始は
$i=1ではなく、$i=0です。


といった具合に、疑えばきりがないので、
問題を切り分けするためにデバック用のprintやprint_r文をいれたり、
エラー出力をONにするといった、
デバックのテクニックをまずは、取得したほうがよいように思います。
    • good
    • 0
この回答へのお礼

いろいろ有難うございました。
formdb_search.php の data_no に スペースが付いている
formdb_modify.php で 同じ変数(data_no)を比較している
以上で...
出来上がりました。

いろんなところデバックすればいいのですね
本当に有難うございました。

お礼日時:2009/04/28 21:43

if($data_no == $data_no){


では、どの行でも真になりますね。
    • good
    • 0
この回答へのお礼

ありがとうございます。
if($data_array[0] == $data_no){
にすると
全然、表示されなくなってしまうんですよね

NO,だけは、1 or 2 or 3って読まれるんですが
後のデータが表示されないんです。
どうしてでしょうか?

お礼日時:2009/04/28 17:01

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