• 締切済み
  • 困ってます

PHP phpMyAdmin

hetemlのmysqlを利用しているのですが phpからmysqlへの格納が上手くいきません。 ■phpソース <?php $link = mysql_connect('サーバー名','ユーザー名','パスワード'); mysql_select_db('データベース名'); mysql_query("INSERT INTO myname VALUES ('test')"); echo mysql_errno($link); echo mysql_error($link); ?> ■phpMyAdmin テーブル myname を作成済 phpはエラーを出していないのですが テーブル myname のフィールドに test が格納されません。(変化ありません)

共感・応援の気持ちを伝えよう!

  • PHP
  • 回答数2
  • 閲覧数300
  • ありがとう数10

みんなの回答

  • 回答No.2
  • yambejp
  • ベストアンサー率51% (3827/7415)

#1さんの言うように「フィールド名」を書いたほうがよいですが、 必須ではありません。桁数があっていれば、問題なくInsertされます。 また桁数が違えばエラーが返るはずです。 本件についてはどこがネックになっているか図りかねますが 以下のようにちょっと変更してみてはどうでしょうか? <?php $link = mysql_connect('サーバー名','ユーザー名','パスワード'); mysql_select_db('データベース名'); $sql=<<<eof INSERT INTO `myname` VALUES ('test') eof; $res=mysql_query($sql,$link) or die(mysql_error()."<br>\nSQL:".$sql); ?>

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ご返答ありがとうございました。 私のphpMyAdminに関する知識が足りないのが原因で PHP自体は正常に動作していました申し訳ありません。 × データベース名 → テーブル名 = 中身; ○ データベース名 → テーブル名 → フィールド名 = 中身; テーブル名に値が格納されるかと勘違いしていました><

  • 回答No.1
  • nyalio
  • ベストアンサー率58% (20/34)

INSERT into myname set フィールド名='test'; なら入りますよ。 あるいは INSERT into myname ('フィールド名') VALUES('test'); いずれにせよ、mynameのフィールド名が必要です。 Mysqlの参考URLがとても役に立ちますよ。

参考URL:
http://dev.mysql.com/doc/refman/4.1/ja/insert.html

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ご返答ありがとうございました。 私のphpMyAdminに関する知識が足りないのが原因で PHP自体は正常に動作していました申し訳ありません。 × データベース名 → テーブル名 = 中身; ○ データベース名 → テーブル名 → フィールド名 = 中身; テーブル名に値が格納されるかと勘違いしていました><

