我正在尝试从 php 类中显示 Bootstrap 警报。我使用 echo 来使用 HTML 标签。但是,警报显示在页面的底部,因此如何在标题下方显示警报。
public function insert($userName,$email,$phone,$choise) {
$dhandller = "SELECT `email`, `phone` FROM `info` WHERE email = '$email' OR phone = '$phone' ";
$statements = $this->_dbHandle->prepare($dhandller);
$statements->execute();
if ($statements->fetch() >= 1){
echo "<div class='alert alert-danger' style='margin-top: 50px;'>";
echo "<strong>Danger!</strong> Your contact deatails are existsed";
echo "</div>";
}}
最佳答案
你不应该是echo
从您处理数据库的类内部读取 HTML - 该类的工作只是处理与数据库相关的功能,而不是信息的显示。
你可以返回 false
来自你的insert
方法,如果该用户的行已经存在,然后从处理显示网页的应用程序的不同部分输出 HTML 代码。
一种类似但略有不同的方法是抛出一个 exception .这可能会在调用 insert
的代码中被捕获方法,然后可以输出一些 HTML。
像这样的东西会起作用:
try {
$user->insert($userName, $email, $phone, $choise);
} catch (\Exception $e) {
// Add or output the error message where the rest of your HTML lives.
}
您可以通过创建一个从 PHP 扩展的类来创建自己的异常 \Exception
类(class)。这样可以更轻松地捕获您感兴趣的异常。
您需要在您希望消息在页面上显示的位置输出 HTML。这就是为什么最好将使用数据库和输出 HTML 分开的原因之一。
最后一点,您需要小心清理用户提供的将在 SQL 语句中使用的数据。人们可以输入这些值的方式允许他们在您的数据库中执行您不想允许的查询。这称为 SQL 注入(inject)。 enter link description here由于您已经在使用 PDO,这是一个好主意,请查看如何使用 parameter binding 安全地执行此操作。 .
关于php - 如何从 php 类中设置 Bootstrap 元素的样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33786816/