Невозможно загрузить текстовое значение в mysql

Каждый раз, когда я отправляю форму своего веб-сайта, он создает только новый идентификатор. Но все остальное значение пустое, что мне делать?

скриншот таблицы

<?php error_reporting(E_ALL);ini_set('display_errors',1); $servername = "localhost"; $username = "seamaszhou"; $password = "123456"; $dbname = "guest"; $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // set the PDO error mode to exception $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // prepare sql and bind parameters $stmt = $conn->prepare("INSERT INTO guest (guestName,guestEmail,guestContent) VALUES (:guestName, :guestEmail, :guestContent)"); $stmt->bindParam(':guestName', $guestName); $stmt->bindParam(':guestEmail', $guestEmail); $stmt->bindParam(':guestContent', $guestContent); // insert a row $guestName = "$guestName"; $guestContent = "$guestContent"; $guestEmail = "$guestEmail"; $stmt->execute(); ?> 

Solutions Collecting From Web of "Невозможно загрузить текстовое значение в mysql"

Потому что вы не устанавливаете никаких значений. Когда вы это сделаете:

 $guestName = "$guestName"; 

Переменная $guestName устанавливается в строку, содержащую текущее значение переменной $guestName . Поскольку он ничего не содержит, вы просто устанавливаете его на пустую строку.

Используйте фактические значения. Например:

 $guestName = "Some name"; 

Или, если вы буквально хотели, чтобы это имя переменной являлось строкой, используйте одиночные кавычки, чтобы он не интерпретировался как переменная:

 $guestName = '$guestName';