相关疑难解决方法(0)

奇怪的PHP语法错误

我收到错误你的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在第1行使用"密钥LIKE%dogs%ORDER BY rating DESC"附近使用正确的语法

 $query = mysql_query("SELECT * FROM listings WHERE keys LIKE %$q% ORDER BY rating DESC") or die(mysql_error());
Run Code Online (Sandbox Code Playgroud)

我搜索了"狗",取代了"q"搜索变量.添加ORDER BY评级DESC时出现此语法错误.我有相同的代码行,减去过去的代码,它工作正常.我尝试在'listing''key'和'rating'周围添加单引号,但它仍然无法正常工作.

我确信这是一个简单的解决方案,我只是缺少.

谢谢

php mysql sql

1
推荐指数
1
解决办法
118
查看次数

php mysql查询的问题

我有一个表单,其中method = post提交到表单处理程序文件,该文件将帖子写入数据库,然后将结果通过电子邮件发送给用户.

我写了一个插入语句,但是在处理表单时我遇到了错误,但不是一个数据库问题,我不确定问题是什么.这是代码 -

// MYSQL QUERY
$result = mysql_query("INSERT INTO 2009_prize_results 
  (name, address, address2, email, 100, 101, 102, 103, 104, 105, 106, 107, 108) 
VALUES
  ($_POST[name],$_POST[address],$_POST[address2],$_POST[email]
  ,$_POST[100],$_POST[101],$_POST[102],$_POST[103],$_POST[104],$_POST[105]
  ,$_POST[106],$_POST[107],$_POST[108])");
if (!$result) {
    die ("SQL error: " . mysql_error());
}
Run Code Online (Sandbox Code Playgroud)

而我得到的错误是 -

SQL错误:您的SQL语法中有错误; 查看与您的MySQL服务器版本对应的手册,以便在"100,101,102,103,104,105,106,107,108"附近使用正确的语法VALUES(Marty Martin,313 Orlando Av'在第1行

提交值是

name = Marty Martin
address = 313 Orlando Ave
address2 = Anytown, VA
email = foo@foo.com
100 = on
101 = off
10* are all checkboxes so are either on or off …
Run Code Online (Sandbox Code Playgroud)

php mysql

0
推荐指数
1
解决办法
260
查看次数

使用PHP的SQL语句问题

我目前正在尝试使用PHP从MYSQL中提取数据,并且我不断收到以下错误:

"无法检索记录:您的SQL语法中有错误;请检查与您的MySQL服务器版本对应的手册,以便在第1行'%PC4198%或oem LIKE%Fluke%'附近使用正确的语法"

我的SQL语句如下:

$sql = "SELECT * FROM account WHERE `NSC ID` LIKE %".$nscid."% OR oem LIKE %".$oem."%";
Run Code Online (Sandbox Code Playgroud)

任何帮助是极大的赞赏.

php mysql

0
推荐指数
1
解决办法
260
查看次数

无法在pdo语句中连接sql

我目前有一个Get varible

$name = $_GET['user'];
Run Code Online (Sandbox Code Playgroud)

我试图将它添加到我的sql语句中,如下所示:

$sql = "SELECT * FROM uc_users WHERE user_name = ". $name;
Run Code Online (Sandbox Code Playgroud)

并运行

$result = $pdo -> query($sql);
Run Code Online (Sandbox Code Playgroud)

我收到一个无效的列名.但这没有意义,因为如果我手动提出这样的请求

$sql = "SELECT * FROM uc_users WHERE user_name = 'jeff'";
Run Code Online (Sandbox Code Playgroud)

我得到列数据,而不是当我将其作为get变量输入时.我究竟做错了什么.我对pdo比较新.

更新:现在我有以下内容:

$name = $_GET['user'];
Run Code Online (Sandbox Code Playgroud)

$sql = "SELECT * FROM uc_users WHERE user_name = :name";
    //run the query and save the data to the $bio variable
    $result = $pdo -> query($sql);
    $result->bindParam( ":name", $name, PDO::PARAM_STR );
    $result->execute();
Run Code Online (Sandbox Code Playgroud)

但我得到了

> SQLSTATE[42000]: Syntax error or access violation: …
Run Code Online (Sandbox Code Playgroud)

php mysql sql pdo

0
推荐指数
1
解决办法
1507
查看次数

我是否正确插入数据(php + MySQLi)?

我用的方法是使用MySQLi插入数据吗?它有效,但足够安全吗?

    $login = stripslashes($login);
    $login = htmlspecialchars($login);
    $password = stripslashes($password);
    $password = htmlspecialchars($password);

    $login = trim($login);
    $password = trim($password);


 $result2=mysqli_query($db,"INSERT INTO users (login,password) VALUES('$login','$password')");
Run Code Online (Sandbox Code Playgroud)

php security mysqli

0
推荐指数
1
解决办法
696
查看次数

php mysql使用变量插入语句

我抛出错误的PHP代码如下:

$stmt = $con->prepare('INSERT INTO listOfRides (address, time) VALUES 
('$address', '$time')') ;
Run Code Online (Sandbox Code Playgroud)

我查看过其他帖子,看起来我正确使用变量和单引号,但访问URL时会显示以下错误:

Parse error: syntax error, unexpected T_VARIABLE in /home/gbidjght/public_html
/insertRide.php on line 79
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏

php mysql sql-insert

0
推荐指数
1
解决办法
494
查看次数

使用PHP检查用户名是否已存在

我想检查我的数据库中是否已存在用户名.如果是,我想重定向回我的注册页面.我的代码用于添加用户名,但不检查用户名是否存在.请帮忙!!!这是register.php页面的代码.代码完全跳过检查"用户名"并插入数据库(如果存在或不存在).

    <?php  
         error_reporting (E_ALL ^ E_NOTICE);    
         include ('dbconn.php');
         session_start();

         $GLOBALS[$error_message];
         $GLOBALS[$username];

         if(isset($_POST['submit']))
           {     
               $error = array();        
               if(empty($_POST['username']))
                 {
                   $error[] = 'Please enter a username. ';
                 }
               else 
                 {
                   $username = mysqli_real_escape_string($connection, $_POST['username']);
                 }

               if(empty($_POST['password']))
                 {
                   $error[] = 'Please enter a password. ';
                 }
               else
                 {
                   $password = mysqli_real_escape_string($connection,$_POST['password']);   
                 }

               if(empty($_POST['cpassword']))
                 {
                   $error[] = 'Please confirm password. ';
                 }
               else
                 {
                   $cpassword = mysqli_real_escape_string($connection,$_POST['cpassword']);
                 }

               if($password == $cpassword)
                 {
                   $mainpassword= $password;
                 }
               else
                 {
                   $error[] = 'Your passwords do not match. …
Run Code Online (Sandbox Code Playgroud)

php mysql username

-1
推荐指数
1
解决办法
5592
查看次数

如何使用此功能

可能重复: 如何在mysql插入语句中包含PHP变量

如何使用此函数清除从URL中提取的变量?假设我有$id变量,它是从"www.mydomain.com/single-page?id=534"中提取的,我想在MySQL select语句中使用它之前让它变得安全.

<?php
    class SecureSqlInjection
    {
        function specificData($val)
        {
            $val = htmlspecialchars(stripslashes(trim($val)));
            $val = str_ireplace("script", "blocked", $val);
            $val = mysql_escape_string($val);
            return $val;
        }

        function secureSuperGlobalGET(&$value, $key)
        {
            if(!is_array($_GET[$key]))
            {
                $_GET[$key] = htmlspecialchars(stripslashes($_GET[$key]));
                $_GET[$key] = str_ireplace("script", "blocked", $_GET[$key]);
                $_GET[$key] = mysql_real_escape_string($_GET[$key]);
            }
            else
            {
                $c=0;
                foreach($_GET[$key] as $val)
                {
                    $_GET[$key][$c] = mysql_real_escape_string($_GET[$key][$c]);
                    $c++;
                }
            }
            return $_GET[$key];
        }

        function secureSuperGlobalPOST(&$value, $key)
        {
            if(!is_array($_POST[$key]))
            {
                $_POST[$key] = htmlspecialchars(stripslashes($_POST[$key]));
                $_POST[$key] = str_ireplace("script", "blocked", $_POST[$key]);
                $_POST[$key] = mysql_real_escape_string($_POST[$key]);
            }
            else …
Run Code Online (Sandbox Code Playgroud)

php variables sql-injection function

-6
推荐指数
1
解决办法
1021
查看次数

标签 统计

php ×8

mysql ×6

sql ×2

function ×1

mysqli ×1

pdo ×1

security ×1

sql-injection ×1

sql-insert ×1

username ×1

variables ×1