【发布时间】:2021-03-18 05:00:25
【问题描述】:
我正在创建一个 API 来注册用户。我可以成功注册,但图片没有上传。 我在谷歌上进行了一些搜索,并获得了一些关于 file_put_contet() 的信息,但不知道实现它的正确方法
<?php
header('Content-Type: application/json');
header('Acess-Control-Allow-Origin: *');
header('Acess-Control-Allow-Methods: POST');
header('Acess-Control-Allow-Headers: Access-Control-Allow-Headers,Content-Type,Access-Control-Allow-Methods, Authorization');
$data=json_decode(file_get_contents("php://input"),true);
$p_name=$data['p_name'];
$gaurdian=$data['gaurdian'];
$document=$data['document'];
$card_no=$data['card_no'];
$state=$data['state'];
$district=$data['district'];
$village=$data['village'];
$pin=$data['pin'];
$phone=$data['phone'];
$email=$data['email'];
$gender=$data['gender'];
$t_name=$data['team_name'];
$passport_photo = $_FILES['photo1']['name'];
$temp_name1=$_FILES['photo1']['tmp_name'];
$size1=$_FILES['photo1']['size'];
$type1=$_FILES['photo1']['type'];
$file_ext=strtolower(end(explode('.',$passport_photo)));
$ext=array("jpeg","jpg","png");
if(in_array($file_ext,$ext) === false){
echo'<script>alert("This file type is not allowed, please choose a jpg or png")</script>';
}
if($size1 > 50000){
echo'<script>alert("File size must be 150kb")</script>';
die();
}
$path = "images/passport_photo/".$passport_photo;
$card_photo=$_FILES['photo2']['name'];
$temp_name2=$_FILES['photo2']['tmp_name'];
$size2=$_FILES['photo2']['size'];
$type2=$_FILES['photo2']['type'];
$file_ext1=strtolower(end(explode('.',$card_photo)));
$ext1=array("jpeg","jpg","png","pdf");
if(in_array($file_ext1,$ext1) === false){
echo'<script>alert("This file type is not allowed, please choose a jpg, png or pdf file.")</script>';
die();
}
if($size2 > 150000){
echo'<script>alert("File size must be 150kb")</script>';
die();
}
$path1 = "images/document_photo/".$card_photo;
if(move_uploaded_file($temp_name1,$path) && move_uploaded_file($temp_name2,$path1)){
echo $query="INSERT INTO `player_reg` (`age_category`, `player_name`, `gaurdian_name`, `doc_type`, `card_no`, `state`, `district`, `town`,`pincode`, `image`, `doc_img`, `phone`, `email`, `gender`, `sport`, `team_name`,`date`) VALUES ('{$_SESSION["age_cat"]}','{$p_name}','{$gaurdian}','{$document}','{$card_no}','{$state}','{$district}','{$village}','{$pin}','{$passport_photo}','{$card_photo}','{$phone}','{$email}','{$gender}','{$_SESSION ['sport_type']}','{$t_name}','{$date}')";
$output=mysqli_query($con,$query);
if($output){
redirect("team-reg.php");
}
}
$query="INSERT INTO `player_reg` (`age_category`, `player_name`, `gaurdian_name`, `doc_type`, `card_no`, `state`, `district`, `town`,`pincode`, `image`, `doc_img`, `phone`, `email`, `gender`, `sport`, `team_name`,`date`) VALUES ('{$_SESSION["age_cat"]}','{$p_name}','{$gaurdian}','{$document}','{$card_no}','{$state}','{$district}','{$village}','{$pin}','{$passport_photo}','{$card_photo}','{$phone}','{$email}','{$gender}','{$_SESSION ['sport_type']}','{$t_name}','{$date}')";
$output=mysqli_query($con,$query);
if($output){
echo json_encode(array('message' => 'User registered successfully!','status' => true));
}
?>
用户注册成功,但图片没有上传到服务器。
【问题讨论】:
标签: php api file-upload server rest