Загрузка файлов PHP & MYSQL
Привет всем! Напишите пожалуйста пример как в php загрузить файл на сервер а имя файла в mysql и все это вывести
FAQ по PHP для начинающих".
Думаю, сейчас не является большой проблемой сделать усилие над собой и полистать мануалы.
Специально для таких особей у нас на форуме есть раздел "
Думаю, сейчас не является большой проблемой сделать усилие над собой и полистать мануалы.
=================================[/COLOR]
Я взял этот код с чужого php скрипта но пытаюсь его вставить в свой и че то ваще никак неполучается или может
сдесь че неправильно?
Разъясните пожалуйста вот этот кусок
Код:
if ($file1 != "") {
$file1 = $HTTP_POST_FILES['file1']['name'];
$filesize1 = $HTTP_POST_FILES['file1']['size'];
$temp1 = $HTTP_POST_FILES['file1']['tmp_name'];
$fileres1=strtolower(basename($file1));
if ($file1 != "" and !strpos($fileres1,".jpg") and !strpos($fileres1,".gif")){$error .= "$err29";}
if ($filesize1 > $MAX_FILE_SIZE){$error .= "$err30";}
}
// За что он отвечает
//И за что этот код отвечает
if ($QUERY_STRING == "add" and ($file1 != "")) {
$result1 = @mysql_query("SELECT * FROM $textable order by ID DESC LIMIT 1");
while ($myrow=@mysql_fetch_array($result1))
{
$fid=$myrow["ID"];
}
$fid=$fid+1;
$updir=$photodir;
$path1 = $upath."$updir";
$fileres1=@substr($fileres1,-3,3);
$source_name1="";
if ($file1 != "") {$source_name1 = "p".$fid."_1.$fileres1";}
if($error == ""){
$dest1 = $path1.$source_name1;
if ($file1 != "") {@copy("$temp1","$dest1");$foto1=$updir."$source_n ame1";}
}
}
$sql="insert into $textable (foto1) values ('$source_name1')";
$result=@mysql_query($sql,$db);
$file1 = $HTTP_POST_FILES['file1']['name'];
$filesize1 = $HTTP_POST_FILES['file1']['size'];
$temp1 = $HTTP_POST_FILES['file1']['tmp_name'];
$fileres1=strtolower(basename($file1));
if ($file1 != "" and !strpos($fileres1,".jpg") and !strpos($fileres1,".gif")){$error .= "$err29";}
if ($filesize1 > $MAX_FILE_SIZE){$error .= "$err30";}
}
// За что он отвечает
//И за что этот код отвечает
if ($QUERY_STRING == "add" and ($file1 != "")) {
$result1 = @mysql_query("SELECT * FROM $textable order by ID DESC LIMIT 1");
while ($myrow=@mysql_fetch_array($result1))
{
$fid=$myrow["ID"];
}
$fid=$fid+1;
$updir=$photodir;
$path1 = $upath."$updir";
$fileres1=@substr($fileres1,-3,3);
$source_name1="";
if ($file1 != "") {$source_name1 = "p".$fid."_1.$fileres1";}
if($error == ""){
$dest1 = $path1.$source_name1;
if ($file1 != "") {@copy("$temp1","$dest1");$foto1=$updir."$source_n ame1";}
}
}
$sql="insert into $textable (foto1) values ('$source_name1')";
$result=@mysql_query($sql,$db);
Код:
<?
include('config.php');
/* Соединение с сервером базы данных */
mysql_connect ($host, $user_db, $pass_db);
/* Выбор базы данных */
mysql_select_db($dbase);
if ($_POST) {
$error = ""; // Сбрасываем указатель ошибки
$marka = $_POST['marka']; // Приняли из формы дату новости
$model = $_POST['model'];
$year = $_POST['year'];
$fueltype = $_POST['fueltype'];
$obdvig = $_POST['obdvig'];
$transmission = $_POST['transmission'];
$privod = $_POST['privod'];
$text = $_POST['text'];
$price = $_POST['price'];
$city = $_POST['city'];
$phone = $_POST['phone'];
$email = $_POST['email'];
$name = $_POST['name'];
$maxmarka = 20;
$maxmodel = 20;
$maxyear = 4;
$maxobdvig = 10;
$maxtext = 250;
$maxprice = 7;
$maxcity = 20;
$maxphone = 20;
$maxemail = 30;
$maxname = 70;
// Проверяем, заполнены ли обязателные поля
if ($marka=="") $error .= "Не заполнено обязательное поле - Производитель!<BR>";
if ($model=="") $error .= "Не заполнено обязательное поле - Модель!<BR>";
if ($year=="") $error .= "Не заполнено обязательное поле - Год выпуска!<BR>";
if ($obdvig=="") $error .= "Не заполнено обязательное поле - Объем двигателя!<BR>";
if ($price=="") $error .= "Не заполнено обязательное поле - Цена!<BR>";
if ($city=="") $error .= "Не заполнено обязательное поле - Город!<BR>";
if ($phone=="") $error .= "Не заполнено обязательное поле - Телефон!!<BR>";
if (strlen($marka) > $maxmarka) $error .= "Марка должна быть не длинее $maxmarka символов<BR>";
if (strlen($model) > $maxmodel) $error .= "Модель должна быть не длинее $maxmodel символов<BR>";
if (strlen($year) > $maxyear) $error .= "Год выпуска должен быть не длинее $maxyear символов<BR>";
if (strlen($obdvig) > $maxobdvig) $error .= "Объем двигателя должен быть не длинее $maxobdvig символов<BR>";
if (strlen($text) > $maxtext) $error .= "Поле дополнительно должно быть не длинее $maxtext символов<BR>";
if (strlen($price) > $maxprice) $error .= "Цена должна быть не длинее $maxprice символов<BR>";
if (strlen($city) > $maxcity) $error .= "Город должен быть не длинее $maxcity символов<BR>";
if (strlen($phone) > $maxphone) $error .= "Телефон должен быть не длинее $maxphone символов<BR>";
if (strlen($email) > $maxemail) $error .= "E-mail должен быть не длинее $maxemail символов<BR>";
if (strlen($name) > $maxname) $error .= "Имя должно быть не длинее $maxname символов<BR>";
// ВОТ ЗДЕСЬ Я И ПЫТАЛСЯ ВСТАВИТЬ ТОТ КОД!!!!!!!!
$file1 = $_FILES['file1']['name'];
$filesize1 = $_FILES['file1']['size'];
$temp1 = $_FILES['file1']['tmp_name'];
$fileres1=strtolower(basename($file1));
if ($file1 != "" and !eregi("\.jpg$",$fileres1) and !eregi("\.gif$",$fileres1)) $error .= "Фотография должна иметь расширение *.jpg либо *.gif<br>";
if ($filesize1 > $MAX_FILE_SIZE) $error .= "Фотография должна иметь размер не более $MAX_FILE_SIZE байт!<br>";
}
if ($error!="") { echo "<center><font color=red>$error</font></center>"; }
if ($QUERY_STRING == "add" and $file1 != "") {
$error2 = "";
$file1 = $HTTP_POST_FILES['file1']['name'];
$filesize1 = $HTTP_POST_FILES['file1']['size'];
$temp1 = $HTTP_POST_FILES['file1']['tmp_name'];
$fileres1=strtolower(basename($file1));
if ($file1 != "" and !eregi("\.jpg$",$fileres1) and !eregi("\.gif$",$fileres1)) $error2 .= "Фотография должна
иметь расширение *.jpg либо *.gif<br>";
if ($filesize1 > $MAX_FILE_SIZE) $error2 .= "Фотография должна иметь размер не более $MAX_FILE_SIZE байт!<br>";
}
if ($error2!="") { echo "<center><font color=red>$error2</font></center>"; }
else {
$date = date("Y/m/d H:i:s");
if ($file1 != "") {
$result1 = @mysql_query("SELECT * FROM $dtable order by ID DESC LIMIT 1");
while ($myrow=@mysql_fetch_array($result1))
{
$fid=$myrow["ID"];
}
$fid=$fid+1;
$updir=$photodir;// папка указана в конфиге
$path1 = $upath."$updir";
$fileres1=@substr($fileres1,-3,3);
$source_name1="";
if ($file1 != "") {$source_name1 = "p".$fid."_1.$fileres1";}
if($error == ""){
$dest1 = $path1.$source_name1;
if ($file1 != "") {@copy("$temp1","$dest1");$foto1=$updir."$source_n ame1";}
}
}
// Основные действия скрипта
// Создание SQL запроса
$sql = "INSERT INTO $dtable (marka, model, year, fueltype, obdvig, transmission, privod, text, price, city, phone, email, name, date, period, foto1 ) VALUES ('$marka', '$model', '$year', '$fueltype', '$obdvig', '$transmission', '$privod', '$text', '$price', '$city', '$phone', '$email', '$name','$date','$period', '$source_name1')";
/* Исполнение SQL запроса */
$result = mysql_query($sql);
// Проверка исполнения операции
if(!$result) {
echo "<H2>Ошибка!</H2>\n";
echo mysql_errno().": ".mysql_error()."<P>";
} else {
print '<META HTTP-EQUIV="Refresh" CONTENT="2; URL=view2.php">';
print "Ваше объявление о продаже автомобиля добавлено!";
//echo phpinfo();
}
}
?>
include('config.php');
/* Соединение с сервером базы данных */
mysql_connect ($host, $user_db, $pass_db);
/* Выбор базы данных */
mysql_select_db($dbase);
if ($_POST) {
$error = ""; // Сбрасываем указатель ошибки
$marka = $_POST['marka']; // Приняли из формы дату новости
$model = $_POST['model'];
$year = $_POST['year'];
$fueltype = $_POST['fueltype'];
$obdvig = $_POST['obdvig'];
$transmission = $_POST['transmission'];
$privod = $_POST['privod'];
$text = $_POST['text'];
$price = $_POST['price'];
$city = $_POST['city'];
$phone = $_POST['phone'];
$email = $_POST['email'];
$name = $_POST['name'];
$maxmarka = 20;
$maxmodel = 20;
$maxyear = 4;
$maxobdvig = 10;
$maxtext = 250;
$maxprice = 7;
$maxcity = 20;
$maxphone = 20;
$maxemail = 30;
$maxname = 70;
// Проверяем, заполнены ли обязателные поля
if ($marka=="") $error .= "Не заполнено обязательное поле - Производитель!<BR>";
if ($model=="") $error .= "Не заполнено обязательное поле - Модель!<BR>";
if ($year=="") $error .= "Не заполнено обязательное поле - Год выпуска!<BR>";
if ($obdvig=="") $error .= "Не заполнено обязательное поле - Объем двигателя!<BR>";
if ($price=="") $error .= "Не заполнено обязательное поле - Цена!<BR>";
if ($city=="") $error .= "Не заполнено обязательное поле - Город!<BR>";
if ($phone=="") $error .= "Не заполнено обязательное поле - Телефон!!<BR>";
if (strlen($marka) > $maxmarka) $error .= "Марка должна быть не длинее $maxmarka символов<BR>";
if (strlen($model) > $maxmodel) $error .= "Модель должна быть не длинее $maxmodel символов<BR>";
if (strlen($year) > $maxyear) $error .= "Год выпуска должен быть не длинее $maxyear символов<BR>";
if (strlen($obdvig) > $maxobdvig) $error .= "Объем двигателя должен быть не длинее $maxobdvig символов<BR>";
if (strlen($text) > $maxtext) $error .= "Поле дополнительно должно быть не длинее $maxtext символов<BR>";
if (strlen($price) > $maxprice) $error .= "Цена должна быть не длинее $maxprice символов<BR>";
if (strlen($city) > $maxcity) $error .= "Город должен быть не длинее $maxcity символов<BR>";
if (strlen($phone) > $maxphone) $error .= "Телефон должен быть не длинее $maxphone символов<BR>";
if (strlen($email) > $maxemail) $error .= "E-mail должен быть не длинее $maxemail символов<BR>";
if (strlen($name) > $maxname) $error .= "Имя должно быть не длинее $maxname символов<BR>";
// ВОТ ЗДЕСЬ Я И ПЫТАЛСЯ ВСТАВИТЬ ТОТ КОД!!!!!!!!
$file1 = $_FILES['file1']['name'];
$filesize1 = $_FILES['file1']['size'];
$temp1 = $_FILES['file1']['tmp_name'];
$fileres1=strtolower(basename($file1));
if ($file1 != "" and !eregi("\.jpg$",$fileres1) and !eregi("\.gif$",$fileres1)) $error .= "Фотография должна иметь расширение *.jpg либо *.gif<br>";
if ($filesize1 > $MAX_FILE_SIZE) $error .= "Фотография должна иметь размер не более $MAX_FILE_SIZE байт!<br>";
}
if ($error!="") { echo "<center><font color=red>$error</font></center>"; }
if ($QUERY_STRING == "add" and $file1 != "") {
$error2 = "";
$file1 = $HTTP_POST_FILES['file1']['name'];
$filesize1 = $HTTP_POST_FILES['file1']['size'];
$temp1 = $HTTP_POST_FILES['file1']['tmp_name'];
$fileres1=strtolower(basename($file1));
if ($file1 != "" and !eregi("\.jpg$",$fileres1) and !eregi("\.gif$",$fileres1)) $error2 .= "Фотография должна
иметь расширение *.jpg либо *.gif<br>";
if ($filesize1 > $MAX_FILE_SIZE) $error2 .= "Фотография должна иметь размер не более $MAX_FILE_SIZE байт!<br>";
}
if ($error2!="") { echo "<center><font color=red>$error2</font></center>"; }
else {
$date = date("Y/m/d H:i:s");
if ($file1 != "") {
$result1 = @mysql_query("SELECT * FROM $dtable order by ID DESC LIMIT 1");
while ($myrow=@mysql_fetch_array($result1))
{
$fid=$myrow["ID"];
}
$fid=$fid+1;
$updir=$photodir;// папка указана в конфиге
$path1 = $upath."$updir";
$fileres1=@substr($fileres1,-3,3);
$source_name1="";
if ($file1 != "") {$source_name1 = "p".$fid."_1.$fileres1";}
if($error == ""){
$dest1 = $path1.$source_name1;
if ($file1 != "") {@copy("$temp1","$dest1");$foto1=$updir."$source_n ame1";}
}
}
// Основные действия скрипта
// Создание SQL запроса
$sql = "INSERT INTO $dtable (marka, model, year, fueltype, obdvig, transmission, privod, text, price, city, phone, email, name, date, period, foto1 ) VALUES ('$marka', '$model', '$year', '$fueltype', '$obdvig', '$transmission', '$privod', '$text', '$price', '$city', '$phone', '$email', '$name','$date','$period', '$source_name1')";
/* Исполнение SQL запроса */
$result = mysql_query($sql);
// Проверка исполнения операции
if(!$result) {
echo "<H2>Ошибка!</H2>\n";
echo mysql_errno().": ".mysql_error()."<P>";
} else {
print '<META HTTP-EQUIV="Refresh" CONTENT="2; URL=view2.php">';
print "Ваше объявление о продаже автомобиля добавлено!";
//echo phpinfo();
}
}
?>
мне надо чтобы файл а именно картинка загружалась в папку а его имя в MySQL
2. Оформляйте код.
3. Вы не смотрели FAQ, там есть готовые примеры с закачкой файлов и записью в базу.