以下代码是我正在使用的代码:
<form action="sendinfo.php" method="post" id="form">
-Title:<br>
<input type="text" class="u-full-width" name="title" placeholder="Insert a title" >
<br>-Date<br>
<input class="u-full-width" type="text" name="date" placeholder="Click to add a date"><hr>
<br>-Buildyear:<br>
<input class="u-full-width" type="text" name="buildyear" placeholder="click to add buildyear">
<br>-rebuild<br>
<input id="1" type="radio" name="rebuildyes" value="yes"><label for="1">tes</label>
<input id="2" type="radio" name="rebuildno" value="No"><label for="2">No</label><hr>
<input type="submit" value="send" class="u-full-width">
</form>
其他代码是:
<?php
//variables
$title = $_POST['title'];
$date = $_POST['date'];
$buildyear = $_POST['buildyear'];
$rebuildyes = $_POST['rebuildyes'];
$rebuildno = $_POST['rebuildno'];
//in browser
echo "<h1>The inserted data has been locally stored as " . $title . " " . $date . ".txt</h1>";
echo "<p>click <a href='index.html'>Here</a> to return to the previous screen</p>";
//write text file.
$file = fopen($title . " " . $date . ".txt","w");
if ($date) fwrite($file, "Date: " . $date . "\r\n");
fwrite($file, "\r\n");
if ($buildyear) fwrite($file, "Buildyear: " . $buildyear . "\r\n");
if ($rebuildyes) fwrite($file, "Rebuild? " . $rebuildyes . "\r\n");
if ($rebuildno) fwrite($file, "Rebuild? " . $rebuildno . "\r\n");
?>
此代码的结果是生成的文本文件,其中的数据以第一页上给出的格式填写。这里的问题是我无法使单选按钮工作,至少我无法从中获取数据。当它们为空时,不应该在文件中写下来,当它们被选中时应该是。
另外,请不要告诉我这是一种编码PHP的危险方式,因为我知道它可以让用户访问写入PHP访问的地方,但是这个&#34;项目&#34;只有少数人可以访问,并且实际上不会被托管服务器。话虽如此,如果你有更好的方法来构建这个项目,不是风险明智,只是PHP明智,请告诉我,因为我刚刚开始编写PHP。
由于
答案 0 :(得分:1)
<input type="radio" name="rebuild" value="yes"><label>Yes</label>
<input type="radio" name="rebuild" value="No"><label>No</label>
and get the value using
if(isset($_POST['submit'])){
echo $rebuild = $_POST['rebuild'];
die;
}
答案 1 :(得分:1)
这是我测试过的代码,文件写得正确,并且&#34;重建&#34;也是对的:
<form action="sendinfo.php" method="post" id="form">
-Title:<br>
<input type="text" class="u-full-width" name="title" placeholder="Insert a title" >
<br>-Date<br>
<input class="u-full-width" type="text" name="date" placeholder="Click to add a date"><hr>
<br>-Buildyear:<br>
<input class="u-full-width" type="text" name="buildyear" placeholder="click to add buildyear">
<br>-rebuild<br>
<input id="1" type="radio" name="rebuild" value="yes"><label for="1">Yes</label>
<input id="2" type="radio" name="rebuild" value="no"><label for="2">No</label><hr>
<input type="submit" value="send" class="u-full-width">
</form>
PHP:
<?php
//variables
$title = $_POST['title'];
$date = $_POST['date'];
$buildyear = $_POST['buildyear'];
//in browser
echo "<h1>The inserted data has been locally stored as " . $title . " " . $date . ".txt</h1>";
echo "<p>click <a href='index.html'>Here</a> to return to the previous screen</p>";
//write text file.
$file = fopen($title . " " . $date . ".txt","w");
if ($date) fwrite($file, "Date: " . $date . "\r\n");
fwrite($file, "\r\n");
if ($buildyear) fwrite($file, "Buildyear: " . $buildyear . "\r\n");
if (isset($_POST['rebuild']) && $_POST['rebuild'] == 'yes') {
fwrite($file, "rebuild? yes \r\n");
}
elseif (isset($_POST['rebuild']) && $_POST['rebuild'] == 'no') {
fwrite($file, "rebuild? no \r\n");
}
fclose($file);
?>
答案 2 :(得分:0)
将您的单选按钮设为一个组:
<input id="1" type="radio" name="rebuild" value="yes"><label for="1">tes</label>
<input id="2" type="radio" name="rebuild" value="no"><label for="2">No</label><hr>
然后,检查用户是否选择了“是”值:
if (isset($_POST['rebuild']) && $_POST['rebuild'] == 'yes') {
// YOUR CODE
}