1

だからこれはしばらくの間私を悩ませてきました、私は関数に保存した計算を別のページに渡したいです、私はフィールドエントリを問題なく渡すことができます(PHPでは申し訳ありません)が、どのように計算を渡すのですか?

//計算セクション(calculator.php)-これはすべてのページのインクルードです計算は、すべてのページのインクルードにあるユーザーエントリによって行われます

// thank-you.phpページは、ありがとうコメントを出力し、他のすべての情報を正常に受信した電子メールを送信しますが、関数は私の電子メールで実行されません。計算からの出力もincludeであるcalculator.phpに保存されますが、私の電子メールではなく、画面に正常に出力されます:(。

私は何かが足りないのですか?

申し訳ありませんが(編集)ここに私のコードがあります:

<?php
error_reporting(E_ALL);


if(isset($_POST['name']) && isset($_POST['to'])){

ini_set('date.timezone', 'Europe/Madrid');
$now = date("H:i");

$cutoff = "06:00";
$higherthan = "22:00";


    $name = $_REQUEST['name'];
$telephone = $_REQUEST['telephone'];
$from = $_REQUEST['from'];
$to = $_REQUEST['to'];
$date = $_REQUEST['date'];
$returndate = $_REQUEST['returndate'];
$people = $_REQUEST['people'];
$return = $_REQUEST['return'];
$myemail = $_REQUEST['myemail'];

include_once('includes/config.php');

$settingsSql = mysql_query("SELECT * FROM transfers_in WHERE location='$to' AND no_passengers='$people'");
$settings        = mysql_fetch_assoc($settingsSql);

echo "From: ".$from." To: ".$settings['location']."<br />";
echo "Number of passengers: ".$settings['no_passengers']."<br />";

ini_set('date.timezone', 'Europe/Madrid');
$now = date("H:i");

$cutoff = "06:00";
$higherthan = "22:00";

echo "Time cost: ".$settings['price']." euros<br /><hr />Total: ";



    function timeCost() {

        $to = $_REQUEST['to'];
        $people = $_REQUEST['people'];
        $return = $_REQUEST['return'];

        include_once('includes/config.php');

        $settingsSql = mysql_query("SELECT * FROM transfers_in WHERE location='$to' AND no_passengers='$people'");
        $settings        = mysql_fetch_assoc($settingsSql);

        //echo $return;

        if ($return == "No"){
            if ((strtotime($now) < strtotime($cutoff)) || (strtotime($now) > strtotime($higherthan))){
                echo number_format($settings['price']) + 1.40;
            } else {
                echo number_format($settings['price']) + 0.00;
            }
        } elseif ($return == "Yes") {
            if ((strtotime($now) < strtotime($cutoff)) || (strtotime($now) > strtotime($higherthan))){
                echo number_format($settings['price']) * 2 + 1.40;
            } else {
                echo number_format($settings['price']) * 2 + 0.00;
            }
        }

        echo " in euros<br /><br />";   
    }

    echo timeCost();


} else { ?>

<form method="POST" action="thank-you.php" name="chooseDateForm" id="chooseDateForm">
            <label>Name:</label>
            <input type="text" value="" name="name" />

            <label>Telephone:</label>
            <input type="text" value="" name="telephone" />

            <label>Email:</label>
            <input type="text" value="" name="myemail" />

            <label>From:</label>
            <select name="from">
                <option selected="selected">Malaga</option>
            </select>
            <div class="clr"></div>

            <label>To:</label>
            <select name="to">

<?php foreach ($data as $place => $price){
    echo "<option>{$place}</option>\n";
}
echo '</select>
            <div class="clr"></div>

            <label>Date:</label>
            <input type="text" value="dd/mm/yyyy" id="date" name="date" class="date-pick" />
            <span id="calendar"></span>

            <div id="return-journey">
                <label>Return Date:</label>
                <input type="text" value="dd/mm/yyyy" id="returndate" name="returndate" class="date-pick" />
                <span id="calendar"></span>
            </div>

            <label>Number of people:</label>
            <select id="people" name="people">
                <option value="4">4</option>
                <option value="6">6</option>
                <option value="8">8</option>
            </select>
            <div class="clr"></div>

            <div id="return">
                <label>Is this a return<br />journey?</label>
                <div class="clr"></div>
                <div id="radio-buttons">
                    <input type="radio" name="return" value="Yes" class="radio returning" />Yes<br />
                    <input type="radio" name="return" value="No" class="radio" checked />No
                </div>
            </div>
            <div class="clr"></div>

            <input type="submit" name="submit" class="fauxButton" />            

        </form>';
}
?>
4

1 に答える 1

5

セッションを使用している場合は、変数、結果、配列などをセッション変数に格納して、新しいページで取得できます。

session_start();
$_SESSION['test_var'] = 'Jake';

次に、新しいページに移動して変数を取得すると、次のようになります。

    session_start();
echo $_SESSION['test_var'] 
    // outputs 'Jake'
于 2012-04-17T18:37:43.197 に答える