2017-02-10 10 views
1

登録フォームを作成しようとしています。登録フォーム:エラーは表示されませんが、mysqlにデータがありませんデータベース

すべてのファイルを記入してフォームを送信すると、 というエラーは表示されませんが、サーバは接続されていますが、mysqlデータベーステーブルにはデータはありません。ベローLはフォームのアクションファイルを添付しました。何が欠けていますか?どのように私はそれを解決することができますか?

<?php 
$mysqli_servername = "localhost"; 
$mysqli_username = "admin_try"; 
$mysqli_password = "rFT5hePS5u"; 
$mysqli_database = "indepe"; 

// Create connection 
$conn = mysqli_connect($mysqli_servername,$mysqli_username,$mysqli_password,$mysqli_database); 

// Check connection 
if (!$conn) { 
    die("Connection failed: " . mysqli_connect_error()); 
} 
echo "<a href='index.html'>Back to main page</a>"; 

if (isset($_GET["submitreg"])) 
{ 

     $id= mysqli_real_escape_string($conn, $_POST['id']); 
     $country = mysqli_real_escape_string($conn, $_POST['country']); 
     $email = mysqli_real_escape_string($conn,$_POST['email']); 
     $password = mysqli_real_escape_string($conn,$_POST['password']); 
     $re_password = mysqli_real_escape_string($conn,$_POST['re_password']); 
     $compnay = mysqli_real_escape_string($conn,$_POST['compnay']); 
     $contact = mysqli_real_escape_string($conn,$_POST['contact']); 
     $tell = mysqli_real_escape_string($conn,$_POST['tell']); 


    $sql = "INSERT INTO registration(id,country,email,password,re_password,compnay,contact,tell); 
     VALUES('id','$country','$email','$password','$re_password','$compnay','$contact'),'$tell'"; 

    if ($conn->query($sql) === TRUE) { 

    echo "record created successfully"; 

} else { 

    echo "Error: " . $sql . "<br>" . $conn->error; 

} 


if (mysqli_query($conn, $sql)) { 
    echo " record created successfully"; 
} else { 
    echo "Error: " . $sql . "<br>" . mysqli_error($conn); 
} 
} 



//$conn->close(); 
mysqli_close($conn); 

?> 
+1

にそれが適切にしてください、はブラケットの外側にある「$伝える」そうしないと、適切にそれを追加し、必要INSERTクエリにそれを追加する必要がありますか? – Naincy

+2

'<?php'の後に' error_reporting(E_ALL); ini_set( 'display_errors'、1);を追加してチェックします。また、HTML形式の 'POST'メソッドのようですが、' $ _GET ["submitreg"] 'は読んでください。データを 'POST'した場合、コードは' $ _GET' –

+0

を使用しています。 '$ _POST [" submitreg "]' –

答えて

2

あなたのINSERTクエリ

  • でいくつかの誤りがあり、あなたのINSERTクエリでtell
  • 後semicolenを削除するあなたは、ブラケットの外にある代わりに$id
  • $tellの値にidを与えました

    $sql = "INSERT INTO registration(id,country,email,password,re_password,compnay,contact,tell) VALUES('$id','$country','$email','$password','$re_password','$compnay','$contact','$tell'");

イムそれはあなたの問題ですか、それはあなたがエラーがレコードを挿入するために、特定のユーザーに権限を追加する必要が

-1

私の事を示さなかったあなたのcode..becauseをコピー発生したかどうかわかりません。あなたが$mysqli_username = "admin_try";と宣言した通りです。今すぐlocalhost/phpmyadminに行き、特定のユーザーに特権を追加してください!!

+0

投票ダウン?これは便利な答えです!あなたは少なくともatariastを正当化する必要があります! – shyamm

-1

あなたは$ _GETチェックを使用しており、間違ったフォームを送信しています。フォーム提出のためにPOST要求を行うことが常に推奨されています。

if (isset($_GET["submitreg"])) 

しかし、後でデータを取得するコードで、$ _POSTを使用しています。

$id= mysqli_real_escape_string($conn, $_POST['id']); 

if (isset($_GET["submitreg"])) 

if (isset($_POST["submitreg"])) 
+0

なぜ落札ですか? – Naincy

0

をそれPOSTを作るHTMLでフォームの方法を確認し、変更してください私はあなたがVALUESキーワードの前にINSERTクエリ削除セミコロンに誤解だと思いますid列の自動インクリメント、noの場合HTMLでフォーム方法が何であるかを

$sql = "INSERT INTO registration(country,email,password,re_password,compnay,contact,tell) VALUES ('$country','$email','$password','$re_password','$compnay','$contact','$tell')"; 
関連する問題