当前位置:  开发笔记 > 编程语言 > 正文

意外')'第2行的C:\ xampp\htdocs\login6.php中的'解析错误:语法错误,意外')'

如何解决《意外')'第2行的C:\xampp\htdocs\login6.php中的'解析错误:语法错误,意外')'》经验,为你挑选了1个好方法。



1> Funk Forty N..:

除了其他答案:(一个被删除)

您的查询mysqli_select_db('test_db'); $retval = mysqli_query( $sql, $conn );永远不会发生.

您需要将连接传递给mysqli_select_db(请参阅脚注),并且连接首先进入mysqli_

参考文献:

http://php.net/manual/en/mysqli.select-db.php

http://php.net/manual/en/mysqli.query.php

那么这MYSQL_ASSOC应该是作为MYSQLI_ASSOC

mysqli_error() 也需要连接.

mysqli_error($conn)

http://php.net/manual/en/mysqli.error.php


编辑:

根据要求,以下内容不正确:

if(! $retval ) { ()
  die('Could not get data: ' . mysqli_error());
}

这应该是作为

if(! $retval ) {
  die('Could not get data: ' . mysqli_error());
}

添加的内容()不应该在那里,并且是解析错误的原因.

但是,将连接传递给错误函数:

if(! $retval ) {
  die('Could not get data: ' . mysqli_error($conn));
}

它是必需的,并根据手册中的说明http://php.net/manual/en/mysqli.error.php

字符串mysqli_error(mysqli $ link)


脚注:

另一点,你不需要,mysqli_select_db('test_db');因为你已经声明了所有4个参数(包括数据库的变量):

$conn = mysqli_connect ($dbhost, $dbuser, $dbpass, $dbname);

所以只是摆脱mysqli_select_db('test_db');.


附加编辑:

注意到你的另一个问题/sf/ask/17360801/,这在某种程度上是一个额外的答案:

您似乎以纯文本形式存储密码,这在您目前的问题中{$row['password']}也建议密码关系.

如果打算上线,请不要.你被黑客入侵.

使用以下之一:

crypt_blowfish的

crypt()

bcrypt()

scrypt()

在OPENWALL

PBKDF2

PHP.net上的PBKDF2

PHP 5.5的password_hash()功能.

兼容包(如果PHP <5.5)https://github.com/ircmaxell/password_compat/

其他链接:

PBKDF2对于PHP

推荐阅读
地之南_816
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有