2009-01-14 13 views
5

सामान्य रूप से PHP और वेब विकास के लिए नया। मैं सबमिट करने के बाद किसी अन्य वेब पेज पर किसी तालिका में HTML फॉर्म से जानकारी प्राप्त करने का प्रयास कर रहा हूं। इसलिए मैंने अपाचे और फिर अपने स्थानीय पीसी पर PHP स्थापित किया और स्थानीय स्तर पर एक PHP स्क्रिप्ट का परीक्षण करने में सक्षम होने की उम्मीद की, हालांकि यह मेरी अपेक्षा की गई जानकारी को वापस नहीं लौटाता है।स्थानीय कंप्यूटर पर एक PHP स्क्रिप्ट का परीक्षण

<form method="post" action="showform.php"> 

Please fill out the following form if you would like to be contacted: <br/> 
    Name:<input type="text" name="name" /> <br/><br/> 
    Company: <input type="text" name="company"/> <br/><br/> 
    Phone: <input type="text" name="phone" /> <br/><br/> 
    Email: <input type="text" name="email" /> <br/><br/> 

    <input type="submit" name="Submit" value="Submit" /> 
</form> 

निम्नलिखित PHP स्क्रिप्ट के लिए कोड है::

<table> 
<tr><th>Field Name</th><th>Value(s)</th></tr> 

<?php 
if (empty($_POST)) { 
print "<p>No data was submitted.</p>"; 
} else { 

foreach ($_POST as $key => $value) { 
if (get_magic_quotes_gpc()) $value=stripslashes($value); 
if ($key=='extras') { 

if (is_array($_POST['extras'])){ 
    print "<tr><td><code>$key</code></td><td>"; 
    foreach ($_POST['extras'] as $value) { 
      print "<i>$value</i><br />"; 
      } 
      print "</td></tr>"; 
    } else { 
    print "<tr><td><code>$key</code></td><td><i>$value</i></td></tr>\n"; 
    } 
} else { 

print "<tr><td><code>$key</code></td><td><i>$value</i></td></tr>\n"; 
} 
} 
} 
?> 
</table> 
</body> 
</html> 

मैं यह काम करता है, जब इंटरनेट पर इस्तेमाल किया लेकिन कैसे यह नहीं है पता निम्नलिखित फार्म के लिए कोड है स्थानीय रूप से काम करते हैं। मैंने जांच की है कि apache और php सही ढंग से स्थापित हैं। मामला क्या हो सकता है? वर्तमान परिणाम उन तालिकाओं में $ कुंजी और $ मान वाली तालिका है जहां तालिका मानों के दूसरे शब्दों में सही मान होना चाहिए। आपकी मदद के लिए धन्यवाद।

अपडेट: अब काम कर रहे हैं WAMPSERVER- सभी की मदद करने वालों के लिए धन्यवाद!

+0

क्या PHP बिल्कुल संसाधित हो रहा है, या आपकी स्क्रिप्ट काम नहीं कर रही है जैसा आप उम्मीद करते हैं? सामग्री के साथ एक PHP फ़ाइल बनाने का प्रयास करें: strager

+0

परिणामस्वरूप PHP सेटअप के बारे में जानकारी का एक पृष्ठ लौटाया जा रहा है। स्थानीय स्तर पर परीक्षण किए जाने पर समस्या अलग-अलग वेब पेज पर तालिका में फॉर्म से मूल्य प्राप्त कर रही है। –

+0

आप किस PHP संस्करण का उपयोग कर रहे हैं? – strager

उत्तर

7

xampp देखें। यह आपकी मशीन पर अपाचे, माइस्क्ल, पर्ल और PHP स्थापित करता है ताकि आप स्थानीय रूप से अपनी संपूर्ण साइट का परीक्षण कर सकें। यह एक शॉट इंस्टॉलर है और आवश्यकतानुसार प्रत्येक सेवा को सक्षम/अक्षम करने के लिए निफ्टी कंट्रोल पैनल के साथ आता है।

0

लगता है कि आपकी PHP स्क्रिप्ट की तरह लगता है कि आपको सचमुच $value मिल रहा है। इसे जांचने के लिए मूल phpinfo() चलाने का प्रयास करें।

यदि PHP इसे नहीं उठाता है तो सुनिश्चित करें कि PHP का पथ httpd.conf में सेट है। मैं xampp का उपयोग कर reccommend हालांकि - मैं सभी स्थानीय विन्यास पर भयानक हूँ और बस ऑटो इंस्टॉलर इसे मेरे लिए सेट करने दें। मैं बाद में नए मॉड्यूल आदि जोड़ने के लिए पर्याप्त जानता हूँ।

-2

पहली नज़र में, ऐसा लगता है कि आप चर रखने की कोशिश कर रहे हैं, लेकिन आप एक स्ट्रिंग के अंदर चर डाल रहे हैं।

तो यह:

print "<tr><td><code>$key</code></td><td><i>$value</i></td></tr>\n"; 

होना चाहिए कुछ की तरह:

print "<tr><td><code>" . $key . "</code></td><td><i>" . $value . "</i></td></tr>\n"; 
+3

यह गलत है। यदि एक चर को डबल-उद्धृत स्ट्रिंग में देखा जाता है, तो यह स्ट्रिंग में डाला जाता है जैसा आप चाहते थे। यदि एकल-कोट का उपयोग किया गया था, तो स्ट्रिंग को विभाजित करने की आवश्यकता होगी जैसा आपने दिखाया है। – strager

3

तुम भी WampServer की कोशिश कर सकते।

यह एक पैकेज है जिसमें: अपाचे, MySQL, PHP (विंडोज़ में उपयोग के लिए पूर्व कॉन्फ़िगर किया गया)।

+0

धन्यवाद, मैं इसे वैंपसेवर के माध्यम से काम कर रहा हूं। बहुत सराहना की! –

0

एक सर्वर की कोई आवश्यकता नहीं है, तो 5.5 + PHP का उपयोग नहीं है - यह एक अंतर्निहित में सर्वर (http://www.php.net/manual/en/features.commandline.webserver.php)

बस का उपयोग करें:

$ सीडी ~/परियोजना

$ php -S लोकलहोस्ट: 8000

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