图像未通过python请求发送

2024-05-29 10:12:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将一张照片从树莓pi3发送到php服务,在phyton中我使用的是请求库,但它似乎不起作用。从我的树莓我用这个代码

def send_data_to_server(image_path, id):

image_filename = os.path.basename(image_path)

multipart_form_data = {
    'image': (image_filename, open(image_path, 'rb')),
    'id': (id),
}

response = requests.post('http://192.168.0.7:8080/photos/cargar.php',
                         files=multipart_form_data)
print(multipart_form_data)
print(response)

在我的php服务器中,我使用了以下代码:

<?php
$servidor="localhost:3306";
$root="ale";
$BaseDatos="fotoa";
$password="gatoloco2";

$conexion = new mysqli($servidor,$root,$password,$BaseDatos);
if($conexion->connect_errno){
    echo "Sitio no disponible";
}else{
    echo "conexión exitosa";
}

if($_SERVER['REQUEST_METHOD']=='POST'){

$target = "images/".basename($_FILES['image']['name']);
$image = $_FILES['image']['name'];
$guessID = $_POST['id'];

$ID =implode('.',$guessID);

$consulta = "INSERT INTO photo (url, guessID) VALUES ('$image', '$ID')";
mysqli_query($conexion,$consulta) or die (mysqli_error($conexion));

echo $guessID;

if (move_uploaded_file($_FILES['image']['tmp_name'], $target)) {
  $msg = "Archivo correctamente agregado";
} else {
  $msg = "Hubo un problema, reintente";
}
echo $msg;
}
 ?>

另外,我也找不到ID字段 令人沮丧的是,如果我在本地使用以下表单

   <form action="" method="post" enctype="multipart/form-data"> 
 Name: <input type="text" name="id"> 
 Image: <input type="file" name="image"> 
 <input type="submit" value="submit"> 
</form> 

它就像一个魔咒

我真的不知道该怎么办:(请帮忙


Tags: pathnameimageechoformiddataif

热门问题