ホームページ  >  記事  >  バックエンド開発  >  PHP製掲示板です。クリックして内容を送信してください。 SQLデータは情報を受け取ることができません。他のページでは出力を表示できます。解決

PHP製掲示板です。クリックして内容を送信してください。 SQLデータは情報を受け取ることができません。他のページでは出力を表示できます。解決

WBOY
WBOYオリジナル
2016-06-13 13:48:361038ブラウズ

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 では、フィールド名には一重引用符「'」が使用されず、「~」の下にあるバックティック「`」が使用されます。

    ------解決策-----構文が間違っています。データベースがありません。挿入しますか?

  • 声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。