PHP製掲示板です。クリックすると内容が送信されます。 SQLデータは情報を受け取ることができません。他のページでは出力を表示できます。
PHPを使って掲示板を作りました。掲示板のホームページは「index.php」を使用しています。 1 つは、正常に出力された Web ページ「chenggong.php」です。もう 1 つは、データベースに正常に送信されたページ「shujuku.php」です。ホームページ上に 2 つのフォームを作成しました。1 つは、正常に出力されたページの送信ボタンとテキスト フィールドです。ボタンをクリックすると、「chenggong.php」ページに情報が表示されます。問題は、コンテンツをデータベースに送信する「shujuku.php」ページをクリックしたときに発生します。index.php のコードは次のとおりです。
そして、shujuku.php ページのコードは次のとおりです:$sql=" INSERT INTO 'db_message'.'t_message' ( ";
$sql=$sql."intMessageID' , 'strContent')";
$sql=$sql."VALUES(NULL, '".$strContent."');";
// echo"
".$sql;
$connect = mysql_connect("localhost","root","qqq3893009") または die("データベース サーバーに接続できません!");
$ query = mysql_db_query("db_message", $sql ,$connect) または die("
保存に失敗しました");
echo "
保存に成功しました";
? >
注: 彼が出力した結果は次のとおりです: 保存に失敗しました。
SQL データ テーブルの形式: データ名: db_message テーブル。名前: t_message ID フィールド: intMessageID メッセージ内容フィールド: strContent
------解決策------ -----
データベースが選択されていないようです。mysql_select_db (「データベース名」) があるか、(「選択されたデータベースが間違っています。確認してください」) かどうかを確認してください。 mysql_connect()
の後に試してください。
------解決策----------------------
mysql_db_query() の使用も推奨されません。
これは公式マニュアルの内容です:
mysql_db_query
(PHP 4, PHP 5, PECL mysql:1.0)
mysql_db_query - MySQL クエリを送信する
手順
resource mysql_db_query ( string $database, string $query [, resource $link_identifier ] )
クエリ結果に基づいて正の MySQL 結果リソース番号を返し、エラーが発生した場合は FALSE を返します。この関数は、INSERT/UPDATE/DELETE クエリに対して TRUE/FALSE を返し、成功または失敗を示します。
mysql_db_query() データベースを選択し、それに対してクエリを実行します。オプションの接続識別子が指定されていない場合、この関数は MySQL サーバーへの開いている接続を探します。開いている接続が見つからない場合は、パラメーターを指定せずに mysql_connect() を呼び出して接続を確立しようとします。
この関数は、以前に接続していたデータベースには戻らないことに注意してください。つまり、この関数を使用して別のデータベースで SQL クエリを一時的に実行することはできず、手動で切り替えることしかできません。 SQL クエリでは、この関数の代わりに、database.table 構文を使用することを強くお勧めします。
mysql_connect() と mysql_query() を参照してください。
注: この関数の使用は、PHP 4.0.6 以降非推奨になりました。この関数は使用せず、代わりに mysql_select_db() および mysql_query() を使用してください。
------解決策---------
SQL文内のデータベース名とテーブル名mysql では、フィールド名には一重引用符「'」が使用されず、「~」の下にあるバックティック「`」が使用されます。
------解決策-----
構文が間違っています。データベースがありません。挿入しますか?