関連するQ&A

  • PHPmyadmin ブラウザ で日本語だけが文字化け。

    PHPmyadmin・PHP に関しての質問です。 PHPmyadmin で DB を作成 → テーブル作成。 PHP でテーブルの内容をブラウザに表示させるようにしていますが、 フィールド内の日本語部分のみが文字化けします。 どなたか詳しい方、解決方法をお教え頂けますでしょうか? 作成した PHP の内容および、各バージョンは以下の通りです。↓ サーバー : ロリポップ phpMyAdmin 2.6.2-rc1 PHP : ver.4.3.11 ------------------------------------------------------------- 【 作成した PHP の内容 ↓ 】 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html lang="ja"> <head> <title>県別人口面積</title> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> </head> <body> <?php mysql_connect('ホスト名','ユーザー名','パスワード'); mysql_select_db('データベース名'); $sql= "select * from テーブル名"; $result = mysql_query($sql); $rows = mysql_num_rows($result); if($rows == 0){ echo "<p>該当データがありません。</p>"; } else { while($row = mysql_fetch_array($result)){ echo "<p>"; echo $row["kenmei"]; echo " "; echo $row["kencho"]; echo " "; echo $row["jinko"]; echo " "; echo $row["menseki"]; echo "</p>"; } } ?> </body> </html> ------------------------------------------------------------- 以上、お教え頂ければ大変助かります。 何卒、宜しくお願い致します。

    • ベストアンサー
    • MySQL
  • phpmyadminからphpに読み込ませて配列化

    現在phpmyadminからphpに読み込みこんで配列化する勉強をしています。 syouhinテーブルの中にid name priceというものを用意しています。 $recordSet = mysql_query('SELECT * FROM syouhin'); while($data = mysql_fetch_assoc($recordSet)) { echo $data['id'],$data['name'],$data['price']; } このようにすれば用意しているもの、例えばidが1、nameがバナナ,priceが200、idが2、nameがバナナ,priceが200・・・・と全部でてくると思います。 これは$dataにこれらが入っているのだと思うですが、idが1のものをsyouhin1に格納しidが2のものをsyouhin2に格納するようにしたいのですがどうしたらいいでしょうか? すみません説明がへたくそでして。 プログラムは授業で勉強したばかりで配列が弱いので、丁寧に教えて頂けると嬉しいです。 ここの勉強もしておくべきという場所もありましたら教えて頂けると嬉しいです。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • php mysqlについて

    初心者です宜しくお願いします。 phpからデータベースを使いたいのですが(mysql)、mysql_query()関数のところで1366エラーが出ます。 半角英数ならエラーは出ません。 プログラムを貼り付けます。どなたかお願いします、説明をもっと書きたいのですが私もあまりわかってないのでどうもすみません。 今やっていることは全てローカルですwindowsを使ってます、文字コードもshift_jisです。phpもmysqlも一台のコンピュータでやっています。 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>MySQLへデータを登録</title> </head> <body> DBとの連携テスト結果<br> <?php // DBに接続 if(!$con=mysql_connect("localhost","root","y3kwyuba")){ echo"connect_error"; exit; } // DBを選択 if(!mysql_select_db("test",$con)){ echo"select_db_error"; exit; } //MySQL4.1への対応 //mysql_query("SET NAMES SJIS"); この上の行のコメントをはずすとうまく動くのですが色々調べましたら、この書き方は推奨されないと書いてありました、他に対策はあるのでしょうか? $name = $_POST['nm']; $age = $_POST['age']; // フォームで送られてきたデータでINSERT文を作成 $sql = "insert into t_touroku(name,age) values('$name',$age)"; // SQLを実行 if(!$res=mysql_query($sql,$con)){ echo"query_error"; echo "エラー番号:".mysql_errno(), #エラー番号 "メッセージ:".mysql_error(); #エラーメッセージ exit; } // DBから切断 mysql_close($con); // メッセージ出力 echo"登録完了"; ?> </body> </html> 宜しくお願いします。

    • ベストアンサー
    • PHP
  • phpMyAdminにログインできない

    お世話になります。 今回、phpmyadminについて情報を得たく、書込させていただきます。 現在、Ubuntu 15.04 MariaDB 10.0.17 nginx 1.9.0 PHP 5.6.4-4ubuntu6にて、勉強も兼ねたテスト環境を構築しております。 http://www.unixmen.com/how-to-install-lemp-stack-on-ubuntu-15-04/ こちらのサイトを元に、PHPの動作確認まではでき、phpmyadminのインストールとシンボリックリンクの作成まではできたのですが、phpmyadmin上にてログインしようとすると「#1698 MySQL サーバにログインできません」というエラーメッセージが出てログインできない状況です。 コンソール上でmysql -u ユーザー名 -pを実行し、ログインできていることは確認できているので、パスワードが違うということはなさそうです。 どなたか、心当たりのある方は、このエラー解消のお手伝いをしていただけないでしょうか? よろしくお願いします。

  • mysql_select_db()関数に関して・・・。MySQLでテーブルの作成ができません。

    こんにちは、さくらインターネットのレンタルサーバでMySQLとphpを連動させたサイトを作っているのですが、初歩的なことでつまずいてしまい困っています。 まず、フォームで入力させたデータをPOSTで受け取り、その受け取ったデータをテーブル名として、データベース上にテーブルをつくりたいのですが、エラー文が表示されるだけでできません。 データベース自体への接続はできているようなのですが、phpMyAdminで見ても全くできていません。SQL文をphpMyAdminで実行するときちんと正常にテーブルができますので、そもそもデータベースが使用できないとか、もしくはSQL文の間違いでもなさそうです。 $t1 = $_POST['test1']; $t2 = $_POST['test2']; echo"{$t1}を受け取りました<br>"; $link = mysql_connect('mysql**.db.sakura.ne.jp', 'ユーザー名', 'パスワード'); if (!$link) { die('接続失敗です。'.mysql_error()); } print('接続に成功しました。<br>'); //1.さくらインターネット内にあるデータベースの選択 $db_name = "自分のデータベース名"; $selectDB = mysql_select_db($db_name,$link) or die("接続できません。"); //2.データベース内にテーブルを作成。 echo"{$t1}がテーブル名になります。<br>"; //3.テーブル作成用SQL文 $str_sql = "CREATE TABLE {$t1}" . "(" . "{$t2} INT(7) NOT NULL," . ");"; //4.上のSQL文を実行してテーブルを作る。 mysql_query($str_sql,$selectDB); echo"データベース内にテーブル「{$t1}」を作成しました。<br>"; //データベースへの接続を切断 $close_flag = mysql_close($link); if ($close_flag){ print('切断しました。<br>'); } 実行結果:Warning: mysql_query(): supplied argument is not a valid MySQL-Link resourceとなってテーブルは作成されず。 自分でも調べて見たところ、mysql_connect()での接続はちゃんとできているようなのですが、その次のmysql_select_db()関数がうまく働いていないようです。 つまりデータベースの選択ができていないので当然エラーとなるようです。 もう何日も悩んでいます。わかる方がいましたらどうぞよろしくお願いします。

    • ベストアンサー
    • PHP
  • phpMyadminとPHP上からの違い?

    おせわになります よろしくお願いします SELECT COUNT(*) FROM テーブル名 WHERE dee = 0 AND Fee LIKE '%文字%' というSQL文があり、 phpMyadmin上からSQLを実行すると 4と表示されるのですが PHPから $sql = "SELECT COUNT(*) FROM テーブル名 WHERE dee = 0 AND Fee LIKE '%文字%'"; $result = mysql_query($sql,$conn); $row = mysql_fetch_row($result); とすると0、$row[0]は0となります 特にエラーの表示もなく データベースへの接続も問題ないようなのですが 原因がわかるかたいらっしゃいましたら 教えて下さい 以上よろしくお願いします

    • ベストアンサー
    • PHP
  • php→mysqlへの接続が出来ない(初心者)

    レンタルサーバーのMySQLへPHPから接続したいのですが、うまくいきません。 ソースコードは以下の通りで、 ========ソースコード================== <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP"> (↑head内記述) <?php $my_con = mysql_connect("mysql5.heteml.jp","User","Pass"); if ($my_con == false) { die("失敗"); }else{ echo "成功!!"; } ?> ================================ 結果、以下のエラー表示が出ます。 =========エラー文=================== Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'mysql5.heteml.jp' (10060) in C:\xampp\htdocs\wakuphp\test-connect.php on line 9 失敗 ================================ ちなみに、ソースコードの9行目は 『$my_con = mysql_connect("mysql5.heteml.jp","User","Pass");』で、 phpMyAdmin上で言語設定は"Japanese(ja-euc)"です。 原因が解らず困っております。有識者の方いらっしゃいましたら宜しくお願いします!

    • ベストアンサー
    • PHP
  • phpMyAdminでPHPのエラーのようなものが出てしまう

    WordPressを使いたいため、現在MySQLとphpMyAdminでデータベースの構築をしているところなのですが、phpMyAdminにアクセスするとPHPのエラーが発生していしまいます。 何か回避方法はありませんでしょうか? エラー↓ Warning: require_once(./libraries/dbi/.dbi.lib.php) [function.require-once]: failed to open stream: No such file or directory in D:\04WebServer\public_html\phpMyAdmin\libraries\database_interface.lib.php on line 18 Fatal error: require_once() [function.require]: Failed opening required './libraries/dbi/.dbi.lib.php' (include_path='.;C:\php5\pear') in D:\04WebServer\public_html\phpMyAdmin\libraries\database_interface.lib.php on line 18 よろしくお願いします。 Windows 2000 Server 04WebServer最新版 PHP 5.25 SQL 5.0(5.0.67) phpMyAdmin 2.6.4-pl2 http://drestyle.dip.jp/test.php

    • ベストアンサー
    • MySQL
  • (phpeditor)→(phpMyadmin)

    phpを独学し始めた初心者です。 よろしくお願いします。 以下のphpファイルを実行するとエラーが出ない にもかかわらず、データーベースの表示で確認すると 日本語のみがすっぽり空いた状態で、その他はphp通り データーが挿入されます。 つまり 『item_name』に『もも』 『keyword』に『缶詰,ピンク,甘い』 という文字が入りません。 (ともに状態はTEXTになっています。) なぜでしょうか? (環境)------------------------------------- phpエディターでphpファイルをつくり phpMyAdminでデーターベースを編集してます。 ローカルホストです。 --------------------------------------------- <?php mysql_connect('localhost', 'root', '') or die(mysql_error()); mysql_select_db('mydb') or die(mysql_error()); mysql_query('SET NAMES UTF8'); mysql_query ('INSERT INTO my_items SET maker_id=1, item_name="もも", price=480, keyword="缶詰,ピンク,甘い", sales=0, created="2010-10-10", modified="2012-05-05"') or die(mysql_error()); echo 'データー挿入完了'; ?> どうぞよろしくお願いします。

    • ベストアンサー
    • MySQL
  • PHP+MySQLで文字化けします

    PHPでMySQLに接続して以下のように テーブルの作成・そのテーブルにInsertをすると文字化けします。 PHPサーバーの文字コードはEUC-JP、MySQLの文字コードはlatin1です。 PHPのバージョンは5.04でMySQLのバージョンは4.1.20です。 無料レンタルサーバーなので詳細な設定は変更できません。 <?php // データベースに接続し、選択する mb_language('Japanese'); mb_internal_encoding('UTF-8'); mb_http_output('UTF-8'); $link = mysql_connect('localhost',"user","password") or die('Could not connect: ' . mysql_error()); echo 'Connected successfully'; mysql_select_db('user') or die('Could not select database'); mysql_query("SET NAMES UTF-8",$link); // SQL クエリを実行する $name = 'test'; $query = "CREATE TABLE IF NOT EXISTS `$name` ( `id` varchar(50) primary key, `name` varchar(50), `pw` varchar(50) );"; $result = mysql_query($query) or die('Query failed: ' . mysql_error()); $query = "INSERT INTO $name (id, name) VALUES('test', 'テスト');"; $mojicode = mb_detect_encoding($query); $query = mb_convert_encoding($query, "UTF-8", "$mojicode"); $result = mysql_query($query) or die('Query failed: ' . mysql_error()); // HTML に結果を出力する echo "<table>\n"; while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) { echo "\t<tr>\n"; foreach ($line as $col_value) { echo "\t\t<td>$col_value</td>\n"; } echo "\t</tr>\n"; } echo "</table>\n"; // 結果セットを開放する mysql_free_result($result); // 接続を閉じる mysql_close($link); ?> まだまだPHP、MySQL共に技術が未熟なため 説明不足な部分が多々あるかと思いますがご教授お願いします。

    • ベストアンサー
    • PHP