首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL语法错误/查询

SQL语法错误/查询
EN

Stack Overflow用户
提问于 2011-10-20 13:04:45
回答 5查看 106关注 0票数 0

您的SQL语法中有一个错误;请查看与您的MySQL服务器版本对应的手册,了解要在第1行的‘%$_GET“urlsearch’附近使用的正确语法。

我不确定我做错了什么。有什么建议吗?

尝试能够搜索我的数据库(数据的URL列)的URL,看看它是否在那里。

代码语言:javascript
复制
<form method="GET" onSubmit=""><input type="text" name"urlsearch" id="SearchURL" /><input type="submit" value="Search" /></form>
<?php
$hostname = *
$username = *
$password = *
mysql_connect($hostname, $username, $password) or die(mysql_error());
mysql_select_db("tracker") or die("Unable to select database");
$query = 'SELECT URL FROM tracker.Data WHERE URL LIKE %$_GET["urlsearch"]';
$results = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_row($results) or die(mysql_error());
echo "<b>[$row] </b>";

?>

EN

回答 5

Stack Overflow用户

发布于 2011-10-20 13:14:17

在这样的查询中,如果您尝试“搜索”(使用$_GET"urlsearch")并放置一个奇怪的符号,比如本例中的单引号,它将停止导致错误。

这可能会被利用(SQL injection)。

使用mysql_real_escape_string() (和/或其他一些函数)来防止这种情况。

票数 1
EN

Stack Overflow用户

发布于 2011-10-20 13:06:22

更改:

代码语言:javascript
复制
$query = 'SELECT URL FROM tracker.Data WHERE URL LIKE %$_GET["urlsearch"]';

至:

代码语言:javascript
复制
$query = 'SELECT URL FROM tracker.Data WHERE URL LIKE "%'.$_GET["urlsearch"].'"';
票数 0
EN

Stack Overflow用户

发布于 2011-10-20 13:06:25

试一下,

代码语言:javascript
复制
$query = "SELECT `URL` FROM `tracker.Data` WHERE `URL` LIKE '%$_GET[urlsearch]'";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7831386

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档