show databasesコマンドのエラー対処法とは?

このQ&Aのポイント
  • Mysql初心者がレンタルサーバーでデータベースを設定し、show databasesコマンドでエラーが発生した場合の対処法について解説します。
  • show databasesコマンドを使用する際に発生するエラーについて、原因と対処法を詳しく解説します。
  • データベースの設定が正しく行われていない場合に、show databasesコマンドが効かない問題が発生することがあります。この記事では、エラーの原因と解決策について説明します。
回答を見る
  • ベストアンサー

show databasesコマンドが効かない

初めまして。Mysql初心者ですが、借りているレンタルサーバーにデータベースを設定し、以下のPHP文でプログラムをオンラインで起動しましたが、データベースのセレクト(mysql_select_db文)までは問題ないですが、その後の、show databases;というところで、 Parse error: parse error, unexpected T_STRING in /home/winwinfp/public_html/ken.php on line 5 というエラーが起きてしまいます。本など参考にしましたが、簡単なコマンドすら実行できないで困っております。よろしくお願いいたします。また、サーバーのcpanelでSQL文でテーブルを作成し、PHP から、show tables; としてもだめです。 原因が分かる方は教えてください。 <html><head><title></title></head><body> <?php $dbh=mysql_connect ("localhost", "winwinfp_shima", "ss001") or die ('I cannot connect to the database because: ' . mysql_error()); mysql_select_db ("winwinfp_mysql"); show databases; ?> </body></html>

  • reimy1
  • お礼率64% (244/379)
  • MySQL
  • 回答数1
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • moon_night
  • ベストアンサー率32% (598/1831)
回答No.1

PHPから接続するんだったら、SQL文をMysqlに投げないと駄目ですよ。 $sql = "show databases"; $rs = mysql_query($sql); while($row=mysql_fetch_array($rs)){ print_r( $row ); }

reimy1
質問者

お礼

mysql_queryなどで作成したSQL文を 使うのですね。参考になりました。 ありがとうございます。

