此問題已解決 - 請參閱下文!
一次偶然的機會我發現了這個問題... 的開始和結束我的HTML表單:
<form name="personform" id="personform" action="testperson.php" method="post" target="_blank">
<input type="hidden" id="formPmall" name = "formPmall" value = "">
<input type="hidden" id="formPCSEsiteHeading" name = "formPCSEsiteHeading" value = "">
<input type="hidden" id="formPCSEsiteHeadingText" name = "formPCSEsiteHeadingText" value = "">
<input type="hidden" id="formPCSEsiteHeadingShadow" name = "formPCSEsiteHeadingShadow" value = "">
<!-- skipping to end of form -->
<input type="hidden" id="formPok" name = "formPok" value = "">
</form>
這就是我所說的設定值和提交表單的功能:
function testaPerson() {
document.getElementById("formPmall").value = vilkenMall;
document.getElementById("formPCSEsiteHeading").value = fAktuellSajtrubrik;
document.getElementById("formPCSEsiteHeadingText").value = CSEsiteHeadingText;
document.getElementById("formPCSEsiteHeadingShadow").value = CSEsiteHeadingShadow;
/* Skipping to end of function */
document.getElementById("formPok").value = "ok";
// SUBMIT
document.getElementById("personform").submit();
}
功能工程,我可以把JS警報()這樣的權利之前提交:
alert("PM = *"+document.getElementById("formPmall").value+"*");
,我得到了正確答案(「」不是「**」爲空)。 這適用於每個表單輸入。
的形式到達 「testperson.php」:
<?php
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
if (!isset($_POST['formPok'])) header('Location: ../index.php');
// Init variables
$mall = 0;
$CSEsiteHeading = "#FF00FF";
$CSEsiteHeadingText = "";
$CSEsiteHeadingShadow = "";
// Skipping 60+ variable inits
// Read the form
$mall = $_POST['formPmall'];
$CSEsiteHeading = $_POST['formPCSEsiteHeading'];
$CSEsiteHeadingText = $_POST['formPCSEsiteHeadingText'];
$CSEsiteHeadingShadow = $_POST['formPCSEsiteHeadingShadow'];
// Skipping the rest...
指數[ 'formPok']設置,因爲我不會去 「的index.php」。
變量具有值,因爲我可以把一個PHP死();像這樣在他們之後:
die("PM = *".$mall."*");
,我得到正確的答案(「‘ - 不是’」爲初始化或‘**’爲空) 這對每一個PHP工作正常變量。
最後一頁也顯示正常。
但是! 我得到這個在php_error.log:
[29-Oct-2013 13:30:01 UTC] PHP Notice: Undefined index: formPmall in /Applications/MAMP/htdocs/tngcse/template4/testperson.php on line 27
[29-Oct-2013 13:30:01 UTC] PHP Notice: Undefined index: formPCSEsiteHeading in /Applications/MAMP/htdocs/tngcse/template4/testperson.php on line 29
[29-Oct-2013 13:30:01 UTC] PHP Notice: Undefined index: formPCSEsiteHeadingText in /Applications/MAMP/htdocs/tngcse/template4/testperson.php on line 30
[29-Oct-2013 13:30:01 UTC] PHP Notice: Undefined index: formPCSEsiteHeadingShadow in /Applications/MAMP/htdocs/tngcse/template4/testperson.php on line 31
對於每一個貼價值!每次超過60!並且頁面重複打開。
更多的事實: * HTML表單和JS函數是兩個包含。 *的PHP變量inits和形式的閱讀是兩個包括(我編輯到頁面此測試)
- 我有四頁,其中包括這些沒有得到任何通知PHP在所有的作品!
- 三和所有60點以上形式的輸入是「未定義」 ...
我有四頁,以使,不希望我解決這個問題之前,繼續說下去。 我不知道這裏有什麼問題,需要你想出任何想法。 EXCEPT抑制PHP聲明... (這裏有一個錯誤,需要用正確的方式處理)
謝謝你在前進, 艾娃T.
增加對淨度: 通過對PHP頁面,並顯示在最後一頁上未來的值是:
formPmall: 4 (PHP init = 0)
formPCSEsiteHeading: #FF0000 (PHP init = #FF00FF)
formPCSEsiteHeadingText: "My Family" (PHP init = "")
formPCSEsiteHeadingShadow: "2px 2px 4px #000000" (PHP init = "")
一切都被初始化,一切都得到新的價值。 但由於某種原因,它會填充錯誤日誌。爲什麼?
我不能回答我的問題(8個小時的限制),所以我在這裏編輯:
問題就解決了!
解決方案對我來說比通知更奇怪(對我而言)。這就是我所做的:
我拿走了所有的代碼,並逐個添加了PHP腳本,併爲每個腳本運行一次。一切都很好:PHP代碼本身並沒有產生任何通知。所以我添加了兩個CSS包含的HTML頭:一個通用,一個修改其中一些通用。
沒有聲明:一切都很好,所以我一塊一塊地添加了HTML,發現一個類在引用到HTML中時是「罪魁禍首」!
類被宣佈像這樣(修改一般一個:不同的顏色和無背景圖像)
.line {
color: #FF0000;
background-image: url('');
}
的解決方案是聲明它是這樣的(完全正確的 - 不馬虎切正糊) :
.line {
color: #FF0000;
background-image: none;
}
每一個通知(發送到這個頁面的每個值 - 60+)都沒有了!
請注意,直到它被引用到HTML中,PHP通知纔出現!
<td class="line">This is my line</td>
我希望這可以幫助別人,因爲我發現很多關於PHP通知的帖子,其中唯一的解決方案是關閉通知。而沒有一個真正的解決方案。
感謝大家花時間閱讀和回覆!
艾娃
爲什麼?在我閱讀的帖子中(每個人都建議),這個特定的問題,當它被問到時,並沒有以壓制PHP消息的方式解決。這不是一個解決方案。 – Ava
歡迎來到[so]。請等待,如果你已經解決了你自己的答案 - 即使你還不能回答,只需等待。 :) –