プロが教えるわが家の防犯対策術!

PHPとMySQLとJAVAスクリプトで作成しましたデーターベースについてお尋ねします。

PHPとMySQLで作成したデータベースの検索したり、読み込みを普通に可能ですが、書き込み及び、削除が出来ません。

PhpMyAdminでは書けます(データー入力出来ます)が、PHPプログラムからはデーターを入力したり、削除を行うことが出来ません。

そして、全くエラーも出ません。
PHP上では「書き込みました」と、いかにも正常なようなメッセージが返ってきます。
が、中身は空です。

システムが出来上がって問題なく3年以上使用していたのですが、自宅のLINUXサーバーのHDDが壊れましたので、再度システム構築をやり直しました。
MySQLとPHPも再インストールを行い再構築を行いました。

その後上記症状が出て書き込み、削除が出来なくなりました。

PHPのプログラムは全く触っておらず、変更も更新もしておりません。
念のためプログラムのチェックも何度もしておりますが、勿論これといって問題は見あたりません。


PHP.INI等の設定ファイルに問題があるのでしょうか。
それとも、MySQLに問題が有るのでしょうか。

宜しくご教授の程お願い致します。

A 回答 (2件)

> そして、全くエラーも出ません。


> PHP上では「書き込みました」と、いかにも正常なようなメッセージが返って
> きます。が、中身は空です。
phpのプログラムがきちんとエラートラップしてなければ、そのままスルーしている可能性もあります。

> PhpMyAdminでは書けます
ということなら、一番怪しいのはphpで接続しているユーザーの権限でしょうか。
SELECT権限しかないなら参照は出来ても更新・削除・挿入はできません。

この回答への補足

ご回答有り難うございます。

MySQLの権限について下記のコマンドを走らせましたところ、全て「Y」でした。

#mysqlaccess localhost root abcdb

もしくは

mysql>select * from mysql.root;

どちらも問題無く「Y」でした。
「select,insert,update,delete」について全て「Y」でした。


以上宜しくお願い致します。

補足日時:2011/07/01 23:43
    • good
    • 0

MySQL側でアクセスされるHostとUserの組合せでPHPからアクセスさせる際の


ユーザーに権限付与が適正にされていないのでは?

INSERT,UPDATE,REPLACEなどのSQLを発行するさいに
$res=mysql_query($sql) or die(mysql_error())

のようにデバッグしてみてください

この回答への補足

早速のご回答有り難うございました。

以下のように記述し走らせましたが、真っ白の画面になります。

とにかく、私としましては、PHPのプログラムは以前動いていたままなので変更もしていません。

$sql = "UPDATE abctbl
SET subject = \"subject\",
contents= \"contents\",
WHERE no = $no";
$res=mysql_query($sql) or die(mysql_error())

画面が真っ白のままで何も表示しません。

宜しくお願い致します。

補足日時:2011/06/30 23:05
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!