php - php 和 Mysql 中的警报?

标签 php html mysql database

我使用的代码是用户使用用户名和密码进行连接,我想要做的是,一旦他登录,他将看到一条警告消息,其中显示:

“欢迎+用户名+”

我尝试过以这种方式做到这一点,但这是不可能的:

<?php  if (isset($_SESSION['username'])) : ?>
    <script> alert ("Welcome" . <?php echo $_SESSION['username']; ?>)</script>

警报出现,但不是我想要的消息,而是“未定义”

但是,如果我不发出警报,而只发出带有相应用户名的消息,则显示是正确的:

    <?php  if (isset($_SESSION['username'])) : ?>
    <p>Welcome <strong><?php echo $_SESSION['username']; ?></strong></p>

你能帮我吗?

谢谢

最佳答案

您正在使用PHP concatenation operator在 JavaScript 中,您应该直接在欢迎字符串中写入用户名字符串:

<script> alert("Welcome <?php echo $_SESSION['username']; ?>")</script>

要在 JavaScript 中连接字符串,您应该使用 +,但这对您的情况没有用。
另请注意,这不会受到保护,您应该清理用户名以防止 XSS 攻击。

关于php - php 和 Mysql 中的警报?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51629140/

相关文章:

html - 如何在html中缩放图像的一部分?

html - 我可以创建没有对 Angular 线的边框底部吗?

javascript - 在 HTML/PHP 文件中访问 SQLite3 数据库?

mysql - CloudSQL 只读副本 - 无法执行停止从属、跳过命令

php - 如何获取静态类中包含文件中的变量

php - FILTER_VALIDATE_URL 的 FILTER_FLAG_SCHEME_REQUIRED 和 FILTER_FLAG_HOST_REQUIRED 标志有什么用?

Mysql:如何在我的 LOAD DATA INFILE 查询中使用 RTRIM?

php - mysql选择大于3个月的记录

php - 根据mysql中特定列数据过滤数据

php - 如何使用 JSEDITABLE 获取 $_REQUEST ['id' ] 等字段