2011-12-15 16 views
5

संदर्भित करने के बाद पोस्टबैक के बाद तोड़ दिया गया। मैंने सोचा कि मैं इसे देखने के लिए वहां फेंक दूंगा कि किसी ने इस मुद्दे का अनुभव किया है और किसी कारण को उनके सिर के शीर्ष पर बंद कर दिया गया है।इंटरनेट एक्सप्लोरर सीएसएस शैलियों को पीएचपी पेज

मेरे पास एक PHP पृष्ठ है जो एक ईडीआईटी लिंक के साथ डेटा की एक तालिका (PHP में निर्मित) लोड करता है जो प्रत्येक रिकॉर्ड पर प्रतिबिंबित हो जाता है। लिंक आपको एक उपयोगकर्ता आईडी के साथ एक संपादन पृष्ठ पर ले जाता है और संपादन पृष्ठ में यूआरएल के पैरामीटर के रूप में जोड़ा गया रिकॉर्ड आईडी। एक बार संपादन पूर्ण हो जाने पर और उपयोगकर्ता परिवर्तन सबमिट कर लेता है, तो उन्हें उस पृष्ठ पर वापस ले जाया जाता है जो रिकॉर्ड की डेटा तालिका दिखाता है। सबकुछ सफलतापूर्वक काम करता है सिवाय इसके कि जब वे रेफरिंग पेज पर वापस लौटे जाते हैं, तो डीआईवी अब अच्छी तरह से केंद्रित होने के बजाए बाईं तरफ चले गए हैं क्योंकि पेज पहले लोड होने पर थे। साथ ही, यह स्पष्ट है कि वापसी की यात्रा में कुछ अन्य शैलियों को भी खो दिया गया है। यह केवल आईई (आईई 9 का उपयोग करके) में होता है, और एफएफ या क्रोम में नहीं।

मैंने समस्या को हल करने और संकुचित करने के लिए फिडलर और डब्ल्यू 3 सी वैधकर्ता का उपयोग किया है, लेकिन मेरा आंत मुझे बता रहा है कि यह आईई कैश कैसे करता है, या यह एक मूर्खतापूर्ण PHP मुद्दा पोस्टिंग सामग्री को पहले पृष्ठ में वापस ले रहा है शैलियों को लागू किया जाता है।

कोई विचार ??

धन्यवाद!


हल:

GolezTrol के लिए धन्यवाद प्रारंभिक सलाह है कि मुझे सही दिशा में नेतृत्व के लिए!

मैंने HTML पर एक नज़र डाली और दस्तावेज़ के शीर्ष पर जवाब सही पाया।

पेजए.एफ़पी लोड होने पर यह काम करता है, HTML और शैलियों को ठीक से लोड किया जाता है और पृष्ठ में कोई त्रुटि नहीं होती है। जब आपने डेटा तालिका में एक ईडीआईटी लिंक पर क्लिक किया, तो यह आपको पेजबी.एफपी पर ले गया जहां जानकारी संपादित की जा सकती है और डेटाबेस पर वापस सबमिट की जा सकती है, जिस बिंदु पर आपको अपडेटेड टेबल देखने के लिए पेजए.एफ़.पी. पर रीडायरेक्ट किया गया था। जब पेजए.एफ़पी फिर से लोड हो जाता है, तो पृष्ठ को तोड़ दिया गया था और मेरे डीआईवी को बाएं सीमा तक धकेल दिया गया था, और कुछ शैलियों को खो दिया गया था।

त्रुटि जावास्क्रिप्ट अलर्ट के कारण हुई थी जो संदर्भ पृष्ठ बी से वापस आने पर पोस्ट करता है जो आपको डेटाबेस को अद्यतन करने की सुविधा देता है। PHP स्क्रिप्ट दस्तावेज़ में उस चेतावनी को इंजेक्शन दे रहा था जो DOCTYPE घोषणा और शेष HTML से पहले, इसलिए मेरा पृष्ठ उड़ा रहा था। इसे ठीक करने के लिए, मैंने प्रारंभिक अलर्ट को एक सच्चे/झूठे चर के साथ बदल दिया, और उसके बाद दस्तावेज़ के शरीर के अंदर PHP इंजेक्शन अलर्ट रखा। सब अब अच्छा है!

