我正在创建一个移动登陆页面,我还创建了一个表单,允许我通过复制一个模板文件的主机文件夹来创建更多文件。然后,该脚本将您带到一个页面,您可以逐页输入公司详细信息并按提交。然后创建页面。
我的问题是,当遗漏某个字段时(例如YouTube),该按钮已创建并且为空白。我希望在没有文本时有默认文本。我已经尝试了一些东西,并且一直在努力使这个工作为DAYS!
<?php
$company = $_POST["company"];
$phone = $_POST["phone"];
$colour = $_POST["colour"];
$email = $_POST["email"];
$website = $_POST["website"];
$video = $_POST["video"];
?>
<div id="contact-area">
<form method="post" action="generate.php"><br>
<input type="text" name="company" placeholder="Company Name" /><br>
<input type="text" name="slogan" placeholder="Slogan" /><br>
<input class="color {required:false}" name="colour" placeholder="Company Colour"><br>
<input type="text" name="phone" placeholder="Phone Number" /><br>
<input type="text" name="email" placeholder="Email Address" /><br>
<input type="text" name="website" placeholder="Full Website - Include http://" /><br>
<input type="text" name="video" placeholder="Video URL" /><br>
<input type="submit" value="Generate QuickLinks" style="background:url(images/submit.png) repeat-x; color:#FFF"/>
</form>
那就是表格。它接受变量并将它们发布到下面的文件中。
<?php
$File = "includes/details.php";
$Handle = fopen($File, 'w');
?>
<?php
$File = "includes/details.php";
$Handle = fopen($File, 'w');
$Data = "<div id='logo'>
<h1 style='color:#$_POST[colour]'>$_POST[company]</h1>
<h2>$_POST[slogan]</h2>
</div>
<ul data-role='listview' data-inset='true' data-theme='b'>
<li style='background-color:#$_POST[colour]'><a href='tel:$_POST[phone]'>Phone Us</a></li>
<li style='background-color:#$_POST[colour]'><a href='mailto:$_POST[email]'>Email Us</a></li>
<li style='background-color:#$_POST[colour]'><a href='$_POST[website]'>View Full Website</a></li>
<li style='background-color:#$_POST[colour]'><a href='$_POST[video]'>Watch Us</a></li>
</ul>
\n";
fwrite($Handle, $Data);
fclose($Handle);
?>
并且表格变成了什么。我需要有一个默认链接,因为该字段留空,有时它是。先谢谢你们。
答案 0 :(得分:1)
对每个元素使用类似的东西:
$company = trim($_POST["company"]);
if (!isset($company) || empty($company)) {
$company = "Not filled in";
}
我添加了修剪以确保忽略空格
答案 1 :(得分:0)
对每个变量使用以下格式:
可以指定任何默认值的$ company =(isset($ _ POST [“company”])&amp;&amp;!empty($ _ POST [“company”]))? $ _POST [ “公司”]: “”;
“”。
答案 2 :(得分:0)
如果在函数中包含访问权限,通常更容易使用post变量:
function post($key, $default = '') {
if (!isset($_POST[$key])) return $default;
$value = trim($_POST[$key]);
if ($value == '')
return $default;
else
return $value;
}
您现在可以像这样分配变量:
$company = post('company');
$phone = post('phone', 'Not provided');
$colour = post('colour', 'blue');
... and so on...
答案 3 :(得分:-1)
您可以简单地将变量定义包装在以下代码中:
if (strlen($_POST["company"]) > 0) {
$company = $_POST["company"];
} else {
$company = "default company";
}
这将允许您指定一个默认值,如果存在,将由用户的数据覆盖。