Я пытаюсь получить элемент данных из формы отправки в MySql Базу данных. Я уже подключился к базе данных локальным способом. Но теперь, когда я хочу получить данные из веб-крючка на веб-странице, я не могу получить данные. Вот мой код:
<!doctype html>
<html>
<body>
<?php
//Data Base connection info:
$servername = "localhost";
$username = "username";
$password = "password";
$dbName="dbName";
////////////////////////////Retrieved information from form ////////////////////////////////////////////
$name=$email=$telephone=$message="";
///////Data Obtained in the form:////////////
if($_SERVER["REQUEST_METHOD"] == "POST") {
$name=$_POST["No Label name"];
$email=$_POST["No Label email"];
$telephone=$_POST["No Label phone"];
$message=$_POST["No Label message"];;
//////////////////////////////////////////// DATA BASE CONNECTION ///////////////////////////////////////
// Create connection with DB.
$conn = mysqli_connect($servername, $username, $password, $dbName);
//////////////////////////// Check connection ///////////////////////////////////
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql="INSERT INTO TableName (Name, Email, Phone, Menssage ,Contacted) VALUES (?, ?, ?, ?,0)";
$stmt=$conn->prepare($sql);
$stmt->bind_param("ssss", $name, $email, $telephone, $message);
$stmt->execute();
mysqli_close($conn);
}
?>
</body>
</html>
Пришло «Имя без метки», потому что я не хотел менять внешний вид веб-страницы. Запрос bin https://requestbin.com/ показал мне метки отправляемого массива .
Я также пробовал это решение, но оно не сработало:
<!doctype html>
<html>
<body>
<?php
//Data Base connection info:
$servername = "localhost";// has to be changed to the actual host
$username = "username";
$password = "password";
$dbName="dbName";//we need to add the data base name
////////////////////////////Retrieved information from form ////////////////////////////////////////////
$name=$email=$telephone=$message="";
///////Data Obtained in the form:////////////
$Rawdata = file_get_contents("php://input");
$data = json_decode($Rawdata, true);
$name=$data["No Label name"];
$email=$data["No Label email"];
$telephone=$data["No Label phone"];
$message=$data["No Label message"];
//////////////////////////////////////////// DATA BASE CONNECTION ///////////////////////////////////////
// Create connection with DB.
$conn = mysqli_connect($servername, $username, $password, $dbName);
//////////////////////////// Check connection ///////////////////////////////////
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql="INSERT INTO TableName (Name, Email, Phone, Menssage ,Contacted) VALUES (?, ?, ?, ?,0)";
$stmt=$conn->prepare($sql);
$stmt->bind_param("ssss", $name, $email, $telephone, $message);
$stmt->execute();
mysqli_close($conn);
?>
</body>
</html>
Если у вас есть какие-либо вопросы по поводу кода или переменных, пожалуйста, задавайте. Также у меня есть вопрос, отправляет ли elementors webhooks данные в json или как обычный метод POST. С уважением