2016-08-26 7 views
0

私はときどき動作したいと思うPHPフォームを持っています。私は本当に何が間違っているのか、なぜそれはなぜ理解していない。テストデータを正常に提出しますが、5分後に別のテストを行い、エラーメッセージが表示されます。PHP/SQLスクリプトは時々しか動作しません

私はPHPやSQLの専門家ではないので、私を助けてください!

<?php 

$host="localhost"; // Host name 
$username="user"; // Mysql username 
$password="pass"; // Mysql password 
$db_name="database"; // Database name 
$tbl_name="table"; // Table name 

// Connect to server and select database. 
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 

// Get values from form 
$title=$_POST['title']; 
$body=$_POST['body']; 
$date=$_POST['date']; 
$tags=$_POST['tags']; 

// Insert data into mysql 
$sql="INSERT INTO $tbl_name(title, body, date, tags)VALUES('$title', '$body', '$date', '$tags')"; 
$result=mysql_query($sql); 

// if successfully insert data into database, displays message "Successful". 
if($result){ 
echo "Successful"; 
echo "<BR>"; 
echo "<a href='insert.php'>Back to main page</a>"; 
} 

else { 
echo "ERROR"; 
} 
?> 

<?php 
// close connection 
mysql_close(); 
?> 

ありがとうございます!

ini_set('display_errors', 1); 
ini_set('display_startup_errors', 1); 
error_reporting(E_ALL); 

そして、あなたのコード内で何が起こっているか確認してください:最初のエラー報告を有効にするために ルイ

+0

準備された文で 'mysqli'または' PDO'を考慮してください。 $ _POSTの値に応じて、意図しないSQLインジェクションがある可能性があります。 – noahnu

+1

エラーメッセージを表示するには '$ result = mysql_query($ sql)またはdie(mysql_error());'を試してください – MH2K9

+0

SQL構文にエラーがあります。 mysqlサーバのバージョンに対応するマニュアルを調べ、正しい構文を使ってnearを使用するようにしてください。だからこそ、モバイル第一のアプローチを「1行目」にすることを検討することが重要です。 – sharkwave540

答えて

0

問題はPHPではなくMySQLサーバーである可能性があります。

関連する問題