データの更新(UPDATE)
広告
データの更新を試してみます。UPDATEを使います。UPDATEの場合は、mysql_query関数の結果として成功した場合に TRUE 、エラー時に FALSE を返します。
実際に試してみます。データベース名「uriage」に含まれる「shouhin」テーブルのデータを更新してみます。
<html> <head> <title>PHP TEST</title> </head> <body> <?php function quote_smart($value) { // 数値以外をクオートする if (!is_numeric($value)) { $value = "'" . mysql_real_escape_string($value) . "'"; } return $value; } $link = mysql_connect('localhost', 'testuser', 'testuser'); if (!$link) { die('接続失敗です。'.mysql_error()); } print('<p>接続に成功しました。</p>'); $db_selected = mysql_select_db('uriage', $link); if (!$db_selected){ die('データベース選択失敗です。'.mysql_error()); } print('<p>uriageデータベースを選択しました。</p>'); mysql_set_charset('utf8'); print('<p>データを更新します。</p>'); $id = 5; $name = 'デジタルカメラ'; $sql = sprintf("UPDATE shouhin SET name = %s WHERE id = %s" , quote_smart($name), quote_smart($id)); $result_flag = mysql_query($sql); if (!$result_flag) { die('UPDATEクエリーが失敗しました。'.mysql_error()); } print('<p>更新後のデータを取得します。</p>'); $result = mysql_query('SELECT id,name FROM shouhin'); if (!$result) { die('SELECTクエリーが失敗しました。'.mysql_error()); } while ($row = mysql_fetch_assoc($result)) { print('<p>'); print('id='.$row['id']); print(',name='.$row['name']); print('</p>'); } $close_flag = mysql_close($link); if ($close_flag){ print('<p>切断に成功しました。</p>'); } ?> </body> </html>
上記を「test1.php」としてローカル環境で稼動しているApacheのドキュメントルート以下に設置し、ブラウザでアクセスします。
テーブルに含まれるデータを更新できました。
( Written by Tatsuo Ikura )
Profile
著者 / TATSUO IKURA
プログラミングや開発環境構築の解説サイトを運営しています。