php操作mysql语法格式出错

WBOY
Freigeben: 2016-06-06 20:21:58
Original
1188 Leute haben es durchsucht

<code>1、错误查询语句:$sql='select * from sh_admin where username=$username and password=$password limit 1';
2、正确查询语句:$sql = "select * from sh_admin where username = '{$username}' and password = '{$password}' limit 1";
</code>
Nach dem Login kopieren
Nach dem Login kopieren

当PHP操作mysql数据库时为什么非得用 '{$username}'的方式才能查询,PHP语法中双引号就能解析变量啊 ,为什么我用第一种会出错呢?

回复内容:

<code>1、错误查询语句:$sql='select * from sh_admin where username=$username and password=$password limit 1';
2、正确查询语句:$sql = "select * from sh_admin where username = '{$username}' and password = '{$password}' limit 1";
</code>
Nach dem Login kopieren
Nach dem Login kopieren

当PHP操作mysql数据库时为什么非得用 '{$username}'的方式才能查询,PHP语法中双引号就能解析变量啊 ,为什么我用第一种会出错呢?

1、变量$username和$password在单引号里面是不解析的
2、字符型字段username和password后面的值是需要加引号的。

<code>$sql='select * from sh_admin where username="'.$username.'" and password="'.$password.'" limit 1';</code>
Nach dem Login kopieren

你第一条sql用的是单引号啊 所以出错
是用

<code>$sql="select * from sh_admin where username=$username and password=$password limit 1";
</code>
Nach dem Login kopieren

就没问题了

同意楼上,字符串是要加引号的。

调试一下 将$sql输出一下,一眼就能看出了!
第一句 单引号里面的变量不解析,且sql里面 字符串是要引起来的

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!