나는 데이터베이스에 디렉토리 내에서 파일 이름을 삽입이 코드는왜 mysql_real_escape_string() 경고가 표시됩니까?
<?php
include("db.php");
$path = 'C:\Users\Firdavs\Desktop\Ypp';
$directories = new RecursiveIteratorIterator(
new ParentIterator(new RecursiveDirectoryIterator($path)),
RecursiveIteratorIterator::SELF_FIRST);
foreach ($directories as $directory) {
if($directory->isDir())
{
foreach (new DirectoryIterator($directory) as $file)
{
if($file->isDot()) continue;
if($file->isFile())
{
$filename=$file->getFilename();
$ext = pathinfo($filename, PATHINFO_EXTENSION);
if($ext=='docx')
{
mysqli_query($con,"INSERT INTO Organ (Name) VALUES ('$filename')");
$filename=mysql_real_escape_string($filename);
}
}
}
}
}
?>
이 데이터베이스에 파일 이름을 삽입, 작업 코드 여전히
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user ''@'localhost' (using password: NO) in Y:\home\localhost\www\jurist\import.php on line 22
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in Y:\home\localhost\www\jurist\import.php on line 22
그러나 다음과 같은 경고가 표시되어있다;
내 db.php를이 문제가 될 수 무엇
$con= mysqli_connect("localhost","root","mypassword","jurist") or die("Error " . mysqli_error($con));
을 따르고있다?
어쨌든 MySQLi를 사용한다면, 바인드 변수와 함께 prepared statement를 사용하는 법을 배우십시오. 따라서 –
을 이스케이프해도 걱정할 필요가 없습니다. mysql_real_escape_string은 msyql_query 앞에 올 필요가 있지만, MySQLi 또는'PDO' –