2016-10-26 8 views
2

おはよう。私はボタンをクリックすると、2つのボタンを持つ単純なhtmlファイルを持って、それはデータベースにいくつかのデータを入力します。残念ながら、ボタンがクリックされたときに、クロムを表示192.168.0.168 is currently unable to handle this request.HTTP ERROR 500PHPを使用してmysqlにデータを挿入するとページが機能しない

次は私のHTMLコードスニペット

<form action="mode.php" method="POST"> 
<input style="background-color: green;" id="home" name="home" type="submit" value="HOME"></br> 
<input style="background-color: red;" id="away" name="away" type="submit" value="AWAY"> 
</form> 

であり、これはコーディングmode.phpです:

<?php 

    $dbhost = 'localhost:3036'; 
    $dbuser = 'xxx'; 
    $dbpass = 'abc1234'; 
    $conn = mysql_connect($dbhost, $dbuser, $dbpass); 

    if(! $conn) { 
     die('Could not connect: ' . mysql_error()); 
    } 
if (isset($_POST['home'])) { 
$sql= insert into home_mode (id, status) value (null, "HOME"); 

mysql_select_db('home_mode'); 

$retval = mysql_query($sql, $conn); 
    if(! $retval) { 
     die('Could not enter data: ' . mysql_error()); 
    } 

echo "Mode changed to HOME";} 
?> 

*を、私がテストしていますテストスクリプトを使用してMySQLに接続すると成功です。 お手数ですが、ありがとうございます!

+0

あなたが '' id'にNULL'を挿入するのはなぜ? –

+0

@ S.I。こんにちは、それは自動インクリメントフィールドです –

答えて

0

NULLを自動インクリメント列に挿入しようとしています。 INSERTクエリからNULLを削除し、次のように試してみてください。

$sql= insert into home_mode (status) value ("HOME"); 

また、あなたが本当に考慮し、古い変更する必要があり、mysqli_*またはPDOmysql_*を非推奨。

更新:選択最後に挿入された行

$select_last_row = SELECT MAX(status) FROM home_mode 
+0

さて、私は 'mysqli'を使った後で動作しています。ステータスカラムの最後の入力を取り出す方法はありますか?私は '$ last_status = mysql_query(" SELECT status FROM home_mode ORDER BY status DESC LIMIT 1 ");と' echo "を使用します。現在のHOME MODEは$ last_status"; 'ですが、' last_status'変数は表示されません。ありがとう –

関連する問題