関連するQ&A

  • Windows、Apache、PHP、MySQLを使ったwebアプリケーションのエラー

    widows環境でMySQLで作ったデータベースをApache+PHPでwebページで見れるようにしたいと思い、 http://www.yamada-lab.org/doc/win/mysql5/4/0401.html#a2 このページの通りに進めていました (データベースの内容は少し変更しました) しかし、いざページを開いてみると 「Parse error: syntax error, unexpected T_STRING in C:\test\connect01.php on line 8」 とでてきて、うまく表示されません。 syntax errorなので、文法ミスだとは思いますが、どこが違うかがわからないので、どなたか教えてください。 使用しているPCは   OS:Windows XP professional MySQL:5.1.38 PHP:5.2.10 apache:2.2.13 です。 --以下、connect01.phpの中身の途中まで-- <html> <head> <title>connect.php</title> </head> <body> <?php  //データベースサーバ名の設定  $db_host  = "localhost";  //ユーザ名の設定  $db_user  = "webapl";  //パスワードの設定  $db_passwd = "pass1234";  //データベースサーバへの接続  $db = mysql_connect($db_host,$db_user,$db_passwd); ---- エラーが出ているのは、「 $db_host  = "localhost";」の行ですが、 サーバー名、ユーザー名、パスワードに関する3項目を消し、 データベースサーバへの接続を $db = mysql_connect(localhost,webapl,pass1234); と書きかえても、この行でエラーが出ていました。

    • ベストアンサー
    • PHP
  • <select> の<option value>が指定していできません。

    はじめましてチャーシューと申します。 <HTML> <HEAD><TITLE>LOGIN PAGE</TITLE> <?php $db=mysql_connect("localhost","shisan","yu0414") or die("データベースへの接続に失敗しました。"); mysql_select_db("shisan",$db); $rs=mysql_query("SELECT userID,name FROM user order by userID",$db); ?> </HEAD> <BODY> <?php print("<SELECT>"); while($row=mysql_fetch_array($rs)){ print("<option>"); print($row['name']); print("</option>"); } print("</SELECT>"); mysql_free_result($rs); mysql_close($db); ?> </BODY> </HTML> を <HTML> <HEAD><TITLE>LOGIN PAGE</TITLE> <?php $db=mysql_connect("localhost","shisan","yu0414") or die("データベースへの接続に失敗しました。"); mysql_select_db("shisan",$db); $rs=mysql_query("SELECT userID,name FROM user order by userID",$db); ?> </HEAD> <BODY> <?php print("<SELECT>"); while($row=mysql_fetch_array($rs)){ print("<option value="$row['userID']">");←ここを追加しました。 print($row['name']); print("</option>"); } print("</SELECT>"); mysql_free_result($rs); mysql_close($db); ?> </BODY> </HTML> のように変更すると Parse error: syntax error, unexpected T_VARIABLE in C:\xampp\htdocs\shisan\login.php on line 14というエラーが起きてしまいます。 環境はWindowsXP professional apache,mysql,php5はxamppを使用しています。 ご教授お願いいたします。

    • ベストアンサー
    • PHP
  • PHP+MySQL+phpMyAdmin パスワードとセキュリィティ

    例えば以下のようなプログラムがあったとして <html> <head><title>簡易接続</title></head> <body> <?php $conn = mysql_connect("localhost", "usr", "passwd"); mysql_select_db("kisop", $conn); $res = mysql_query("SHOW TABLES",$conn); if($res){ print ("データ獲得に成功しました。"); } mysql_free_result($res); ?> </body> </html> 以下の部分の $conn = mysql_connect("localhost", "usr", "passwd"); が見えてしまうとデータベースを 誰かが改変出来てしまうということでしょうか? アクセス制限された外部からPHPを読み込むとかの 対策等はありますか?

    • ベストアンサー
    • PHP
  • PHPでMySQLのDBに接続

    PHP,MySQLが使えるレンタルサーバーを借りているのですが, PHPでMySQLに接続し、php_dbを選択をするようにしたいのですが、 この時DBファイルはどこに置けばいいのでしょうか? 現在はMySQLの管理コマンド(?)とは別にpublic_htmlの中に PHPフォルダを作り、そこにDBファイルを入れています。 PHPのスクリプトは <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><title>練習</title> <meta http-equiv="content-language" content="ja"> <meta http-equiv="Content-Type" content="text/html; charset=euc-jp"> </head><body> <?php $con = mysql_connect(); if (!$con) { echo ("Error:MySQLに接続できませんでした。<br />"); } else { echo ("接続ID=$con<br>\n"); } $selectdb = mysql_select_db("php_db" ,$con); if (!$selectdb) { echo ("Error:データベースを選択できませんでした"); } else { echo ("データベースphp_dbを選択しました。"); } ?> </body></html> としています。 MySQLには接続ができるのですが、php_dbには接続ができません。 php_dbのおき場所を変えるのか、ファイルの指定が間違っているのか その他、どの要に変更をしたらよいのでしょうか? お願いします。 環境はレンタルサーバーがLINUXでPHPのバージョンなどはわからないんです・・・!! 開発がOSがW2kでFTPで転送してます。

    • ベストアンサー
    • PHP
  • feedcreator.class.phpを導入したいのですが

    ホームページをRSS配信させようとfeedcreator.class.phpを ダウンロードし、サーバーのルートフォルダーにもアップしました。 http://www.yung.jp/hp/php/rss.php 必要事項は上記見て、書き換えました。 http://prime.jp/×××/hoge/feedcreator.class.php にアクセスし、実行したところ、エラーはでずまっしろのページが 表示されます。 そのまっしろページのソースを確認したところ、BODY~BODYに なにも表示されていないので データベース(MYSQL)から取得できていないと思いました。 そこで、feedcreator.class.php(130行目) mysql_select_db($dbHost, $dbUser, $dbPass); $res = mysql_query("SELECT * FROM news ORDER BY newsdate DESC"); が怪しいのですが、データベース接続されていないのですが、 よいのでしょうか?どこでデータベースに接続しているのでしょうか? 私ならデータベースから値をとるときまず下記のようにコードを書きます $db = @mysql_connect(DIARY_DB_HOST, DIARY_DB_USER, DIARY_DB_PASS); @mysql_select_db(DIARY_DB_NAME, $db); そもそも http://prime.jp/×××/hoge/feedcreator.class.phpに アクセスすれば、指定フォルダーにfeed.xmlなり、xmlファイルが 動的にできると理解しているのですが、あっているでしょうか? 本業ではないプログラマーのためわかりやすく教えてくれると ありがたいです。

    • ベストアンサー
    • PHP
  • データーベースのすべての画像を取り出したい

    データーベースのテーブル内の画像をすべて取り出すプログラムを書いています。 データベース(Mysql)には画像が4列(4個)存在しますがプログラムの書き方が悪いと思うのですが、1つしか画像を取り出すことができません。 すべて取り出すにはどこを直せばよいでしょうか? 書いたソースは以下になります。 たぶん$img_db=$row["img_data"]; echo $img_db;が原因のような気がしますが分かりません。 詳しい方教えてください。 <display.php>(データーベースから読み込みようphp) <?php $conn=mysql_connect("localhost","root",""); mysql_select_db("practice"); $result = mysql_query("select img_data from sample "); while($row= mysql_fetch_array($result)){ $img_db=$row["img_data"]; echo $img_db; } ?> <output.php>(ブラウザ表示用php) <html> <head> <meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8”> <title>画像表示</title> </head> <body> <p>MySQLのBLOBにバイナリで格納した画像を表示してみます。</p> <?php echo "<img src=\"display.php?$img_db\">" ?> </body> </html>

    • ベストアンサー
    • 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
  • my.iniで設定するパスワードの意味がよくわかりません

    4.0.16から、4.0.26にバージョンアップしたのですが、root権限や、パスワードが よくわかりません。 4.0.16の時は、mysql.exeを開き、DOS窓で「show databases;」とたたくだけで、 testとmysqlが表示されましたが、 4.0.26や、4.1x系ですと、testしか表示されません。たとえば、 show databases -A -uroot -pPASSWORD;  や、 show databases -A -urootD;  などととやっても、↓のようになってしまいます。 ERROR 1064: You have an error (中略)'-A -uroot -p PASSWORD' at line 1 他方、4.0.26で、my.iniに、   [WinMySQLadmin]   user=root   password=mypassword と設定してあるものが認識されていないようです。 既存のPHP+MySQL4.0.16(ローカルで使うだけのものなので、ユーザー名、パスワードなし)で 構築したPHPプログラムがあるのですが、これを 今回インストールしたMySQL 4.0.26の組み合わせに適用しても動かなかったので、   $DBSERVER = "localhost";   $DBUSER = "root"; //←ここと、   $DBPASSWORD = "mypassword"; //←ここです   $DBNAME = "mydb";   $con = mysql_connect($DBSERVER, $DBUSER, $DBPASSWORD);   $selectdb = mysql_select_db($DBNAME, $con); とやってみましたが、エラーになってしまうので、   $DBPASSWORD = ""; //←ここを空白にする とやったら、MySQLに接続できました。 my.iniに記入したものは、適用されていないのでしょうか?

    • ベストアンサー
    • MySQL
  • mysql_select_dbでエラーが出ます

    phpのmysql_select_db()でデータベースを選択すると Access denied for user ''@'localhost' to database 'データベース名' とエラーが出ます。 元もとあるtestというデータベースは選択できましたが、 phpmyadminで新たに作成したデータベースだとエラーになります。 エラーの意味と対応方法をご教授下さい。 よろしくお願いします。 環境 さくらインターネットのVPS CentOS php5.1.6 mysql5.0.77 phpMyAdmin2.11.11.1 mysql_connect()ではrootでログイン

    • ベストアンサー
    • MySQL
  • PHPとMySQLの連携に関する質問

    PHPでMySQLに接続し、クエリを実行するプログラムを書いてコンパイルしたのですが ↓のエラーが出ました 「Fatal error: call to undefined function mysql_connect()」 このエラーの解決方法を教えてください(mysql_connect()はデフォルトでついているモジュールに入っていたと思うのですが) <?php $db=mysql_connect("localhost","秘密","秘密"); mysql_select_db("testtest"); $query="select * from testa"; mysql_query($query,$db); ?>

    • ベストアンサー
    • PHP