人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

(PHP関連)データベースのあるカラムに456という値があるとします。またレコードごとに異なるstというカラムもあり引数でeee.php?st=AAABBBのようにアクセスすると、そのレコードのみ456が1234にUPDATEされるとします。

しかしeee.phpにはアップデート機能しか備わっておらず引数stが同じ値でもアクセスするたびにアップデートされます。そこで一度1234にアップデートされたレコードはもうアップデートせず何かのメッセージを出したいと考えています。

よろしくお願いいたします。

●質問者: esecua
●カテゴリ:ビジネス・経営 コンピュータ
✍キーワード:PHP ST アクセス アップデート カラム
○ 状態 :キャンセル
└ 回答数 : 3/3件

▽最新の回答へ

1 ● cooper0524

http://www.hatena.ne.jp/awindow?qid=1135137693

そのテーブルにアップデートフラグのフィールドを持つことはできますか?できるとしたら、

updateの条件に(where updateフラグ != 1)とでもしておき、

update時にフラグに1を立てておけば、次回はフラグが立っていない場合のみ更新するのではないでしょうか?

また、アップデートされていないかは更新件数が0件だったときの判断でできるはずです。

◎質問者からの返答

SQLではなくPHPでは可能ですか?


2 ● cooper0524

http://www.hatena.ne.jp/

はてな

先ほど回答した者です。

実際のソースとしては(環境がないのでイメージですが)


eee.php

<?

$st =$_GET[”st”];


$sql = ”select * from table where st=$st and update_flg = 1”;

検索SQL実行


if(検索結果が0件){

$sql = ”update table set aaa = 1234,update_flg = 1 where st=$st and update_flg != 1”

更新SQL実行

}else{

print ”既に更新されています”;

}


?>


といった感じではないでしょうか。

◎質問者からの返答

私が書いた簡単なソースは以下のとおりです。

<html>

<head><title>データの更新</title></head>

<body>

require_once(’dbinfo.php’);

$st = $_GET[’st’];

if (!$conn = mysql_connect($dbhost, $dbuser, $dbpassword)){

die(”Error”);

}

mysql_select_db(”securitycenter”, $conn);

$sql = ”update users set up = ’1234’ where st = ’$st’”;

mysql_query($sql, $conn)

or die(”Error”);

print(”Complated”);

?>

</body>

</html>

これに連続投稿防止機能を取り付けたいのですが、何とかならないでしょうか?

初心者過ぎてすいません。


3 ● yuki_n

http://www.hatena.ne.jp/1135137693#

人力検索はてな - (PHP関連)データベースのあるカラムに456という値があるとします。またレコードごとに異なるstというカラムもあり引数でeee.php?st=AAABBBのようにアクセスすると、そのレ..

URLはダミー

違っていたらすみません。

(環境が無いので、試せていません。)


$sql = ”update users set up = ’1234’ where st = ’$st’”;

この部分を

$sql = ”update users set up = ’1234’ where st = ’$st’and up != ’1234’”;

こんな感じにすれば希望に適うかな?


もしかしたら、DBによって構文が違うかも?

【!=】 ではなく 【<>】 とか 【not】 を使うとか?

その辺は、SQLのサイトでも調べてみてください。


とりあえず、検索条件から【up】に【1234】が入っているのを除ければよいと判断しましたが。。如何でしょうか?

http://www.atmarkit.co.jp/fnetwork/rensai/sql01/sql1.html

SQLの基礎「SELECT」文を覚えよう

http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/sak3sql.htm

SQL プログラミング言語資料 - SAK Streets

◎質問者からの返答

すいません。満足のいく回答が得られなかったためキャンセルいたします。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