У меня есть массив имен файловINSERT в таблицу на основе массива
$files = array();
$dirName = getcwd()."/../";
$dir = opendir('../'); // open the cwd..also do an err check.
while(false != ($file = readdir($dir))) {
if(($file != ".") and ($file != "..") and ($file != "index.php")and ($file != "img") and ($file != "__MACOSX")) {
$files[] = $file; // put in array.
}
}
Я хочу, чтобы вставить новую запись в таблицу проектов для каждого файла, например,
foreach($files as $file) {
$filename = mysql_real_escape_string($file);
$query = "INSERT INTO `projects` (`id`, `name`) VALUES (NULL,$filename)";
$result = mysql_query($query, $connection);
echo $result;
}
Однако в настоящее время влияние на базу данных.
'$ filename', что, скорее всего, будет строка; цитируйте это. –
Чтобы проверить результат этого действия, вам нужно проверить 'mysql_error ($ connection)'. Как сказал @ Фред-ии, строка $ filename [должна быть одинарной кавычкой] (http://stackoverflow.com/questions/11321491/when-to-use-single-quotes-double-quotes-and- backticks) –
См. также [Почему я не должен использовать 'mysql _ *()' функции] (https://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php). Вместо написания нового кода с устаревшим API это прекрасное время для [начать обучение использованию PDO] (http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers), который поддерживает подготовленные заявления (избегая цитирования таких проблем) и улучшая безопасность. –