我的PHP文件将无法在网站的根文件夹中工作。如果它在另一个文件夹里,不管它叫什么,它都能工作。但它在根文件夹中不起作用。这是一张白纸。
它是一个简单的联系人表单(contact.html),带有一个contact.php
文件来处理表单。我总是把它们放在同一个文件夹里。
Contact.php文件:
<?php
$subject = $_POST['sub'];
$name = $_POST['name'];
$from = $_POST['email'];
$message = $_POST['msg'];
$to = "stackoverflow@gmail.com";
$send_email = mail($to,$subject,$message);
if($send_email){
echo "Your message is successfully sent!!!";
}
else{
echo "Error in sending contact email!!!";
}
?>
添加contact.html:
<html>
<body>
<table>
<form name="contact_form" method="post" action="contact.php">
<tr>
<td><b>PHP Contact Form</b></td>
</tr>
<tr>
<td>Subject</td>
<td><input name="sub" id="sub" type="text" size="75"></td>
</tr>
<tr>
<td>Name:</td>
<td><input name="name" id="name" type="text"></td>
</tr>
<tr>
<td>Email</td>
<td><input name="email" id="email" type="text"></td>
</tr>
<tr>
<td>Message</td>
<td><textarea name="msg" cols="60" rows="5" id="msg"></textarea></td>
</tr>
<tr>
<td><input type="submit" name="Submit" value="Submit">
</tr>
</form>
</table>
</body>
</html>
。htaccess
# Use PHP5 Single php.ini as default
AddHandler application/x-httpd-php5s .php
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index'.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
# BEGIN WordPress
<IfModule mod_rewrite.c>
# Adaptive-Images ------------------------------------------------------------------ -----------------
# Add any directories you wish to omit from the Adaptive-Images process on a new line, as follows:
# RewriteCond %{REQUEST_URI} !some-directory
# RewriteCond %{REQUEST_URI} !another-directory
RewriteCond %{REQUEST_URI} !assets
# Send any GIF, JPG, or PNG request that IS NOT stored inside one of the above directories
# to adaptive-images.php so we can select appropriately sized versions
RewriteRule '.(?:jpe?g|gif|png)$ adaptive-images.php
# END Adaptive-Images -------------------------------------------------------------------------------
RewriteEngine On
RewriteBase /
RewriteRule ^index'.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
您可能在action
中犯了错误,如果表单。请尝试给出访问该文件的完整URL。
1。创建一个页面名称contact并放置如下操作:
<form name="contact_form" method="post" action="/contact">
它会把你重定向到联系人页面。
或
2。你可以设置一个bloginfo的URL:
<form name="contact_form" method="post" action="<?php bloginfo('template_url')?>/contact.php">
注意:不要忘记大写 global $wpdb;
和global $post;
我有同样的问题,只有当我移动contact.php在另一个文件夹比根,例如:contact/contact.php和重制链接解决再见