0
$con = mysql_connect("localhost","root","");
if (!$con) die('Could not connect: ' . mysql_error());
mysql_select_db("pilot", $con);

$sql = "INSERT INTO logs (id, userid, date, plane, from, to, blocksoff, takeoff,
landing, blockson, flighttime, traveltime, tachobefore, tachoafter, tacho, 
hobbsbefore, hobbsafter, hobbs, landings) VALUES ('$nfid', '$nfuserid', 
'$nfdate', '$nfplane', '$nffrom', '$nfto', '$nfblocksoff', '$nftakeoff', 
'$nflanding', '$nfblockson', '$nfflighttime', '$nftraveltime', '$nftachobefore', 
'$nftachoafter', '$nftacho', '$nfhobbsbefore', '$nfhobbsafter', '$nfhobbs',
'$nflandings')";

mysql_query($sql);

$ sqlには何の問題もありませんが、クエリを実行しないようです。:(

id|userid=int(11)  
date=date  
plane|from|to=text  
blocksoff|takeoff|landing|blockson=time  
flighttime|traveltime|tachobefore|tachoafter|tacho|hobbsbefore|hobbsafter|hobbs|landings=double

すべての$変数はテキストボックスから取得されます(重要な場合)

4

3 に答える 3

4

May be some of the column names are MySql reserved words (especially from and to). Please escape them.

INSERT INTO logs (`id`, userid, date, plane, `from`, `to` ...)
于 2012-06-25T03:33:39.597 に答える
0

常にエラーをチェックする必要があります。

$result = mysql_query($sql);
if (!$result) {
    die('Invalid query: ' . mysql_error());
}
于 2012-06-25T03:32:47.663 に答える
0

一種の自由形式の質問....

NULL値を返す変数はありますか?データベースにNULLを挿入しようとしていて、データベース列がNULL値を受け入れるように設定されていない場合は、エラーが発生している可能性があります。

クエリが実際に何をしているのかを確認する必要があります。テキストボックスに一重引用符やその他の無効な文字がある場合、それはあなたを台無しにする可能性があります。

Also, for your own personal improvement, look up PDO. It helps you write much more secure queries through the use of prepared statements. http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/

于 2012-06-25T03:33:36.660 に答える