目前我有一个包含以下代码的表单。
<form action="/wp-content/themes/wallstreet/welcome.php" method="post" class="basic-grey">
<h1>BasicForm
<span>Please fill all the texts in the fields.</span>
</h1>
<label>
<span>Your Nickname* :</span>
<input id="name" type="text" name="name" placeholder="It will appear in the file" />
</label>
<label>
<span>Your Email* :</span>
<input id="email" type="email" name="email" placeholder="Valid Email Address" />
</label>
<label>
<span>Message* :</span>
<textarea id="message" name="message" placeholder="The text that will appear in the file"></textarea>
</label>
<label>
<span>Code* :</span>
<input id="code" type="text" name="email" placeholder="The Code That we sent to your email" />
</label>
<label>
<span> </span>
<input type="submit" class="button" value="Send" />
</label>
</form>
并在同一目录中我有一个php文件welcome.php,代码如下(我希望这个表单写下&#34;消息&#34; ..
<?php
$var = $_POST['message'];
file_put_contents("/wp-content/themes/wallstreet/data.txt", $var . "\n", FILE_APPEND);
exit();
?>
是的,我在同一目录中有一个名为data.txt的文件。 所有这些文件都在同一个目录中,我真的不知道这个问题是什么,因为它什么也没写。我已经获得了data.txt的所有权限 也许我写错了路?一切都在主机中分配..
答案 0 :(得分:0)
问题似乎与data.txt
文件的路径有关。
从
改变file_put_contents("/wp-content/themes/wallstreet/data.txt", $var . "\n", FILE_APPEND);
到
file_put_contents("data.txt", $var . "\n", FILE_APPEND);
注意:您必须拥有写入文件的权限。
更新1
您可以放置文件的绝对路径。
file_put_contents( $_SERVER['DOCUMENT_ROOT']."/wp-content/themes/wallstreet/data.txt", $var . "\n", FILE_APPEND);
您还可以添加检查文件是否存在。
if( file_exists($_SERVER['DOCUMENT_ROOT']."/wp-content/themes/wallstreet/data.txt") )
{
file_put_contents( $_SERVER['DOCUMENT_ROOT']."/wp-content/themes/wallstreet/data.txt", $var . "\n", FILE_APPEND);
}
else
echo 'file does not exits';
答案 1 :(得分:0)
已解决,最后我使用了主帖中给出的相同代码,但是php中的目录是错误的,所以工作的php是
<?php
$var = $_POST['message'];
file_put_contents("/var/www/wordpress/wp-content/themes/wallstreet/data.txt", $var . "\n", FILE_APPEND);
exit();
?>