Причина, по которой это происходит, заключается в том, что вы используете двойные кавычки ("
) вокруг запроса, и поскольку обратная косая черта (\
) является escape-символом, он удаляется.Вы можете исправить это, поместив две обратные косые черты вместе, чтобы получить один (C:\\wamp\\www\\project
).
Однако лучше было бы передать его в качестве аргумента prepare
, и вы можете сохранить двойнойцитаты.
$directory = "C:\wamp\www\project";
$sql = "INSERT INTO meal (pic_path) VALUES(?)";
$db = new PDO( $dsn, $username, $password );
$stmt = $db->prepare( $sql );
$stmt->execute(array($directory));
Подробнее о подготовленных высказываниях .