我制作了两个名字为的变量:
$strin = '<div id="div1">'.$strin.'</div>';
$strin2 = '<div id="div2">'.$strin2.'</div>';
在输出上我必须这样:
<div id="div1">HERE WHAT EVER I TYPED ON TEXT AREA 1</div>
但我只输出我在文本区域1上键入的单词而没有div,这意味着我没有得到变量中的内容。不确定有什么问题
对于文本区域2
这是我的PHP代码
<form method="post">
<label>File name:</label><br>
<input type='text' name='filename' placeholder='File name'>
<label>Folders:</label>
<select name="thisfolder">
<option value="">Default</option>
<option value="Folder1">Folder1</option>
<option value="Folder2">Folder2</option>
<option value="Folder3">Folder3</option>
</select><br><br>
<label>Text Area 1:</label><br>
<textarea type='text' name='strin' style="margin:0px;width:500px;height:200px;"></textarea><br><br>
<label>Text Area 2:</label><br>
<textarea type='text' name='strin2' style="margin:0px;width:500px;height:200px;"></textarea><br>
<input type='submit' value='Add'>
</form>
<script>
var textarea1 = document.querySelector('[name=strin]');
var textarea2 = document.querySelector('[name=strin2]');
textarea1.oninput = function () {
textarea2.value = '';
};
textarea2.oninput = function () {
textarea1.value = '';
};
</script>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
// the name of the file to create
$filename=$_POST['filename'];
// the name of the file to be in page created
$strin=$_POST['strin'];
// the name of the file to be in page created
$strin2=$_POST['strin2'];
// the name of the folder to put $filename in
$thisFolder = $_POST['thisfolder'];
// make sure #thisFolder of actually a folder
if (!is_dir(__DIR__.'/'.$thisFolder)) {
// if not, we need to make a new folder
mkdir(__DIR__.'/'.$thisFolder);
}
// . . . /[folder name]/page[file name].php
$myFile = __DIR__.'/'.$thisFolder. "/page" .$filename.".php";
// This is another way of writing an if statment
$iframe = ($strin !== '') ? $strin : $strin2;
$strin = '<div id="div1">'.$strin.'</div>';
$strin2 = '<div id="div2">'.$strin2.'</div>';
$fh = fopen($myFile, 'w');
$stringData = "
<div id=\"area_code\">
" .$iframe. "
</div>
";
fwrite($fh, $stringData);
fclose($fh);
}
?>
希望你明白这一点。
答案 0 :(得分:0)
你的问题在这里:
$iframe = ($strin !== '') ? $strin : $strin2;
$strin = '<div id="div1">'.$strin.'</div>';
$strin2 = '<div id="div2">'.$strin2.'</div>';
您将$strin
或$strin2
的值复制到$iframe
,然后修改$strin
和$strin2
,并且您希望以某种方式{{1}的值也更新了。
这不会发生。代码完全按照上面的说明执行。如果您之后在$iframe
中未添加其他值,则不会更改。
我不清楚你想要达到什么目标。我想你应该使用真实的$iframe
语句(不,if
不是写?:
语句的简短方法; if
是operator,不是statement)并将所需的值放入?:
:
$iframe
答案 1 :(得分:0)
代码过早地评估了$strin
和$strin2
的值。您需要更改以下代码:
// This is another way of writing an if statment
$iframe = ($strin !== '') ? $strin : $strin2;
$strin = '<div id="div1">'.$strin.'</div>';
$strin2 = '<div id="div2">'.$strin2.'</div>';
到此:
// This is another way of writing an if statment
$iframe = ($strin !== '') ? '<div id="div1">'.$strin.'</div>' : '<div id="div1">'.$strin2.'</div>';
在评估$strin
之前,$strin2
和$iframe
已得到适当更新