Mysql
 sql >> Baza danych >  >> RDS >> Mysql

codeIgniter zamiast tego użyj mysql_real_escape_string(). problem z połączeniem z bazą danych

Nie bój się zmieniać podstawowych plików, po prostu zmień FCPATH/system/database/drivers/mysqli/mysqli_driver.php

function escape_str($str, $like = FALSE)
{
    if (is_array($str))
    {
        foreach ($str as $key => $val)
        {
            $str[$key] = $this->escape_str($val, $like);
        }

        return $str;
    }

    if (function_exists('mysqli_real_escape_string') AND is_object($this->conn_id))
    {
        $str = mysqli_real_escape_string($this->conn_id, $str);
    }
    else
    {
        $str = addslashes($str);
    }

    // escape LIKE condition wildcards
    if ($like === TRUE)
    {
        $str = str_replace(array('%', '_'), array('\\%', '\\_'), $str);
    }

    return $str;
}

Miałem ten sam problem

Lepsze rozwiązanie -> https://ellislab.com/forums/viewthread/228288/ "stated in github that it will be fixed in CodeIgniter 3.0 the fix already exists in that repository"



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:wybierz wszystkie daty w zakresie, nawet jeśli nie ma żadnych rekordów

  2. Rodzaj trójkąta w MySQL

  3. Jak zapisać dane sesji PHP w bazie danych zamiast w systemie plików?

  4. Nie możesz określić tabeli docelowej do aktualizacji w klauzuli FROM

  5. Łączenie się z MySQL za pomocą Pythona