1

日、ステージ、timeShow、および bandName に分類されたチェックリストがあります。このスクリプトを使用してデータベースからオプションを表示しています。結果を「プロセス」ページのユーザーに表示しようとしています (最終的には電子メールで送信します)。$result_x を次のページに持ち越すにはどうすればよいですか? これは、土曜日のステージ 1 の「ブロック」の 1 つの例であり、選択の値は行の「ID」です。

更新 - パート 1 が解決されました。ユーザーが入力した電子メールアドレスに送信された結果を取得しようとしています。

フォーム ソリューション - 「Selection.php」

        $sql_Sat1 = "SELECT * FROM bandSched WHERE day='saturday' AND stage='stage 1'"; 
    mysql_query($sql_Sat1); 
    $result_Sat1 = mysql_query($sql_Sat1);

            while($row = mysql_fetch_array($result_Sat1))
            {
                echo "<ul><li>";
    echo'<input type="checkbox" name="id[]" value="'.$row['id'].' " id="bandSched_' . $row['id'] . '" />';
    echo '<label for="bandSched_' . $row['id'] . '">' . $row['timeShow']." ".$row['bandName'] . '</label>'; 
    echo "</li></ul>";

            }

解決策 - 「process.php」

        if ( ! empty($_POST['id']))
    { foreach($_POST['id'] as $key => $id) { $_POST['id'][$key] = mysql_real_escape_string($_POST['id'][$key]); } 
    $in = implode(', ', $_POST['id']); 
    $sql_Sat2 = "SELECT * FROM bandSched WHERE id IN ($in) ORDER BY FIELD(id, $in)"; 
    $result = mysql_query($sql_Sat2) or die('MySQL Error ' . mysql_errno() . ': ' . mysql_error()); 
    }
     if ( ! isset($result))
    {
    echo 'You did not select anything';
    }
    else
    {
    while ($row=mysql_fetch_assoc($result))
    {

    echo "<tr>";
    echo "<td>". $row['timeShow'] ."</td><td>" . $row['bandName'] . "</td>";
    echo "</tr>";
    }

    }
4

3 に答える 3

1

<input type = "checkbox"/>に属性checked="checked"がない限り、値はフォームデータとともに送信されません。

これを試して:

 echo '<input type="checkbox" value="' . $row['id'] .'"name="selected" checked="checked" />';

これで問題は解決しますか?

于 2012-05-20T00:41:26.430 に答える
0

ページからページへのデータの転送は、セッション、Cookie を使用するか、データを含む非表示のフォーム要素を投稿することで実行できます。

于 2012-05-19T22:53:43.220 に答える
0

セッションはデータを提供しますが、それでも有効なクエリを作成する必要があります。セッションが行う唯一のことは、サーバーにデータを保存することです。プログラムの実行、変数などは保持されません。

エラー メッセージは、mysql_fetch_array に MYSQL 結果リソースが提供されていないことを示しています (また、id 値の整数が提供されていません)。クエリは、セッション全体で記憶されません。

また、mysql_* は非推奨です。PDO または mysqli を使用してください。

于 2012-05-20T03:28:00.003 に答える