2017-10-14 11 views
1

私のウェブサイトのフォームを送信するたびに、新しいIDだけが作成されます。他の値はすべて空です。どうすればいいですか?mysqlにテキスト値をアップロードできません

screenshot of table

<?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(); 



?> 

答えて

4

あなたはどんな値を設定していないので。これを行うと:

$guestName = "$guestName"; 

変数$guestNameは、変数$guestNameの現在の値を含む文字列に設定されます。何も含まれていないので、空の文字列に設定するだけです。

実際の値を使用してください。たとえば、次のように

$guestName = "Some name"; 

それとも、あなたは文字通り、それが変数として解釈されませんので、変数名が文字列として、一重引用符を使用することを望んでいた場合:

$guestName = '$guestName'; 
+0

約[PHPマニュアルを参照してください。 Strings](http://php.net/manual/en/language.types.string.php)を開き、「変数の拡張」を参照してください。 –

+0

ダビデの助けをありがとう。私は実際には、ユーザーがこの情報を記入してから私のサーバーに提出できるようにするフォームを作りたいと思っています。私はそのために何をすべきですか?私は '$ guestContent = $ _ POST [' guestContent '];'しかし、動作していないようです。 –

+0

@seamaszhou:何が問題なのですか?その価値は最初に掲示されていますか?表示されているコードにはHTMLフォームは含まれていません。 – David

関連する問題