ajaxを使用してデータを送信する2つのフォームがあります。どちらのフォームにも独自のスクリプトがあり$_POST[]
、別々のスクリプトで同じ変数にアクセスできると思いましたが、これは機能していません。私が使用してみましたsession_start()
し、include_once
そして変数はスクリプトからスクリプトに渡していない理由を私は理解することはできません何らかの理由で。私は解決策を探して3日間そこにいたので、私が間違っていることを知っているか、代替案がある場合は、私に感謝を知らせてください。
javascript。
$('.test-input').load("test.php", {
'sendTo':sendTo,
'carrier':carrier,
'testSubmit':testSubmit
})
$('#error-display').load("textsms.php", {
'date':scheduleDate,
'firstname':firstName,
'number':number,
'message':message,
'time':time,
'service':service,
'submit':submit
})
test.php
if (isset($_POST['testSubmit'])) {
$sendTo = $_POST['sendTo'];
$carrier = $_POST['carrier'];
$sendToInvalid = false;
$testEmpty = false;
$sendTo = "";
if (!preg_match('/^\(?\b\d{3}[-.)\s]?\s?\d{3}[-.)\s]?\d{4}\b$/', $sendTo) and $sendTo !== '') {
$sendToInvalid = true;
} elseif (empty($sendTo) || empty($carrier)) {
$testEmpty = true;
} else {
$sendTo = preg_replace('/[-.()\s]/','',$sendTo).$carrier;
$_SESSION['sendTo'] = $sendTo;
}
}
$sendTo
以下のtextsms.phpに渡そうとしています。
else {
include 'test.php';
$sendTo = $_SESSION['sendTo'];
$number = preg_replace('/[-.()\s]/','',$number);
$number = "(".substr($number,0,3).") ".substr($number,3,3)."-".substr($number,6,4);
if ($sendTo !== "[email protected]") {
$header = $name."\r\n#: ".$number;
$sendMsg = $userMsg."\r\nOn: ".$date.$time."\r\nService: ".$service;
//mail($sendTo, "You win!", $sendMsg, $header);
echo $sendTo;
echo "it worked";
}
もちろん、ajaxを初期化するページに、内部にある「header.php」ファイルを含めますsession_start()
。include_once('header.php')
test.phpでも同様です。それはトリックを行う必要があります。
最近は良い習慣ではありません。Cookieを使用してにアクセスすることをお勧めします$_COOKIE
。さらに良いことに、このようなCookieを処理するライブラリを使用してください。JQueryには非常に優れたCookie管理もあります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加