【问题标题】:session management in php [duplicate]php中的会话管理[重复]
【发布时间】:2012-12-03 18:05:47
【问题描述】:

可能重复:
Syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in PHP

您好,我正在尝试在 php 中设计一个网页来实现登录和注销等会话和概念。以下是我的基本代码。

<?php    
session_start();    
$host = "localhost";    
$username = "USERNAME";    
$password = "PASSWORD";    
$db = "test";    
@mysql_connect($host,$username,$password) or die ("error");    
@mysql_select_db($db) or die("error");    
?> 

我在第 3 行收到了一个意外_T_CONSTANT_ENCAPSED_STRING 错误。请帮助删除此错误。SOL 注入有什么问题吗?

【问题讨论】:

  • 您尝试过使用框架吗?您不应该编写自己的登录代码;安全风险太大
  • 您还应该使用mysqli 函数,而不是旧的已弃用的mysql
  • 你可能不是escaping你的字符串正确..
  • 我应该使用转义序列吗?

标签: php mysql session sql-injection


【解决方案1】:

首先你应该停止使用MYSQL 扩展,因为它很快就会被弃用。相反,您应该寻找其他更丰富、更安全的替代方案,例如 MySQLiPDO_MySQL

查看mysql_real_escape_string

如上页所示:

This extension is deprecated as of PHP 5.5.0, and will be removed in the future. Instead, the MySQLi or PDO_MySQL extension should be

使用过。另请参阅 MySQL:选择 API 指南和相关的常见问题解答以了解更多信息 信息。此功能的替代方案包括:

    mysqli_real_escape_string()
    PDO::quote()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-04-29
    • 2013-03-27
    • 1970-01-01
    • 1970-01-01
    • 2013-05-17
    • 1970-01-01
    • 2016-01-03
    • 1970-01-01
    相关资源
    最近更新 更多