2010-06-17 62 views
0

我在Wordpress中创建了一个页面(http://www.exam-vision.com/testmail),该页面将POST数据发送到自身以发送电子邮件。代码如下所示。虽然看起来数据是正确发送的,但是由于isset($ _REQUEST ['email'])总是为false,所以似乎没有收到数据。任何人都可以帮忙?在php页面中未收到发布数据的问题

UPDATE:现在看来,这已经是与WordPress URL地址的管理,因为它工作正常,当我尝试它的PHP文件的直接链接:

http://www.exam-vision.com/wp-content/themes/sandbox/test.php

感谢

七月

<?php 
if (isset($_REQUEST['email'])) 
//if "email" is filled out, send email 
    { 
    //send email 
    echo "isset email is true"; 
    $email = $_REQUEST['email'] ; 
    $subject = $_REQUEST['subject'] ; 
    $message = $_REQUEST['message'] ; 
    mail("[email protected]", "Subject: $subject", 
    $message, "From: $email"); 
    echo "Thank you for using our mail form"; 
    } 
else 
//if "email" is not filled out, display the form 
    { 
    echo "<form method='post' action=''> 
    Email: <input name='email' type='text' /><br /> 
    Subject: <input name='subject' type='text' /><br /> 
    Message:<br /> 
    <textarea name='message' rows='15' cols='40'> 
    </textarea><br /> 
    <input type='submit' /> 
    </form>"; 
    } 
?> 
+0

执行var_dump($ _ REQUEST)并将结果返回。什么事情都能通过? – 2010-06-17 15:52:08

+0

没什么,我现在在页面上做了一个回声,它没有发布数据... – jul 2010-06-17 16:00:00

+0

尝试var_dump($ _ POST):/ – 2010-06-17 16:15:03

回答

0

动作要action="<?php echo $_SERVER['PHP_SELF']; ?>,然后在脚本的开始运行像一个测试:

if(!empty($_POST)){/*run code*/} 
+0

<?php echo $ _SERVER ['PHP_SELF']; ?>返回“/wp-404-handler.php”... – jul 2010-06-17 16:00:47