PHP не передает переменные для вставки? - PullRequest
0 голосов
/ 30 октября 2019

Есть идеи, почему бы не передать PO, AP и Facility в оператор вставки SQL? Я проверял буквальные значения, и он работает иначе, когда я запускаю запрос для поиска значений. L

Я в растерянности, помогите?

<?php
if (! empty($_FILES)) {
    $imagePath = isset($_FILES["file"]["name"]) ? $_FILES["file"]["name"] : "Undefined";
    $targetPath = "uploads/";
    $imagePath = $targetPath . $imagePath;
    $tempFile = $_FILES['file']['tmp_name'];

    $targetFile = $targetPath . $_FILES['file']['name'];

    if (move_uploaded_file($tempFile, $targetFile)) {
        echo "true";
    } else {
        echo "false";
    }
}
$po = $_GET["po"];
$ap = $_GET["ap"];
$facility = $_GET["facility"];

if (! empty($_GET["action"]) && $_GET["action"] == "save") {

    require_once ("db.php");

    print $sql = "INSERT INTO images_info (image_path, po, ap, facility) VALUES ('" . $imagePath . "', '" . $_GET["po"] . "', '" . $ap . "', '" . $facility . "')";

    mysqli_query($conn, $sql);
    $current_id = mysqli_insert_id($conn);
}
?>
<html>
<head>
<title>Add New Image</title>
<link rel="stylesheet" type="text/css" href="css/styles.css" />

<link rel="stylesheet" type="text/css" href="dropzone/dropzone.css" />
<?php echo "PO#: ".$po."<br />" ?>
<?php echo "AP#: ".$ap."<br />"  ?>
<?php echo "Facility#: ".$facility."<br />"  ?>
<script type="text/javascript" src="dropzone/dropzone.js"></script>
</head>
<body>
    <form name="frmImage" action="image-add.php?action=save"
        class="dropzone"></form>
    <div class="btn-menu">
        <a href="index.php" class="link">Back to List</a>
    </div>
</body>
</html>

1 Ответ

0 голосов
/ 30 октября 2019

Я не вижу никаких полей ввода в вашей форме. Посмотрите этот комментарий на примере Dropzone.js с PHP . Суть должна помочь вам решить вашу проблему.

Таким образом, форма должна выглядеть следующим образом:

<form name="frmImage" action="image-add.php?action=save" class="dropzone">
    <input type="hidden" name="po" value="<?php echo $po; ?>">
    <input type="hidden" name="ap" value="<?php echo $ap; ?>">
    <input type="hidden" name="facility" value="<?php echo $facility; ?>">
</form>

Так как кажется, что вы не используете кнопку отправки в вашей форме, здесьПример фрагмента для передачи данных формы вместе с вашими файлами в вашем почтовом запросе:

myDropzone.on("sending", function(file, xhr, formData) {
    poValue = document.querySelector("input[name=po]").value;
    formData.append("po", poValue ); 
    apValue = document.querySelector("input[name=ap]").value;
    formData.append("ap", apValue ); 
    facilityValue = document.querySelector("input[name=facility]").value;
    formData.append("facility", facilityValue ); 
});

Вы должны будете приспособиться к вашим потребностям.

...