फ़ायरफ़ॉक्स और क्रोम ने त्रुटि को संभाला, लेकिन IE9 खराब प्रोग्रामर पर बहुत कठिन है। :-)

सभी त्वरित प्रतिक्रियाओं और सलाह के लिए धन्यवाद!

+2

क्या होगा यदि आप केवल स्रोत को देखते हैं और WinMerge जैसे टूल में पहले और बाद के संस्करणों की तुलना करते हैं? कि HTML मान्य है इसका मतलब यह नहीं है कि यह अच्छा है। या वही, उस मामले के लिए। – GolezTrol

+0

मैं WinMerge का प्रयास करूंगा (हालांकि मैंने पहले से ही नोटपैड ++ में ऐसा करने का प्रयास किया है)। मुझे लगता है कि आपसे मेरा प्रश्न है तो यह है: पृष्ठ पहले लोड पर सही तरीके से लोड क्यों होगा, लेकिन फिर किसी अन्य पृष्ठ से पोस्ट करते समय इसकी शैलियों को खराब कर दिया जाएगा? तेज प्रतिक्रिया के लिए धन्यवाद! – gtr1971

+0

मैं क्रोम में तत्व का निरीक्षण करता हूं। लेकिन Winmerge लगता है जैसे आप एक ही काम कर रहे हैं। यदि आप यूआरएल पोस्ट कर सकते हैं, डीबग की मदद के लिए बहुत आसान हो :) – albert

उत्तर

1

प्रारंभिक सलाह के लिए GolezTrol के लिए धन्यवाद जो मुझे सही दिशा में ले गया!

मैंने HTML पर एक नज़र डाली और दस्तावेज़ के शीर्ष पर जवाब सही पाया।

पेजए.एफ़पी लोड होने पर यह काम करता है, HTML और शैलियों को ठीक से लोड किया जाता है और पृष्ठ में कोई त्रुटि नहीं होती है। जब आपने डेटा तालिका में एक ईडीआईटी लिंक पर क्लिक किया, तो यह आपको पेजबी.एफपी पर ले गया जहां जानकारी संपादित की जा सकती है और डेटाबेस पर वापस सबमिट की जा सकती है, जिस बिंदु पर आपको अपडेटेड टेबल देखने के लिए पेजए.एफ़.पी. पर रीडायरेक्ट किया गया था। जब पेजए.एफ़पी फिर से लोड हो जाता है, तो पृष्ठ को तोड़ दिया गया था और मेरे डीआईवी को बाएं सीमा तक धकेल दिया गया था, और कुछ शैलियों को खो दिया गया था।

त्रुटि जावास्क्रिप्ट अलर्ट के कारण हुई थी जो संदर्भ पृष्ठ बी से वापस आने पर पोस्ट करता है जो आपको डेटाबेस को अद्यतन करने की सुविधा देता है। PHP स्क्रिप्ट दस्तावेज़ में उस चेतावनी को इंजेक्शन दे रहा था जो DOCTYPE घोषणा और शेष HTML से पहले, इसलिए मेरा पृष्ठ उड़ा रहा था। इसे ठीक करने के लिए, मैंने प्रारंभिक अलर्ट को एक सच्चे/झूठे चर के साथ बदल दिया, और उसके बाद दस्तावेज़ के शरीर के अंदर PHP इंजेक्शन अलर्ट रखा। सब अब अच्छा है!

फ़ायरफ़ॉक्स और क्रोम ने त्रुटि को संभाला, लेकिन IE9 खराब प्रोग्रामर पर बहुत कठिन है। :-)

सभी त्वरित प्रतिक्रियाओं और सलाह के लिए धन्यवाद!

संबंधित मुद्दे