несколько SQL-операторов за одну отправку - PullRequest
0 голосов
/ 07 мая 2019

Я пытаюсь запустить несколько SQL-запросов на одном саммите: один обновляет форму, а второй обновляет пространство в БД для файла ext, чтобы изображение могло отображаться.Я запускал его на отдельном «посте» BTN, и это сработало, но теперь, когда я пытаюсь «» объединить запросы, я получаю неопределенный индекс для информации для моего файла.Таким образом, общая проблема этой проблемы состоит в том, чтобы обновить все эти записи, а затем, как только это будет сделано, он переместит копию загруженного изображения в папку, а затем на каждом клиенте появится место в базе данных для конкретного изображения, чтобыбыть назначенным им.

<?php

    $servername = "localhost";
    $username = "root";
    $password = "";
    $dbname = "techfusioncustomers";

    // Create connection
    $conn = new mysqli($servername, $username, $password, $dbname);

    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }

    // Get the customer ID.
    $customerId = intval($_GET['id']);

    // If form was submitted, update the customer.
    if (!empty($_POST['customerID'])) {

        $customerUpdated = true;

        $sql = "UPDATE customers
            SET
                address = ?,
                bPhone = ?,
                city = ?,
                companyName = ?,
                cPhone = ?,
                customerStatus = ?,
                email = ?,
                faxNumber = ?,
                firstName = ?,
                gradDate = ?,
                howDidYouHear = ?,
                hPhone = ?,
                isCustTaxExempt = ?,
                lastName = ?,
                leadRating = ?,
                leadServiceIntrest = ?,
                leadSource = ?,
                leadStatus = ?,
                Ext = ?,
                state = ?,
                studentStatus = ?,
                zip = ?
            WHERE customerID = ?";

        $stmt = $conn->prepare($sql);

        if ($stmt === false) {
            die($conn->error);
        }

        $stmt->bind_param(
            'ssssssssssssssssssssssi',
            $_POST['address'],
            $_POST['bPhone'],
            $_POST['city'],
            $_POST['companyName'],
            $_POST['cPhone'],
            $_POST['customerStatus'],
            $_POST['email'],
            $_POST['faxNumber'],
            $_POST['firstName'],
            date("Y-m-d", strtotime($_POST['gradDate'])),
            $_POST['howDidYouHear'],
            $_POST['hPhone'],
            $_POST['isCustTaxExempt'],
            $_POST['lastName'],
            $_POST['leadRating'],
            $_POST['leadServiceIntrest'],
            $_POST['leadSource'],
            $_POST['leadStatus'],
            $_POST['Ext'],
            $_POST['state'],
            $_POST['studentStatus'],
            $_POST['zip'],
            $_POST['customerID']
        );

        $stmt->execute();

        if ($stmt->error) {
            die($stmt->error);
        }

        $stmt->close();
    }

        /

    / Load the customer.
            $result = $conn->query("SELECT * FROM customers WHERE customerID = {$customerId}") or die($conn->error);
            $customer = $result->fetch_assoc();

            $conn->close();



    ?>

У меня есть это и я хочу объединить это с этим

$servername = "localhost";
    $username = "root";
    $password = "";
    $dbname = "techfusioncustomers";

    // Create connection
    $conn = new mysqli($servername, $username, $password, $dbname);

    $msg = "";
    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }

    // Get the customer ID.
    $customerId = $_POST['customerId'];
    $image = $_FILES['image']['name'];
    $image_text = mysqli_real_escape_string($conn, $_POST['image_text']);
    $target = "images/" . basename($image);

    // If form was submitted, update the customer.
    if (isset($_POST['upload'])) {

        $sql = "UPDATE customers set image = '$image', image_text = 
        '$image_text' 
                 where customerID = '$customerId'";

        mysqli_query($conn, $sql) or die(mysqli_error($conn));

        $query = mysqli_query($conn, $sql);

        if (!$query){
            exit("file could not be moved");
        }

        if (move_uploaded_file($_FILES['image']['tmp_name'], $target)) {
          echo  $msg = "Image uploaded successfully";
        } else {
           echo $msg = "Failed to upload image";
        }
    }

    // Load the customer.
    $result = $conn->query("SELECT * FROM customers WHERE customerID = 
    {$customerId}") or die($conn->error);
    $customer = $result->fetch_assoc();

    $conn->close();

Я получаю неопределенный индекс для изображения.Я хочу, чтобы все это работало, если, если (!empty($_POST['customerID'])), потому что на данный момент этот загрузчик изображений находится в своей собственной форме и имеет свою собственную «отправку», которую он ждет. Поэтому я хочу иметь загрузчик изображений

<form method="POST" action="test.php" enctype="multipart/form-data">
            <input type='hidden' name='customerId' value='<?= $customerId 
             ?>'>

            <div>
                <input type="file" name="image">
            </div>
            <div>
                <textarea id="text" cols="40" rows="4" name="image_text" placeholder="Say something about this image..."></textarea>
            </div>
            <div>
                <button type="submit" name="upload">POST</button>
            </div>

        </form>

Это выше, как выглядит загрузчик, я знаю, что мне нужно избавиться от действия и (весь php находится в верхней части html-формы, где он собирает все остальные данные)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...