PHP$\u会话问题

PHP$\u会话问题,php,mysql,database,session,Php,Mysql,Database,Session,我正在为我的网站制作一个登录页面。它也完成了[从不会发生的意义上完成,而不是从安全的意义上完成。]我在第30行收到一个错误,其中“$\u SESSION['username]=$username;”-“解析错误:语法错误,意外的T\u变量” 所有数据库信息都将被称为“db12345”以隐藏凭据。此外,该登录页面的唯一一点是使用名为“members”的数据库表将用户登录到站点,并将用户引导到带有一些链接的页面 <?php session_start(); $username = $_PO

我正在为我的网站制作一个登录页面。它也完成了[从不会发生的意义上完成,而不是从安全的意义上完成。]我在第30行收到一个错误,其中“$\u SESSION['username]=$username;”-“解析错误:语法错误,意外的T\u变量”

所有数据库信息都将被称为“db12345”以隐藏凭据。此外,该登录页面的唯一一点是使用名为“members”的数据库表将用户登录到站点,并将用户引导到带有一些链接的页面

<?php

session_start();

$username = $_POST ['username'];
$password = $_POST ['password'];

if ($username&&$password)
{
$connect = mysql_connect("localhost", "db12345", "db12345") or die("could not connect to mysql"); 
mysql_select_db("db12345") or die("could not connect to db");
}

$query = mysql_query("SELECT * FROM members WHERE username='$username'");

$numrows = mysql_num_rows($query);

if ($numrows!=0)
{

while  ($row = mysql_fetch_assoc($query))
{
$dbusername = $row['username'];
$dbpassword = $row['password'];
}

if ($username==$dbusername&&$password==$dbpassword)
{
echo ("you're in, click <a href="#">here</a> to enter your profile");
$_SESSION['username']=$username; 
}
else
{
echo ("please enter your username and password");
}

?>

在第30行上方的回音中,您正在双引号字符串中使用双引号

应该是这样的:

echo ("you're in, click <a href=\"#\">here</a> to enter your profile");
echo(“您已加入,请单击以输入您的个人资料”);

在第30行上方的回音中,您正在双引号字符串中使用双引号

应该是这样的:

echo ("you're in, click <a href=\"#\">here</a> to enter your profile");
echo(“您已加入,请单击以输入您的个人资料”);

您需要转义此行中的双引号:

echo(“您已加入,请单击以输入您的个人资料”)

应该是这样的:


echo(“您已加入,请单击以输入您的个人资料”)

您需要转义此行中的双引号:

echo(“您已加入,请单击以输入您的个人资料”)

应该是这样的:


echo(“您已加入,请单击以输入您的个人资料”)

上面的一行就是问题所在。在使用双引号作为包围分隔符的字符串中使用双引号。使用单引号换行(并转义其中的单引号),或使用双引号(并转义其中的双引号)。e、 g

//带转义双引号的双引号:
echo(“您已加入,请单击以输入您的个人资料”);
//单引号,带转义单引号
echo('您在,单击以输入您的个人资料');

有关更多示例,请参阅上的手册。

上面的一行就是问题所在。在使用双引号作为包围分隔符的字符串中使用双引号。使用单引号换行(并转义其中的单引号),或使用双引号(并转义其中的双引号)。e、 g

//带转义双引号的双引号:
echo(“您已加入,请单击以输入您的个人资料”);
//单引号,带转义单引号
echo('您在,单击以输入您的个人资料');

有关其他示例,请参阅上的手册。

第35行上还缺少一个右括号
}

第35行上也缺少一个右括号
}

对不起,您需要用斜杠将代码上的“”转义\

将代码中的此文本替换为:

echo ("you're in, click <a href=\"#\">here</a> to enter your profile");
echo(“您已加入,请单击以输入您的个人资料”);

抱歉,伙计,你需要用前斜杠在代码中的“”处转义\

将代码中的此文本替换为:

echo ("you're in, click <a href=\"#\">here</a> to enter your profile");
echo(“您已加入,请单击以输入您的个人资料”);

您需要转义文本<代码>回显“您已加入,请单击以输入您的个人资料”请查看SQL注入和密码哈希。您需要一个工具来检查代码。尝试记事本++第一…你需要转义文本<代码>回显“您已加入,请单击以输入您的个人资料”请查看SQL注入和密码哈希。您需要一个工具来检查代码。先试试记事本++吧……哈哈哈,你真的急着要把这篇文章发出去;)@rockerest:我在看一个关于我遇到的问题的问题,发现了这个问题,认为我可以帮上忙,然后有一个同事问了我一个问题,所以我试图找出答案并帮助我的同事;哎呀!(另外,今天早上我的手指没有咖啡了)如果($username=$dbusername&&$password=$dbpassword){echo('your'in,点击进入你的个人资料');$\u SESSION['username']=$username;}否则{echo(“请输入你的用户名和密码”);}-现在它在“$\u SESSION['username']=$username”行之后给我一个错误-Parse error:syntax error,意外的'}'@mattdb1234:if($numrows!=0){
条件从未关闭。它需要一个大括号来完成该条件。因此,我像这样关闭它,if($numrows!=0){}-我仍然在“doubelq utoes”中遇到这个错误你真的急着把这篇帖子发出去;)@rockerest:我在看一个问题,我遇到了一个问题,发现了这个问题,认为我可以帮忙,然后有一个同事问了我一个问题,所以我试图把答案拿出来,帮助我的同事。(哎呀!(另外,今天早上我的手指没有咖啡了)如果($username==$dbusername&&$password==$dbpassword){echo('your'in,点击输入您的个人资料');$_SESSION['username']=$username;}否则{echo(“请输入您的用户名和密码”)}-现在它在“$_SESSION['username']=$username;”-解析错误:语法错误,意外“}@mattdb234:your
if”行后给我一个错误($numrows!=0){
条件永远不会关闭。它需要一个大括号来完成该条件。因此,如果($numrows!=0){},我会像这样关闭它-尽管如此,我仍然会收到该错误