Member 10390715 Ответов: 2

Как загрузить изображение с клиента на сервер с помощью PHP?


Я делаю веб-сервер, встроенный в мини-компьютер Raspberry PI. Он может отображать изображение, если я скопирую изображение в папку /www/ на raspberry pi
Теперь я хочу добавить/отправить изображение в папку /www/ на Raspberry Pi с другого ПК.
Как я могу это сделать? Я новичок в PHP. Спасибо за помощь.

Oso Oluwafemi Ebenezer

Вы хотите узнать, как загружать файлы на PHP?

Member 10390715

Так вот, я действительно не слишком нужен. Потому что раньше я не мог конвертировать двоичный файл в изображение и пытался автоматически скопировать изображение в папку /www/.
Я могу написать код загрузки на сервер, но на том же ПК.Если вы знаете, я готов учиться. Спасибо

Oso Oluwafemi Ebenezer

Чтобы лучше понять вас, вы пытаетесь использовать изображения на другом компьютере на вашем "локальном сайте"?

Member 10390715

Нет.
Например, я использую мини-компьютер Raspberry Pi (192.168.1.7) в качестве веб-сервера. Я подключаю свой ноутбук (192.168.1.4) непосредственно к Raspberry Pi. Затем я открываю браузер типа 192.168.1.7, он отправит мне веб-страницу с веб-сервера. Я также делаю веб-страницу php для добавления данных в mysql. Вместе с изображением я добавляю имя изображения в mysql. Затем я использую USB copy image с моего ноутбука, чтобы Raspberry Pi сохранил его в папке /www/ на сервере wamp. Я буду отображать изображение по имени, вот так:
&ЛТ;заранее Ланг="РНР"и GT;
....
$Hinh = "www/".$row[5];
Hinh $ = "&ЛТ;ИМГ СРЦ = '$Hinh' высокий звук='$десять в'>";
echo $Hinh;
</pre>
Но мне это не нравится. Я не люблю использовать USB для копирования. Я хочу сделать веб-страницу, похожую на страницу регистрации. Я могу загрузить свой авартар на эту страницу.
Но я не знаю.
Извините, если мой английский не очень хорош.

Oso Oluwafemi Ebenezer

Во-первых, этот код выглядит знакомым! Особенно $десять и $Хин.
В любом случае, вы можете сохранить изображение в папке и сохранить путь к файлу в базе данных. Разместите код места хранения имени файла в базе данных.

Member 10390715

Вы ведете меня "как конвертировать longblob в изображение на php?". Ты помнишь?

Member 10390715

Вот мой код:
&ЛТ;заранее Ланг="РНР"и GT;
<!--?php<br /-->
если($_POST, где["Card_ID"] !="" &ампер;&ампер; $_POST, где["десять"] != "")
//если(использования isset($_POST, где["Card_ID"]) &&усилителя; использования isset($_POST, где["десять"]))
{
$Card_ID = $_POST, где["Card_ID"];
$Ma_nv = $_POST["Ma_nv"];
$Ten = $_POST["десять"];
$Phong_ban = $_POST["Phong_ban"];
$Chuc_vu = $_POST["Chuc_vu"];
$Hinh ="";

//озера тра экрана đúng Хем Кхонг

if($_FILES["file"]["error"] >0)
{
Эхо "ошибка: ". Переменную $_FILES["файл"]["ошибка"]".&ЛТ;БР /&ГТ;";
выход;
}
//ной навоза загрузить
еще
{
move_uploaded_file($_FILES["file"]["tmp_name"],"nhan_vien/".$_FILES["file"]["name"]);
$luutru = "Lưu trữ tại: "."nhan_vien/".$_FILES["file"]["name"];
$Hinh = $_FILES["file"]["name"];
}
$sql = "вставить в tt_nhanvien значения ( '$Card_ID','$Ma_nv','$Ten', '$Phong_ban', '$Chuc_vu','$Hinh')";
$result = mysql_query($sql,$db);
</pre>

Oso Oluwafemi Ebenezer

На первый взгляд, этот код выглядит чистым! Итак, вы не получаете отправленный файл в каталоге "nhan_vien"? И кроме того, существует ли каталог "nhan_vien"?

Member 10390715

"nhan_vien" - это папка, в которой я храню изображение. Это wamp/www/nhan_vien. Этот код используется только с той же машиной, на которой работает wampserver.

Oso Oluwafemi Ebenezer

Оператор INSERT INTO неверен, он должен быть вставлен в table_name(column1, column2) VALUES (value1, value2)

Member 10390715

Да, но это тоже работает :). Я буду помнить об этом.

Oso Oluwafemi Ebenezer

Нет, это не работает! Если вы сделаете "echo mysql_error ();", вы увидите свою ошибку!

Oso Oluwafemi Ebenezer

А загруженный файл появляется внутри "nhan_vien"

Member 10390715

да.

Oso Oluwafemi Ebenezer

Тогда проблема не в загрузке, а в ваших заявлениях MYSQL

Member 10390715

Нет,этот код используется только с тем же ПК, на котором работает wampserver. Я хочу, чтобы загрузить изображение на nhan_vien с другого компьютера.

Oso Oluwafemi Ebenezer

Если он работает на "серверной машине", он должен работать из любой точки мира!

Member 10390715

Неужели? Я попробую это сделать. Я отвечу тебе завтра.

Oso Oluwafemi Ebenezer

Хорошо!

Member 10390715

Я очень взволнован. Я проверю и отвечу вам завтра. Спокойной ночи.

Oso Oluwafemi Ebenezer

Когда вы загружаете файл, какие значения вы получаете в базе данных

Member 10390715

Нет, он не добавляет в базу данных mysql. Например, сначала мой образ хранится на диске D. Когда я загружаю его, он появляется на wamp/www/nhan_vien. И я думаю, что в другом ПК это не сработает.Я не уверен, но думаю, что да.

Oso Oluwafemi Ebenezer

Если файл теперь хранится в "www/nhan_vien", то он будет работать даже с компьютера, находящегося на расстоянии 100 миллионов миль!

Member 10390715

Хе-хе, может быть, я просто выучил PHP сам около 2 месяцев назад. Есть много вещей, которых я не знаю. Я проверю и отвечу вам. Спасибо.
Спокойной ночи.

Member 10390715

Я mysql, я установил default Hinh = null, и если я не добавляю изображение в Hinh, это не ошибка.

2 Ответов

Рейтинг:
2

Member 13910296

прежде всего вам нужно создать базу данных. Затем вы сохраняете идентификатор или имя изображений, которые вы даете в своем html-документе.Прежде чем мы попытаемся отправить на сервер, мы должны были соединить сервер и базу данных с помощью

$conn = mysql_connect("имя хоста","имя mysql", "пароль mysql","имя базы данных");

mysql_select_db($conn, "имя БД");//или ("имя БД");
mysql_query("SELECT*FROM db table name image="'.$imageid.'" ");
После этого вы можете отправить эти изображения с вашего сервера клиенту и наоборот.


CHill60

Этот вопрос был задан и на него был дан ответ более 3 с половиной лет назад! Более того, плакат решения 1 заметил проблему, и ОП принял ответ, означающий, что он решил проблему

Рейтинг:
13

Oso Oluwafemi Ebenezer

То INSERT утверждение неверно, так и должно быть

INSERT INTO table_name(column1, column2) VALUES (value1, value2)