Perl初心者です。レンタールサーバでmysqlからデータを取得して表示するプログラムを作りたいのですインターネットで捜したのですがよく分かりませんでした。申し訳ありませんが駄目出しでも結構ですので直すポイントになるようなアドバイス、お願い致します。
#!/usr/bin/perl
#変数宣言
print "Content-type: text/html;\n\n";
use DBI;
$ds = 'DBI:mysql:XXXXXXXXXXX:localhost';
$user = 'XXXXXXXXXX';
$pass = 'XXXXXXXXXX';
print "test<br>\n";
$db = DBI->connect($ds, $user, $pass) || die "Got error $DBI::errstr when connecting to $ds\n";
print "test<br>\n";
#$sth = $db->prepare("SELECT mei FROM name");
#$sth->execute;
# バス経路票の中身を表示したかったたのですが出来ませんでした。
$sth= $db->prepare(qq(SELECT * FROM 'バス経路票'));
$sth->execute;
while(@row = $sth->fetchrow_array) {
print qw($row[0]\t$row[1]\t$row[2]\n);
}
# 経路票の中身を表示したかったたのですが出来ませんでした。
$sth = $db->prepare(qq(SELECT * FROM '経路票'));
$sth->execute;
while(@row = $sth->fetchrow_array) {
print qw($row[0]\t$row[1]\t$row[2]\n);
}
# 駅バス停関係票の中身を表示したかったたのですが出来ませんでした。
$sth = $db->prepare(qq(SELECT * FROM '駅バス停関係票'));
$sth->execute;
while(@row = $sth->fetchrow_array) {
print qw($row[0]\t$row[1]\t$row[2]\n);
}
# バス経路票の中身を表示したかったたのですが出来ませんでした。
print "@basskeiro<br>\n";
# 経路票の中身を表示したかったたのですが出来ませんでした。
print "@keiro<br>\n";
# 駅バス停関係票の中身を表示したかったたのですが出来ませんでした。
print "@bassteikeiro<br>\n";
print "test<br>\n";
$rc = $sth->finish;
$rc = $db->disconnect;
exit;
No.3ベストアンサー
- 回答日時:
No.1です。
MySQLの文字コードの確認を行ってください。
また、ソースコードの文字コードはどのようになっているでしょうか?
また、テーブル名などを英数字にすることは、不可能なのでしょうか?
テーブル名を日本語にしたことがないのですが、
いらぬところで、はまったりしそうなので。。。
ためしに、英数字のテーブルでスクリプトを試してみては
いかがでしょうか?
ソースコード的には、動かないものではなさそうですので。
No.2
- 回答日時:
perlにモジュールDBIがインストールされていないのでは。
他にも、DBD::mysql?の様なモジュールもインストールされていないのでは。
No.1
- 回答日時:
気になった点を上げさせていただきます。
ご参考になれば幸いです。
1.テーブル名が日本語ですが、MySQLで使用する場合は、
バッククォート「`」で囲むのでは?
2.executeの文に、エラー表示を付けた方がいいと思います。
execute || print $sth->errstr();
#これで、CGI経由でもSQLのエラーが取得できます。
この回答への補足
コメント、ありがとうございます。
修正したら以下が表示されました。
test
test
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''`ƒoƒXŒo˜H•[`' at line 1Invalid utf8 character string: 'Œo˜H•['Invalid utf8 character string: '‰wƒoƒX’âŠÖŒW•['
test
インターネットでも調べたのですが分かりませんでした。何だろ???
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- その他(プログラミング・Web制作) pythonでDBのカラム名で取得したオブジェクトの値を表示したい 1 2022/05/13 03:41
- PHP 【PHP/MySQL】コード上で生成したクエリを基に集計クエリを作りたい 1 2022/07/28 15:06
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- その他(プログラミング・Web制作) pythonリストの特定の値を表示htmlで表示できない 2 2022/05/14 05:48
- その他(コンピューター・テクノロジー) Pythonの np.indicesに関する質問です。 2 2023/02/07 08:19
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【至急!!!】python言語で本を見...
-
UWSCのSELECT文の記述方法
-
16進の10進変換について
-
c言語 16進数の2進数への変換
-
関数「exists」と「defined」の...
-
DBIがうんともすんとも言いませ...
-
$(ドル)の記号を表示したいの...
-
数値かどうかの判定方法
-
Perlにおける<?phpinfo();?>の...
-
Use of uninitialized value ---
-
pythonで演算子を変数に代入す...
-
掲示板からのメールの本文中に...
-
Python3
-
Application.ScreenUpdating = ...
-
JSONで文字列が長い時
-
メモリをアドレスを直接指定し...
-
SELECT OPTIONの中身をコピペ...
-
FindFirst を複数条件で検索
-
構造体の各データの表示につい...
-
文字の横にプルダウンを表示さ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
16進の10進変換について
-
【至急!!!】python言語で本を見...
-
pythonで演算子を変数に代入す...
-
数値かどうかの判定方法
-
pythonの*
-
UWSCのSELECT文の記述方法
-
int(input("○○"))の使い方
-
関数「exists」と「defined」の...
-
c言語 16進数の2進数への変換
-
Perlにおける<?phpinfo();?>の...
-
シェルスクリプトで、空白(ス...
-
I2C接続のLCDディスプレイを使う
-
「HSP」でキャラコードを使って...
-
switch文のエラーについて
-
Use of uninitialized value ---
-
変数の中は文字列か数値か調べ...
-
perでメールが送信出来ない場合...
-
画面上再読み込みをさせたいの...
-
awkの正規表現での最左最短マッ...
-
数値英単語変換
おすすめ情報