Я делаю функцию загрузки изображения, которая хранит имя файла в базе данных и фотографию в папке с именем uploaded
. Эти фотографии перемещаются в папку uploaded
, но по какой-то причине я не могу сохранить имя файла в базе данных.Данные не отправляются в базу данных
Я также обеспечил, что я подключился к db и правильно включил все мои столбцы. Я не получаю никаких ошибок, данные просто не хранятся в базе данных.
if(isset($_POST['pp_submit'])){ session_start(); $file = $_FILES['pp_file']['name']; $ppf_type = $_FILES['pp_file']['type']; $ppf_size = $_FILES['pp_file']['size']; $ppf_tmpname = $_FILES['pp_file']['tmp_name']; $ppf_err = $_FILES['pp_file']['error']; $var = $_SESSION['id']; if($ppf_err > 0){ header('Location: ../profile.php');} move_uploaded_file($ppf_tmpname,"../uploaded/".$file); mysql_query("INSERT INTO users (profile) VALUES ('$file') WHERE id = '$var'"); if(mysql_affected_rows()>0){ echo "Item added successfully.<br/>";} else { echo "Item addition failed.<br/>"; } header("Location: ../profile.php?id=$var"); }
Мой вопрос: Почему не имя файла передается через базу данных?
- Мне также любопытно, почему
move_uploaded_file()
работает, но не непосредственно под ним.
'INSERT' с предложением' WHERE'? Вы создаете новую запись. Неужели вы имеете в виду «ОБНОВЛЕНИЕ»? –
Проверьте 'mysql_error()' после выдачи запроса. Кроме того, функции 'mysql_' устарели. Изучите PDO или MySQLi и особенно подготовленные операторы. – Sirko
Возможный дубликат [MySQL Insert Where query] (http://stackoverflow.com/questions/485039/mysql-insert-where-query) –