Данные HTML-формы не будут отправлены с обработкой PHP. Нужно ли включать удаленный доступ? - PullRequest
0 голосов
/ 24 апреля 2018

Итак, я создал простую форму и пытаюсь опубликовать базу данных, созданную на моей панели GoDaddy Cpanel. Я не уверен, что, может быть, я не включаю что-то на стороне сервера или просто сделал что-то глупое в своем коде. Я нажимаю "Отправить", чтобы отправить свою форму, и получаю сообщение "mysite.com в настоящее время не может обработать этот запрос"

вот моя HTML-форма:

<form id="contactForm" action="formdb.php" method="post">

<div class="rGroup">

    <label for="Contact Name">Name: </label>
    <input type="text" name="Name" size="46"><br><br>
    <label for="email">Email:</label>
    <input type="email" name="Email" size="46"><br><br>
    <label for="Contact Number">Phone:</label>
    <input type="tel" name="Phone"><br><br>
    <label for="interest">Interested in:</label><br><br>
    <input type="radio" name="Interest" value="WebDev" checked>Web Development<br>
    <input type="radio" name="Interest" value="SoftDev">Software Development <br>
    <input type="radio" name="Interest" value="Other">Other<br><br><br>
    <label for="Message">Comments:</label><br>
    <textarea name="Message" form="contactForm" rows="8" cols="50" 
    placeholder="Brief description, please submit as rendered."></textarea>
    <input id="submitButt" type="submit" value="Submit">

</div>

</form>

И мой php для обработки формы:

<?php
//Make Database connection.
$dbhost = "localhost";
$dbuser = 'user';
$dbpass = 'password';
$dbname = "InterestedContacts";
$connection = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);

if(mysqli_connect_errno()){
    die("Database connection failed: " .
    mysqli_connect_error() . ")"
    );
}

//Perform insert of data
$Name = $_POST['clientName'];
$Phone = $_POST['Phone'];
$Email = $_POST['Email'];
$Message = $_POST['Message'];
$Interest = $_POST['Interest'];

//Sanitize data and add escape string
$Name = mysqli_real_escape_string($connection, $Name);
$Phone = mysqli_real_escape_string($connection, $Phone);
$Email = mysqli_real_escape_string($connection, $Email);
$Message = mysqli_real_escape_string($connection, $Message);
$Interest = mysqli_real_escape_string($connection, $Interest);

$query = "INSERT INTO Prospects (clientName, Email, Phone, Message, Interest)
            VALUES ('" .$_POST["clientName"]."','".$_POST["Email"]."','".$_POST["Phone"]."','".$_POST["Message"]."','".$_POST["Interst"]."')";

            $result = mysqli_query($connection, $query);
            //Test to see if query had error_get_last
            if($result){
                //SUCCESS
                header('Location: thankyou.html');
            }else{
                //FAILURE
                die("Database query failed. " . mysqli_error($connection));
            }
            ini_set('display_errors', 1); error_reporting(-1);
            mysqli_close($connection);
?>

ОБНОВЛЕНИЕ: я обновил код PHP до того, что у меня есть сейчас, я установил PHPStorm и не могу подключить его к своей базе данных, чтобы проверить файл, я постоянно получаю сообщение о том, что мой Пользователь и пароль неверны, но это определенно нет.

Ответы [ 2 ]

0 голосов
/ 24 апреля 2018

Вам необходимо обновить учетные данные вашей базы данных, которые вы получили от GoDaddy здесь

$dbhost = "localhost";
$dbuser = "userInfo";
$dbpass = "password";
$dbname = "databasename";

И после этого он должен успешно сохранить данные в базе данных. Надеюсь, это работает для вас.

0 голосов
/ 24 апреля 2018

Некоторые ошибки в отправленном вами коде.

$dbpass = "password"; // add semi colon

и

$Interest = $_POST['Interest']; // angle brace not flower brace

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

$query = "INSERT INTO Prospects (Name, Phone, Email, Message)
            VALUES ('".$_POST["Name"]."','".$_POST["Phone"]."','".$_POST["Email"]."','".$_POST["Interst"]."','".$_POST["Message"]."')";

Удалить дополнение 'в запросе

Попробуйте это и отметьте

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